单片机实验讲义

单片机实验讲义
单片机实验讲义

实验一软件实验

1.1 实验目的

通过实验熟悉DAIS软件仿真环境和MCS-51系列单片机指令系统。掌握程序编制、调试方法和技巧。

1.2 实验内容

1、把R1中内容传送至R0中。

2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中。

3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中。

4、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。

5、应用MOVC A,@A+PC指令求累加器A的平方值Y(设Y<=255),并把结果送至R7中保存。

6、将(R2R3)和(R4R5)中的双字节无符号数相加,结果存放在40H和41H单元中。

7、设自变量X为一无符号数,存放在内部数据存储器的V AX单元,函数Y存放在FUNC 单元,请编写满足如下关系的程序:

当x>=50时y=x;

当x<50时y=5x。

8、在外部数据存储器从2000H到2030H地址单元中存放有一数据块,请将它们分别传送至3000H单元到3030H单元中。

9、将8051片内的数据存储器20H单元中存放的单字节二进制数,转化为ASCII码,存放在30H31H单元中,(要求将ASCII码转换部分设计为子程序)。

汇编语言程序如下

;1、把R1中内容传送至R0中。

;2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中。

;3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中。

;4、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。

org 0000h

mov r1,#22h

mov a,r1 ;1、把R1中内容传送至R0中

mov r0,a

mov 20h,#33h

mov 30h,20h ;2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中

mov dptr,#2000h ;3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中

mov a,#66h

movx @dptr,a

clr a

movx a,@dptr

mov dptr,#2000h ;4、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。

clr a

movc a,@a+dptr

sjmp $

org 2000h

db 88h

end

;5、应用MOVC A,@A+dptr指令求累加器A的平方值Y(设Y<=255),并把结果送至R7中保存。

org 0000h

mov a,#3h ;查3的平方值

mov dptr,#tab ;指向平方表的表头

movc a,@a+dptr ;查表指令

sjmp $

tab:db 0,1,4,9,16,25,36,47,64,81,100,121,144,169,196,255;平方表

end

;6、将(R2R3)和(R4R5)中的双字节无符号数相加,结果存放在40H和41H单元中。

org 0000h

clr c

mov r2,#22h

mov r3,#33h

mov r4,#44h

mov r5,#55h

mov a,r3

add a,r5

mov 40h,a

mov a,r2

addc a,r4

mov 41h,a

sjmp $

end

;7、设自变量X为一无符号数,存放在内部数据存储器的V AX单元,函数Y存放在FUNC 单元,请编写满足如下关系的程序:

;当x>=50时y=x;

;当x<50时y=5x。

V AX equ 30H

FUNC equ 40H

org 0000h

mov V AX,#10

mov a,V AX

cjne A,#50,fen1

fen1:jc fen2 ;小于50跳到fen2

sjmp exit1

fen2:mov b,#5

mul ab

exit1:mov func,a

sjmp $

end

;8、在外部数据存储器从2000H到2030H地址单元中存放有一数据块,请将它们分别传送至3000H单元到3030H单元中。

org 0000h

mov dptr,#2000h

mov r2,#31h

loop:movx a,@dptr

mov dph,#30h

movx @dptr,a

inc dpl

mov dph,#20h

djnz r2,loop

sjmp $

end

;9、将8051片内的数据存储器20H单元中存放的单字节二进制数,转化为ASCII码,存放在30H,31H单元中,(要求将ASCII码转换部分设计为子程序)。

org 0000h

mov 20h,#2ah

mov a,20h

anl a,#0fh

acall asc1

mov 30h,a

mov a,20h

anl a,#0f0h

swap a

acall asc1

mov 31h,a

sjmp $

asc1:cjne a,#10,fen1 ;ASCII码转换子程序

fen1:jc fen2

add a,#7h

fen2:add a,#30h

ret

sjmp $

end

实验二定时器/计数器实验

2.1实验目的

熟悉定时器/计数器的工作原理并掌握其编程方法和技巧,加深对中断的理解及运用。

2.2实验内容

1、利用定时器T0的方式1编制一段程序,在P1.7引脚上输出一个方波控制一个红色指示灯。

①输出周期为40ms的方波,观察指示灯的变化。

②输出周期为200ms的方波,观察指示灯的变化。

2、利用计数器T1(P3.5)记录脉冲的个数。每计满10个脉冲,使灯亮1秒,然后重新计数,循环以上操作。外部脉冲通过实验箱右上角的/SP获得。

3.3实验预习

1、熟悉MCS-51系列单片机定时器/计数器系统硬件结构与工作原理。

2、掌握定时器/计数器的编程方法,初值的计算方法等。

3、掌握查询方法和中断方式两种方法处理定时/计数的问题。

3.4注意事项

1、注意定时器/计数器4种工作模式的选择以及初值的计算方法。

2、注意中断程序的应用方法。

3、实验系统的晶振为6MHz。

汇编语言程序如下

;1、利用定时器T0的方式1编制一段程序,在P1.7引脚上输出一个方波控制一个红色指示灯。

;①输出周期为40ms的方波,观察指示灯的变化。

;②输出周期为1s的方波,观察指示灯的变化。

;实验二1、①

org 0000h

ajmp main

org 000bh

ajmp t0fw

org 0030h

main:mov tmod,#01h ;T0定时器方式1

mov th0,#0D8H ;20ms=10000个MC,因为计数1个内部脉冲为2微妙。

mov tl0,#0F0H ;初值=65536-10000=55536=0D8F0H

setb ea

setb et0

setb tr0

sjmp $

t0fw:mov th0,#0D8H

mov tl0,#0F0H

cpl p1.7

reti

end

;实验二1、②

org 0000h

ajmp main

org 000bh

ajmp t0fw

org 0030h

main:mov tmod,#01h ;T0定时器方式1

mov th0,#3CH ;100ms=50000个MC

mov tl0,#0B0H ; 初值=65536-50000=15536=3CB0H

setb ea

setb et0

setb tr0

mov r7,#05h

sjmp $

t0fw:mov th0,#3CH

mov tl0,#0B0H

djnz r7,rt

mov r7,#05h

cpl p1.7

rt:reti

end

;2、利用计数器T1(P3.5)记录脉冲的个数。每计满10个脉冲,使灯亮1秒,然后重新计数,循环以上操作。外部脉冲通过实验箱右上角的/SP获得。

;只利用T1计数,定时用软件定时

org 0000h

ajmp main

org 001bh;计数器T1中断入口,对外部脉冲计数

ajmp t1fw

org 0030h

main:mov tmod,#60h ;T1计数器方式2,8位自动重装初值计数器,GATE=0,C/T=1 mov th1,#0F6H ;输入10个脉冲引起中断

mov tl1,#0F6H

setb ea

setb et1

setb tr1

sjmp $

t1fw: ;计数器T1中断子程序

clr p1.7 ;亮灯

acall dy1s ;1秒

setb p1.7 ;灭灯

reti

dy1s:mov r7,#04h ;1秒=250*4个1ms

m2:mov r6,#0fah

m1:mov r5,#0fah

djnz r5,$ ;内循环=250*4μs=1ms

djnz r6,m1

djnz r7,m2

ret

end

;或者利用T1计数,T0定时

org 0000h

ajmp main

org 000bh

ajmp t0fw

org 001bh

ajmp t1fw

org 0030h

main:mov tmod,#61h ;T1计数器方式2,T0定时器方式1 mov th1,#0F6H

mov tl1,#0F6H

mov th0,#3ch ;100ms初值

mov tl0,#0b0h

mov r7,#0ah

setb ea

setb et1

setb et0

setb tr1

sjmp $

t1fw:clr p1.7 ;亮灯

setb tr0 ;开定时器T0

reti

t0fw:mov th0,#3CH

mov tl0,#0B0H

djnz r7,rt

mov th0,#3CH

mov tl0,#0B0H

mov r7,#0ah

setb p1.7 ;灯灭

clr tr0 ;关定时器T0

rt:reti

end

实验三键盘/显示实验

3.1实验目的

1、掌握键盘和显示器的接口方法和编程方法。

2、掌握行列扫描式键盘和动态显示的工作原理。

3.2实验要求

利用实验系统提供的键盘电路和显示电路,做一个行列扫描式键盘和数码显示实验,把按下键盘的键码在数码管上显示出来。实验程序可分成三个模块。

①键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。

②显示模块:将显示单元的内容在显示器上动态显示。

③主程序:调用键输入模块和显示模块。

3.3键盘扫描显示控制电路

3.4实验说明

74LS240为反相缓冲器。

74ls273是带有清除端的8D触发器,1D~8D为数据输入端,1Q~8Q为数据输出端,正脉冲触发,低电平清除,只有在清除端保持高电平时,才具有锁存功能,锁存控制端为11脚CLK,采用上升沿锁存。

74LS245是8路同相三态双向总线收发器,可双向传输数据。

当片选端/CE低电平有效时,DIR=“0”,信号由 B 向 A 传输;DIR=“1”,信号由 A 向 B 传输;当/CE为高电平时,A、B均为高阻态。

本实验系统自带一个8×4的键盘,在判断有键按下后,要有一定的延时,防止键盘抖动。

数码管为共阴极,0-9的字型代码分别为0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H。

汇编语言程序如下

;键盘显示,键码在最高两位以十进制方式显示

ORG 0

mov 30h,#01h ;显示缓冲单元

mov 31h,#02h

mov 32h,#03h

mov 33h,#04h

mov 34h,#05h

mov 35h,#06h

LP8:ACALL KINP ;键盘扫描程序

JB PSW.5,LP7 ;无键不处理键值

MOV B,#0AH ;有键,分离键码

DIV AB

MOV 34H,B ;送显示缓冲

MOV 35H,A

LP7:ACALL DISP ;调显示程序

SJMP LP8

KINP:LCALL KAP ;扫描键子程序

JNZ KP1

SETB PSW.5 ;置无键标志

RET

KP1:LCALL DEL Y ;去抖

LCALL KAP ;再次扫描键盘

JNZ KP2 ;转识键码程序

SETB PSW.5 ;置无键标志

RET

KP2:CLR PSW.5 ;置有键操作标志

MOV R4,#00H ;0列加数

KP4:MOV DPTR,#0FFDDH

MOV A,R2

MOVX @DPTR,A ;送列扫描信号

MOV DPTR,#0FFDEH

MOVX A,@DPTR ;回读行信号

JB ACC.0,L1 ;不是第一行,转第二行

MOV A,#00H ;是第一行,行吗=0

AJMP KP5

L1:JB ACC.1,L2 ; 不是第二行,转第三行

MOV A,#08H ;是第二行,行码=8

AJMP KP5

L2:JB ACC.2,L3 ;不是第三行,转第四行

MOV A,#10H ;是第三行,行码=16

AJMP KP5

L3:JB ACC.3,NEXT ;不是第四行,转下一列

MOV A,#18H ;是第四行,行码=24

KP5:ADD A,R4 ;对应的行码+对应的列码=键码PUSH ACC ;保护已经得到的键码

KP3:LCALL DEL Y

LCALL KAP ;继续扫描

JNZ KP3 ;A值不等于0,表示手未松开!

POP ACC ;A值等于0,手已经松开,弹回键码!

RET

NEXT:INC R4 ;下一列列码加1

MOV A,R2

JNB ACC.7,KINP ;列到最后列了吗?

RL A

MOV R2,A ;下一列

AJMP KP4 ;扫描下一列

KAP:MOV A,#00H ;全扫描字(列)

MOV DPTR,#0FFDDH

MOV DPTR,#0FFDEH

MOVX A,@DPTR ;回读行信息

CPL A

ANL A,#0FH ;得到A值,=0,无键;≠0,有键RET

DELY:MOV R6,#14H ;去抖!

DL:MOV R7,#0FFH

DJNZ R7,$

DJNZ R6,DL

RET

DISP:MOV R0,#30H ;显示缓冲首址

MOV R2,#01H ;位控初始码(先亮最低位)LOOP:MOV A,#0FFH ;共阳灭码

MOV DPTR,#0FFDCH

MOVX @DPTR,A

MOV A,R2 ;送位控信号

MOV DPTR,#0FFDDH

MOVX @DPTR,A

MOV A,@R0 ;从显示缓冲中取数

MOV DPTR,#TAB

MOVC A,@A+DPTR ;查出字形代码

MOV DPTR,#0FFDCH

MOVX @DPTR,A ;送显示字符段代码

ACALL DY1MS ;稳定显示信息

INC R0 ;取下一个数

MOV A,R2

JB ACC.5,EXIT ;判断是否送到最高位?

RL A

MOV R2,A ;得到下一个位控信号

AJMP LOOP

EXIT:RET

DY1MS:MOV R7,#0FFH

DJNZ R7,$

RET

TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H

DB 88H,83H,0C6H,0A1H,86H,8EH;0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F end

单片机实验7学习资料

单片机实验7

实验七直流数字电压表设计 姓名:田坤学号:200912512 专业:电子信息科学与技术 1.实验目的: 掌握LED动态显示和A/D 转换接口设计方法。 2.实验原理: 实验电路原理图如图A..94所示。图中显示器采用4位共阴极数码管,并按动态显示方式接线。A/D转换结束标志采用查询法检查,启动信号由软件模拟产生,时钟信号由Proteus的DClock信号发生器产生,频率为5kHz。电位器的输出电压送到A/D转换器中转换,转换结果以十进制形式显示在数码管上。调节电位器可使数码管的显示值发生相应变化。 图A.94 实验7的电路原理图 3.实验内容: (1)、学习使用Proteus软件,掌握原理图绘图方法; (2)、学习使用Keil C软件,掌握C51程序编写与调试方法;(3)、理解动态显示与A/D转换工作原理,完成单片机电压采集与显示程序的编写与调试。 4.实验步骤: (1)、在Proteus中绘制电路原理图,按照表A.9将元件添加到编辑环境中; (2)、在Keil中编写C51程序,并使之编译通过;

(3)、在Proteus中加载程序,观察仿真结果。 5.实验要求: 提交的实验报告中应包括电路原理图、含注释内容的源程序及实验结果分析。 表A.9 实验7的元器件清单 1)源程序如下: #include // 头文件 #include unsigned int tmp; //定义一个整形中间变量 sbit START=P2^5; //定义ADC0808启动位 sbit ad_busy=P2^6; //定义ADC0808转换结束标志位 sbit OE=P2^7; //定义ADC0808输出使能标志位 sbit P2_0=P2^0; //定义四个数码管 sbit P2_1=P2^1; sbit P2_2=P2^2; sbit P2_3=P2^3; char led_mod[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //LED字模

单片机实验讲义

实验一流水灯 实验目的: 1、熟悉用单片机产生流水灯的效果; 2、掌握循环移位的工作原理和操作方法; 3、学会使用C51 封装好的函数库C51LIB,延时函数的时间估算。 实验仪器: 电脑,TX-1C单片机实验板,万用表USB-232线,USB线。 实验原理: 实验内容: P1.0~P1.8对于Led1~Led8八个发光二极管,要求来回循环点亮,停顿时间为0.5秒。显示效果如下: Led1 Led2 Led3 Led4 Led5 Led6 Led7 Led8 亮暗暗暗暗暗暗暗 暗亮暗暗暗暗暗暗 暗暗亮暗暗暗暗暗 暗暗暗亮暗暗暗暗 暗暗暗暗亮暗暗暗 暗暗暗暗暗亮暗暗 暗暗暗暗暗暗亮暗 暗暗暗暗暗暗暗亮 亮暗暗暗暗暗暗暗 暗亮暗暗暗暗暗暗 暗暗亮暗暗暗暗暗 暗暗暗亮暗暗暗暗 ………………………………………………………… 实验步骤: 1、编程,调试,下载; 2、记录实验现象; 3、举一反三:编写3/4/5/6/7个灯循环点亮的程序。

实验二利用定时器控制数码管的显示 实验目的: 1、学会利用单片机的定时器; 2、熟悉数码管显示原理; 3、了解蜂鸣器发声原理。 实验仪器: 电脑,TX-1C单片机实验板,万用表,USB-232线,USB线。实验原理: 2、记录实验现象。

实验三矩阵键盘检测 实验目的: 1、学会矩阵键盘的检测 2、掌握数码管静态显示原理 实验仪器: 电脑,TX-1C单片机实验板,万用表,USB-232线,USB线。 实验原理: 静态数码管显示原理:本开发板数码管为共阴极,所以要想点亮数码管,则给阳极加高电平。 实验内容: 依次按下4*4 矩阵键盘上从第1 到第12个键,同时在六位数码管上依次显示0、1、2、3、4、5、6、7、8、9、A、B。 实验步骤: 1、编程,调试,下载; 2、记录实验现象; 3、举一反三:第13个键到第16个键C、D、E、F。

C51单片机实验指导书

单片机原理与接口技术实验讲义 目录 第一章开发环境安装使用说明 (3) 第二章基于51单片机系统资源实验 (12)

实验1 IO开关量输入实验 (12) 实验2 IO输出驱动继电器(或光电隔离器)实验 (13) 实验3 IO输入/输出---半导体温度传感器DS18B20实验 (14) 实验4 外部中断----脉冲计数实验 (15) 实验5 计数器实验 (16) 实验6 秒时钟发生器实验 (17) 实验7 PC机串口通讯实验 (18) 实验8 RS485通讯实验 (19) 实验9 PWM发生器(模拟)实验 (20) 实验10 蜂鸣器实验 (21) 第一章开发环境安装使用说明 一、KeilC51集成开发环境的安装 1.Keil u Vision2的安装步骤如下

将安装文件拷贝到电脑根目录下,然后双击图标,如图1-1所示:注意:去掉属性里的只读选项。 图1-1 启动安装环境对话框 2.选择Eval Version。然后一直next直至安装完成,如图1-2所示: 二.在Keil uVision2中新建一个工程以及工程配置 1.打开Keil C环境,如图1-3所示。

图1-3打开工程对话框 2.新建工程或打开工程文件:在主菜单上选“Project”项,在下拉列表中选择“New Project”新建工程,浏览保存工程文件为扩展名为“.Uv2”的文件。或在下拉列表中选择“Open project”打开已有的工程文件。如 图1-4所示: 图1-4 新建工程 3.环境设置:新建工程文件后,在工具栏中选择如下图选项设置调试参数及运行环境,或从主菜单“Project”项中 选择“Options for Target ‘Target1’”,打开如下图1-5设置窗口。

单片机实验讲义

单片机实验讲义

DVCC单片机实验系统简介 本科目实验使用的平台为启东公司的DVCC-52JH单片机仿真实验仪(带有配套试验软件)。可基本满足MCS-51(80C51)系列单片机课程(本/专科)的实验要求。 实验平台资源: 1、AT89C52单片机(6MHz晶体振荡器、256B片内RAM、8KB程 序存储器(FLASH)、3个定时/计数器、6个中断源(T2))。2、实验平台带有总线扩展有64BK片外RAM,用户可使用范围 0000H~0FEFFH;64KB片外ROM,用户可使用范围

0000H~0FEFFH。 3、实验平台的主要芯片有:1片8255可编程通用并行界面芯片、1 片8155芯片、1片译码芯片74138、1片74393芯片、1片D/A 转换芯片0832、1片A/D转换芯片0809、2片串/并转换芯片74164、若干辅助芯片74240、74373等和常用逻辑门电路芯片。 4、实验平台上的主要外设包括:K1~K10滑动开关、L1~L12发光二 极管(有3种颜色)、2个LED七段数码管、1个单脉冲发生器、1个时钟频率选择器、1个步进电机(带驱动电路)、1个直流电机(带驱动电路)、2个电位器、1个继电器、1个扬声器驱动、1个双踪模拟示波器、带有总线扩展区、带有EPROM烧录区。 实验系统的使用步骤: 1、在计算机、实验仪关闭时,使用实验平台自带的RS-232通用串口 线连接计算机的COM口和实验箱的J2串行口。

2、启动计算机,运行“DVCC52JH实验系统”。 3、在计算机上编写并调试实验程序,在实验箱中联接实验所需连线。 4、打开试验箱电源,点击实验箱上的“复位”按钮,再点击实验箱 上键盘区的“PCDBG”按钮。 5、在计算机上的“DVCC实验系统”软件中,左键单击工具栏上的 “联接”按钮(或选择“动态调试”菜单下的“联接DVCC实验系统选项”)。 6、如果联接正常将弹出若干小窗口。如果联接失败重新执行步骤3、 4。 7、在计算机上的“DVCC实验系统”软件中,选择“编译”菜单下 的“编译连接并传送”选项,将实验程序传送到实验箱。 8、在计算机上的“DVCC实验系统”软件中,左键单击工具栏中的 “运行”按钮,设置PC起始地址,观察实验现象,验证实验结果。 9、实验结束后关闭实验箱电源和计算机,拔下连线,收起实验箱并 放回原处。 软件实验 实验一清零实验 一、实验目的:

单片机实验项目及要求

单片机实验项目 实验一 LED闪烁灯设计(参照实验指导书实验一) 要求:1、完成一个LED亮、灭循环(间隔0.2秒)修改间隔时间为0.01秒 2、完成2个指示灯同时亮、灭循环(间隔0.2秒) 3、完成8个指示灯同时亮、灭循环(间隔0.2秒) 实验二广告灯左右移设计(参照实验指导书实验四) 要求:1、完成8个LED 单一灯(LED)的左移、右移(间隔0.2秒) 2、完成8个LED的从左到右、从右到左依次点亮(间隔0.2秒) 3、完成8个指示灯从两边倒中间依次点亮(间隔0.2秒) 4、完成8个指示灯从中间倒两边中间依次点亮(间隔0.2秒) 创新:实验一与实验二结合完成连续6个花色的广告灯运行过程 实验三单键识别设计(参照实验指导书实验八) 要求:1、完成独立按键的单次识别、去抖、等待弹起的原理与方法(利用8个LED实现BCD码变换)。 2、完成16进制、20进制等计数器编程方法 3、完成计数器的加、减法的计数过程及原理 4、完成一键多功能设计(参照实验指导书实验九) 5、完成4*4矩阵键盘的设计(参照实验指导书实验十四) 6、增加键盘音 实验四动态数码显示设计(参照实验指导书实验十三) 要求:1、完成2个动态数码管的设计(利用按键手动计数,实现20进制计数器的设计)(参照实验指导书实验十) 实验五六十秒计时器设计(参照实验十三)动态数码显示设计 1、完成8个动态数码管的设计(利用按键手动计数,实现60进制计数器的设计)(参照实验指导书实验十一) 2、利用4个动态数码管的完成20进制可逆计数器的设计(参照实验指导书实验十二) 实验七定时器中断实验(参照实验十六)定时计数器T0作定时应用设计(二) 要求:1、完成秒计数器,并在数码管上显示秒计数过程 2、完成进制控制(20秒),并在数码管上显示循环过程 实验八智能电子钟设计(参照实验二十)智能电子钟设计 要求:1、完成智能电子钟的自动走时设计,并在数码管上显示走时过程,时、分、秒中间采用“-”分开。 2、利用四个独立按键完成时、分、秒的初始化过程,要求第一个按键设置功能“0”代表时间设置功能、“1”代表分钟设置功能、“2”代表秒设置功能;第二、三个按键在不同的功能下分别控制各自的时、分、秒计数器;第四个按键完成设置退出。

单片机实验指导书2

MCS51单片机原理及应用 实验指导书 唐山学院信息工程系 单片机实验室 2008年9月

实验一 P1口实验 一、实验目的 1.学习P1口的使用方法; 2.学习延时子程序的编写和使用; 3.学习单片机实验系统的使用方法和程序的调试方法。 二、实验题目 1.P1口做输出口,接八只发光二极管,编写程序,使其循环点亮。 2.P1口低四位接四只发光二极管L1-L4, P1口高四位接开关K1-K4,编写程 序,将开关的状态在发光二极管上显示出来。 三、实验原理说明 P1口为准双向口,P1口的每一位都能独立地定义为输出线或输入线,作为输入的口线,必须向锁存器相应位写入“1”,该位才能作为输入。8031中所有口锁存器在复位时均置为“1”,如果后来往口锁存器写入过“0”,再作为输入时,需要向口锁存器对应位写入“1”。 延时程序的编写可以用两种方法,一种是用定时器来实现,一种使用指令循环来实现。在系统时间允许的情况下可以采用后一种方法。 如果系统晶振为6.144MHz,则一个机器周期为12/6.144μs即1/0.512μs。 现要编写一个延时0.1s的程序,可以大致写出如下: MOV R7, #200 DE1: MOV R6, #X DE2: DJNZ R6, DE2 DJNZ R7, DE1 上面 MOV、DJNZ指令均为两个机器周期,所以执行一条指令需要1/0.256us, 现求出X值:(X*1÷0.256+1÷0.256+1÷0.256)*200+1÷0.256=0.1*106 指令3 指令2 指令4 指令1 计算出X=126,代入上式可知实际延时约为0.100004s。 四、连线方法 题目1:8031的P1.0—P1.7分别接发光二极管L1—L8 题目2:P1口的P1.0—P1.3接L1-L4, P1口的P1.4—P1.7接K1-K4 五、实验电路

单片机实验程序

单片机实验程序 软件实验一 1、分别编程实现两个16位无符号数相加,结果存放在40H41H中;两个16位的无符号数相减,结果存放在30H31H中。 ; 两个16位无符号数相加,结果存放在30H31H中 ORG 0000H LJMP MAIN ORG 0030H MAIN : MOV R3,#01H ;输入加数高八位 MOV R4,#23H ;输入加数低八位 MOV R5,#45H ;输入被加数高八位 MOV R6,#67H ;输入被加数低八位 MOV A,R4 ;将R4存入寄存器A ADD A,R6 ;A与R6相加,结果存入A MOV 31H,A ;将低八位的和数存入31H MOV A,R3 ;将R3存入寄存器A ADDC A,R5 ;A与R5相加,结果存入A MOV 30H,A ;将高八位的和数存入30H SJMP $ END ; 两个16位的无符号数相减,结果存放在30H31H中。 ORG 0000H LJMP MAIN ORG 0030H MAIN : MOV R3,#12H ;输入减数高八位 MOV R4,#34H ;输入减数低八位 MOV R5,#56H ;输入被减数高八位 MOV R6,#78H ;输入被减数低八位 MOV A,R4 ;将R4存入寄存器A CLR C ;C位清"0" SUBB A,R6 ;A与R6相减,结果存入A MOV 31H,A ;将低八位的差数存入31H MOV A,R3 ;将R3存入寄存器A SUBB A,R5 ;A与R5相减,结果存入A MOV 30H,A ;将高八位的差数存入30H SJMP $ END 2、编程实现 X (X ≥40) Y= 2X (20=40时,Y=X;20=40时,将X的值赋给存放Y的值的R3 MOV R3,A SJMP $ BIGGER20: MOV A,R2 ;20

单片机实验指导书(PROTUES实用)

单片机原理与接口技术实验指导书 2009.10.28

目录 软件部分 (1) 实验一赋值程序 (1) 一实验目的 (1) 二实验内容 (1) 三程序流程图 (1) 四实验步骤 (1) 五参考程序 (1) 实验二数据区传送程序 (3) 一实验目的 (3) 二实验内容 (3) 三程序流程图 (3) 四实验步骤 (3) 五参考程序 (3) 硬件部分 (5) 实验一P1口亮灯实验 (5) 一实验目的 (5) 二实验内容 (5) 三程序流程图 (5) 四仿真电路 (6) 五硬件实现电路 (6) 六实验步骤 (7) 七参考程序 (7) 实验二P1口转弯灯实验 (8) 一实验目的 (8) 二实验内容 (8) 三程序流程图 (8) 四仿真电路 (8) 五实验电路 (9) 六实验步骤 (9) 七参考程序 (9) 附录一Keil Vison2使用入门 (11) 附录二Protues使用入门 (13) 附录三KeilC与Proteus连接调试 (15)

软件部分 软件实验中,涉及外部数据存储器扩展寻址操作,须按下图连接实验线路。 说明: 1 将存储器单元的D0-D7与数据总线单元D0-D7相连;存储器单元的A0-A12与地址总线单元A0-A12相连。 2 存储器单元的WE/PGM与六位LED左下方单元的WR或IOWR相连。 3 存储器单元的CS1与六位LED右下方单元A15相连。 4 存储器单元的OE与六位LED左下方单元的RD或IORD相连

实验一赋值程序 一实验目的 1 熟悉汇编指令 2 掌握汇编语言程序设计的一般方法 二实验内容 编写程序实现存储块(2000H---20FFH)的赋值操作(如全为0FFH)。三程序流程图 图1 流程图 四实验步骤 1 编写程序并调试。 2 在实验箱上运行程序,并查看对应存储器和寄存器的内容。。 五参考程序 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV R0,#00H MOV DPTR,#2000H MOV A,#0FFH LOOP0:MOVX @DPTR,A INC DPTR INC R0

单片机原理实验指导书(2012.10)

《单片机原理》实验指导书 计算机科学与技术系2012年8月

目录 第一部分单片机仿真实验 (1) 实验一:流水灯实验 (1) 实验二:中断实验 (4) 实验三:定时器中断实验 (6) 实验四:串行口实验 (9) 实验五:矩阵式键盘输入识别 (13) 实验六:LCD循环显示设计 (19) 第二部分单片机硬件实验............................错误!未定义书签。第一章试验箱系统概述 ...................................错误!未定义书签。 一、系统地址分配........................................... 错误!未定义书签。 二、系统接口定义........................................... 错误!未定义书签。 三、通用电路简介........................................... 错误!未定义书签。第二章实验指导...............................................错误!未定义书签。实验七P1口亮灯和P1口加法器实验........... 错误!未定义书签。实验八简单I/O口扩展(选作).................. 错误!未定义书签。实验九8255控制交通灯................................ 错误!未定义书签。实验十128*64LCD液晶显示 .......................... 错误!未定义书签。

第一部分单片机仿真实验 实验一:流水灯实验 一、实验目的: 通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的存储器。 二、实验原理图 实验参考电路图如下: 三、参考实验程序 //流水灯实验 #include //包含单片机寄存器的头文件 sfr x=0xb0; //P3口在存储器中的地址是b0H,通过sfr可定义8051内核单片机 //的所有内部8位特殊功能寄存器,对地址x的操作也就是对P1口的

单片机实验

实验一P1口亮灯实验 实验目的 ⑴学习P1口的使用方法; ⑵学习延时子程序的编写。 实验预备知识 ⑴P1口对准双向口,每一位都可独立地定义为输出线或输入线。 ⑵本实验中延时子程序采用指令循环来实现,机器周期(12/6MHz)*指令所需机器周期数*循环次数,在系统时间允许的情况下可以采用此方法。 实验内容 P1作为输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。 程序流程 实验电路 实验步骤 P1.0~P1.7用插针连至L1~L8,运行程序后,观察发光二极管闪亮移位情况。 思考 改变延时常数,使发光二极管闪亮时间改变。 修改程序,使发光二极管闪亮移位方向改变。

实验二 P3.3口输入,P1口输出 实验目的 掌握P3口P1口简单使用。 实验内容 P3.3口输入一脉冲,P1口按位加一方式点亮发光二极管。程序流程 实验电路

实验步骤 ⑴P3.3用插针连至K1,P1.0~P1.7用插针连至L1~L8。 ⑵编译、装载、连续运行。 ⑶开关K1每拨动一次,L1~L8发光二极管按位加一点亮。 思考 修改程序,使发光二极管左移方式点亮。

实验三工业顺序控制(中断控制) 实验目的 掌握工业顺序控制程序的简单编程:中断的使用。 实验预备知识 在工业控制中,象冲压、注塑、轻纺、制瓶等生产过程,都是一些继续生产过程,按某种顺序有规律地完成预定的动作,对这类继续生产过程的控制称顺序控制,倒注塑机工艺过程大致按“合模→注射→延时→开模→产伸→产退”顺序动作,用单片机最易实现。 实验内容 MCS-51的P1.0~P1.6控制注塑机的七道工序,现模拟控制七只发光二极管的点亮,低电平有效,设定每道工序时间转换为延时,P3.4为开工启动开关,高电平启动。P3.3为外部故障输入模拟开关,低电平报警,P1.7为报警声音输出,设定6道工序只有一位输出,第七道工序三位有输出。 程序流程

单片机实验资料大全

一、熟悉学习工具开发板 二、点亮LED 1.单片机及最小系统电路

1)电源电路 2)晶振电路 3)复位电路

2.74HC245和74HC138 74HC245的输入: DB_0 即P0.0 DB_1 即P0.1 DB_2 即P0.2 DB_3 即P0.3 DB_4 即P0.4 DB_5 即P0.5 DB_6 即P0.6 DB_7 即P0.7 U3 74HC138的输入: ADDR0即P1.0 ADDR1即P1.1 ADDR2即P1.2 ADDR3即P1.3 E3 ENLED即P1.4 E1 E2 3.跳线

4.LED 三极管基极端输入LEDS6是U3 74HC138的输出Y6 8个LED小灯阴极端的8个输入是74HC245的8个输出:DB 0 也就是P0.0 DB 1 也就是P0.1 DB 2 也就是P0.2 DB 3 也就是P0.3 DB 4 也就是P0.4 DB 5 也就是P0.5 DB 6 也就是P0.6 DB 7 也就是P0.7 5.点亮一个LED的程序 新建工程,添加.c文件,编辑编译,生成hex文件 编译成功会出现reg2.h,,双击可以打开 STP-ISP下载程序到板子,小灯被点亮 1)点亮第1个小灯,熄灭第1个小灯 2)点亮第2个小灯,熄灭第2个小灯 3)点亮第3个小灯,熄灭第3个小灯 4)点亮第1、2小灯,熄灭第1、2小灯 5)点亮第1、3、5、7小灯,熄灭第1、3、5、7小灯

三、闪烁LED 修改小灯闪烁的时间:低于20ms,大于50HZ,小灯的闪烁人眼看到是连续的 四、流水灯 1、用P0点亮小灯 2、依次点亮每个小灯,依次要赋给P0 的数值就是:0xFE、0xFD、0xFB、0xF7、0xEF、0xDF、0xBF、0x7F。 ?左移<<右移>> ?左移,最低位填0补充;右移,最高位填0补充 ?0xf0 11100000 01111000 流水灯程序

单片机导论实验讲义(章专)

第一章单片机软件实验 实验一内存操作 1.实验目的 ①掌握数据传送指令; ②掌握各种数据传送指令的寻址方式; ③熟练运用keil 环境对汇编程序进行调试; ④掌握数据传送、复制等程序的设计与调试方法。 2.预习要求 ①理解数据传送指令和循环指令的使用; ②理解如何对内部寄存器、内部RAM、外部RAM的读写; ③理解各种寻址方式,尤其是较为抽象的变址寻址及相对寻址的方式; ④认真预习本实验内容,自行编写程序,填写实验报告。 3.实验设备 计算机1台; 4.基础型实验内容 ①下列程序的功能是给外部RAM8000~80FFH的256个单元的内容赋值,赋值的内 容取决于程序中A的赋值。在Keil环境运行该程序,并观察寄存器及内存单元的变化。 设置块起始地址 设置块长度 当前地址内容清零 地址加1 否 是否清除完? 是 结束 ORG 0000H START EQU 8000H MAIN: MOV DPTR, #START ;起始地址 MOV R0,#0 ;设置256字节计数值 MOV A,#1H

Loop: MOVX @DPTR,A INC DPTR ;指向下一个地址 DJNZ R0,Loop ;计数值减1 NOP SJMP $ END ②下列程序将3000H起始的256个字节存储块移动到4000H起始的256个字节存储块, 在Keil环境运行如下程序,观察寄存器及存储单元的变化。 设置块的源地 设置块的目标地址 设置移动长度 从源地址取数 保存到目标地址 源地址加1 目标地址加1 是否移动完? 结束 ORG 0000H MOV DPTR,#3000H MOV A,#01H MOV R5,#O LOOP: MOVX @DPTR,A INC DPTR DJNZ R5,LOOP MOV R0,#30H MOV R1,#00H MOV R2,#40H MOV R3,#00H MOV R7,#0 LOOP1: MOV DPH,R0 MOV DPL,R1 MOVX A,@DPTR MOV DPH,R2

单片机原理实验报告(详细)

湖南城市学院 实验报告 2018-2019 学年上学期 姓名:*** 班级学号:****** 实验课程:单片机原理及应用 实验室名称:电子工程实验室 湖南城市学院信息与电子工程学院实验中心印制

实验项目名称:实验一指示灯和开关控制器实验 一、实验目的及要求 1、学习51单片机I/O基本输入/输出功能,掌握汇编语言的编程与调试方法; 2、熟悉proteus软件,了解软件的结构组成与功能; 3、学会在ISIS模块中进行汇编程序录入、编译和调试; 4、理解单片机程序控制原理,实现指示灯/开关控制器的预期功能。 二、实验原理 实验电路原理图如图1所示,图中输入电路由外接在P3口的8只拨动开关组成;输出电路由外接在P2口的8只低电平驱动的发光二极管组成。此外,还包括时钟电路、复位电路和片选电路。 图1 实验原理图

在编程软件的配合下,要求实现如下指示灯/开关控制功能:程序启动后,8只发光二极管先整体闪烁3次(即亮→暗→亮→暗→亮→暗,间隔时间以肉眼可观察到为准),然后根据开关状态控制对应发光二极管的灯亮状态,即开关闭合相应灯亮,开关断开相应灯灭,直至停止程序运行。软件编程原理为:(1)8只发光二极管整体闪烁3次 亮灯:向P2口送入数值0; 灭灯:向P2口送入数值0FFH; 闪烁3次:循环3次; 闪烁快慢:由软件延时时间决定。 (2)根据开关状态控制灯亮或灯灭 开关控制灯:将P3口(即开关状态)内容送入P2口; 无限持续:无条件循环。 程序流程图如图2所示。 图2 实验程序流程图

三、实验仪器设备及装置 (1)硬件:电脑一台; (2)仿真软件:Proteus; (3)编程软件Keil uVision4。 其中,仿真软件ISIS元件清单如表1所示。 表1 仿真软件ISIS元件清单 四、实验内容和步骤 (一)实验内容: (1)熟悉ISIS模块的汇编程序编辑、编译与调试过程; (2)完成实验的汇编语言的设计与编译; (3)练习ISIS汇编程序调试方法,并最终实现实验的预期功能。 (二)实验步骤: (1)提前阅读与实验相关的阅读材料; (2)参考指示灯/开关控制器的原理图和实验的元件清单,在ISIS中完成电路原理的绘制; (3)参考程序流程图在Keil uVision4中编写和编译汇编语言程序; (4)利用ISIS的汇编调试功能检查程序的语法和逻辑错误; (5)观察仿真结果,检验与电路的正确性。

单片机实验讲义

实验一软件实验 1.1 实验目的 通过实验熟悉DAIS软件仿真环境和MCS-51系列单片机指令系统。掌握程序编制、调试方法和技巧。 1.2 实验内容 1、把R1中内容传送至R0中。 2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中。 3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中。 4、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。 5、应用MOVC A,@A+PC指令求累加器A的平方值Y(设Y<=255),并把结果送至R7中保存。 6、将(R2R3)和(R4R5)中的双字节无符号数相加,结果存放在40H和41H单元中。 7、设自变量X为一无符号数,存放在内部数据存储器的V AX单元,函数Y存放在FUNC 单元,请编写满足如下关系的程序: 当x>=50时y=x; 当x<50时y=5x。 8、在外部数据存储器从2000H到2030H地址单元中存放有一数据块,请将它们分别传送至3000H单元到3030H单元中。 9、将8051片内的数据存储器20H单元中存放的单字节二进制数,转化为ASCII码,存放在30H31H单元中,(要求将ASCII码转换部分设计为子程序)。 汇编语言程序如下 ;1、把R1中内容传送至R0中。 ;2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中。 ;3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中。 ;4、把外部程序存储器2000H单元中的内容传送至内部数据存储器20H单元中。 org 0000h mov r1,#22h mov a,r1 ;1、把R1中内容传送至R0中 mov r0,a mov 20h,#33h mov 30h,20h ;2、把内部数据存储器20H单元中的内容传送至内部数据存储器30H单元中 mov dptr,#2000h ;3、把外部数据存储器2000H单元中的内容传送至内部数据存储器20H单元中 mov a,#66h movx @dptr,a clr a

单片机实验参考资料 (2)

实验一系统认识实验 一、实验目的 1.掌握SICElab-G2200实验/仿真系统的结构与使用方法; 2.熟悉单片机系统开发软件keilC51。 二、实验设备 1.G2200 实验平台 1 台 2.仿真器/ 仿真板 1 台 3.连线若干根 4.计算机 1 台 三、实验内容 P1端口接发光二极管,加1点亮。 四、连线方案: 五、实验步骤 1.仿真器与实验平台的连接 将Lab51板的DC34芯插座与G6W仿真器上的DC34插座用扁平电缆连接起来。 2.仿真器与计算机的连接 用随机配带的串口通讯电缆,将仿真器与计算机连接起来,串口1、串口2均可。 特别注意:在仿真器与计算机连接串口电缆时,两台机器必须都断电,否则易损坏计算机和仿真器。 3.实验连线 按连线方案,用随机配带的实验连线插入孔后,轻轻转动一下锁紧插头,保证良好接触。拆线时,应先回转一下,不要硬拨,以免损坏线路板。不管是拆线还是插线,都应在断电的情况下进行。实验中“连线方案”的粗线即为需用户动手接连的线。 4.检查接线是否有误,确信没有接错后,接上电源,打开电源开关。 5.在计算机上打开keil软件 建立新程序 ORG 0 MOV P1,#0 ;熄灭发光二极管 LOOP: INC P1 CALL Delay SJMP LOOP Delay: MOV R2,#3 ;延时程序

MOV R1,#0 MOV R0,#0 DLP: DJNZ R0,DLP DJNZ R1,DLP DJNZ R2,DLP RET END 6.建立新的项目 7.设置项目 8.编译程序 选择菜单[项目 | 编译]功能或按编译快捷图标或按F9键,编译项目。 在编译过程中,如果有错可以在信息窗口中显示出来。双击错误信息,可以在源程序中定位所在行。纠正错误后,再次编译直到没有错误。在编译之前,软件会自动将项目和程序存盘。在编译没有错误后,就可以执行、调试程序了。 9.执行、调试程序 六、实验结果 七、实验总结 实验二查表程序 一、实验目的 1.学习Keil uvision3单片机仿真软件的使用方法。 2.熟悉单片机实验操作步骤。 3.熟练掌握MOVC A,@A+DPTR和MOVC A,@A+PC两条查表指令的功能及应用原理。通过 实验进一步加深理解两条查表指令的异同。 4.掌握采用两条查表指令编写的实验程序的调试方法,验证程序的正确性。 二、实验设备 PC机一台,keil uvision3软件 三、实验内容 采用查表法求1~20的平方数。入口:自变量在累加器A中。出口:平方高位数在R7中,低位在R6中。分别采用MOVC A,@A+DPTR和MOVC A,@A+PC查表指令编写实验程序,并进行调试和验证; 四、实验原理 本次实验采用查表指令MOVC A , @A+DPTR实现上述字数据查表。因为最大的自变量20的平方数是400,为了查表后验证方便,自变量1~20对应的平方数用伪指令DW定义,并且定义为压缩BCD码。查表指令MOVC A , @A+DPTR只能进行字节查表,要查找一个字数据,必须进行两次查表。利用指令MOVC A, @A+DPTR查表,表可以存放在任何位置,查表前只需要将表的首地址用MOV指令送DPTR、累加器A中必须是要查找数据在表中的偏移地址即可,查找到的数据存放在累加器A中。编程时,首先将表的首地址送DPTR,累加器A中的自变量减1形成要查找数据在表中的序号,序号乘2得到表内偏移地址,将该偏移地址暂存到寄存器R6中,用MOVC A , @A+DPTR指令进行第一次查表,得到该自变量的平方高8位在累加器A中,并与R6进行交换,这样查找的平方高位数存放在寄存器R6中,累加器A中是第一次查表时的表内偏移地址;累加器A再加1,得到要查找的平方低位数在表内的偏移地址,再用MOVC A, @A+DPTR指令进行第二次查表,累加器A得到该自变量的平方低8位,送寄存器R7。 据此实验原理编写的实验源程序清单见附页。 ORG 0000H MOV A,#5 ;把要计算的自变量送入A

单片机实验指导书——带答案

《单片机原理及应用》 实验指导书 姓名: 学号: 专业班级: 所在学院:成人教育学院 2012年5月日 单片机实验指导书

目录 实验一系统认识实验 (2) 实验二程序调试 (4) 实验三外部中断实验 (6) 实验四串口实验 (8) 实验一系统认识实验 一、实验目的 1.掌握SICElab-G2200实验/仿真系统的结构与使用方法; 2.熟悉单片机系统开发软件WAVE6000。

二、实验设备 1.G2200/2100 实验平台 1 台 2.仿真器/ 仿真板 1 台 3.连线若干根 4.计算机 1 台 三、实验内容 P1端口接发光二极管,加1点亮。 四、连线方案: 实验箱 内部已 连好 五、实验步骤 1.连接Lab51CPU板。(已由实验师连好) 2.仿真器与实验平台的连接 将Lab51板的DC34芯插座与G6W仿真器上的DC34插座用扁平电缆连接起来。(已由实验师连好) 3.仿真器与计算机的连接 用随机配带的串口通讯电缆,将仿真器与计算机连接起来,串口1、串口2均可。 特别注意:在仿真器与计算机连接串口电缆时,两台机器必须都断电,否则易损坏计算机和仿真器。 4.实验连线 按连线方案,用随机配带的实验连线插入孔后,轻轻转动一下锁紧插头,保证良好接触。拆线时,应先回转一下,不要硬拨,以免损坏线路板。不管是拆线还是插线,都应在断电的情况下进行。实验中“连线方案”的粗线即为需用户动手接连的线。 5.检查接线是否有误,确信没有接错后,接上电源,打开电源开关。 6.在计算机上打开“WAVE6000集成调试环境”,界面如下图所示: 7.建立新程序(如果程序已编好,直接跳到第9步) 选择菜单[文件 | 新建文件]功能。 出现一个文件名为NONAME1的源程序窗口,在此窗口中输入以下程序 ORG 0 MOV P1,#0 ;熄灭发光二极管 LOOP: INC P1 CALL Delay SJMP LOOP Delay: MOV R2,#3 ;延时程序 MOV R1,#0

单片机实验分析指导书

\\ 《单片机原理与应用》 实验指导书 注意: 1、做实验前必须预习 2、带教材和实验指导书 哈尔滨理工大学 自动化学院自动化系

实验仪的使用 本实例是仿真INTEL的8031单片机,来循环点亮P1口的发光二极管(低电平有效)。程序是用汇编语言来编写。下面介绍相应的操作步骤: 1、运行桌面“星研集成软件”,画面如下: 2、建立源文件 执行[主菜单?文件?新建],(或者点击图标)打开窗口。 选择存放源文件的目录,输入文件名,注意:一定要输入文件名后缀。对源文件编译、连接、生成代码文件时,系统会根据不同的扩展名启动相应的编译软件。比如:.ASM文件,使用A51来对它编译。本 实例文件名为xunhuan.asm 。窗口如下: 按“确定”即可。然后即出现文件编辑窗口: 输入源程序,参照实验一源程序。 1

这样一个源文件就建立好了。 3.编译、连接文件 首先选择一个源文件,然后可以编译、连接文件了。对文件编译,如果没有错误,再与库文件连接,生成代码文件(DOB、HEX文件)。编译、连接文件的方法有如下二种:(1)使用[ 主菜单?项目?编译、连接]或[主菜单?项目?重新编译、连接]”。(2)点击图标或来“编译、连接”或“重新编译连接”。编译、连接过程中产生的信息显示在信息窗的“建立”视中。编译没有错误的信息如下: 若有错误则出现如下信息框: 有错误、警告信息,用鼠标左键双击错误、警告信息或将光标移到错误、警告信息上,回车,系统自动打开对应的出错文件,并定位于出错行上。 这时用户可以作相应的修改,直到编译、连接文件通过。 4.调试 编译、连接正确后,可以开始调试程序。进入调试状态方法有: a)执行[ 主菜单?运行?进入调试状态] b)点击工具条的进入后的窗口如下: 2

《单片机原理》实验指导书proteus

《单片机原理及接口》 实验指导书 莆田学院信息工程学院 2016年2月

目录 实验一仿真系统搭建 (1) 实验二实验系统编程应用 (7) 实验三流水灯实验 (9) 实验四 LED数码管显示实验 (11) 实验五键盘实验 (13) 实验六中断系统实验 (15) 实验七 51定时器实验 (17)

实验一仿真系统搭建 一、实验目的 了解实验设备的软硬件组成,包括keil单片机仿真软件的安装、设置与使用,单片机仿真调试软件的安装、设置与使用,单片机仿真器的功能、结构与使用,51单片机实验板的电路结构、工作原理与使用。 熟悉使用keil单片机仿真软件、仿真调试软件和实验板进行协调工作的方法。熟悉使用至少两种单片机仿真系统建立、设置、调试工作项目的方法。 二、实验原理 整个实验系统由仿真调试软件(keil单片机仿真软件、伟福仿真调试软件)、单片机仿真头(伟福仿真器)和单片机最小板(51单片机实验板)组成或使用Proteus 仿真系统进行硬件仿真。仿真软件进行项目的管理设置,仿真器进行软件的下载与单片机的仿真(IAP),实验板搭载建立各种外围电路。 主要掌握的软件有KEIL编程软件、Proteus硬件仿真软件和其他一些差用软件及硬件构造。 整个实验系统使用时,若使用硬件仿真,第一步安装KEIL软件,第二步安装星研系列仿真调试软件,第三步将仿真器的数据口和电源口连接微机及实验板,进行仿真器驱动安装。第四步将仿真头插入实验板插座(注意仿真头三角箭头标注引脚为第一脚),开机调试。若使用软件仿真,第一步安装KEIL软件,第二步安装Proteus硬件仿真软件,然后用Proteus硬件仿真软件进行电路构建,最后进行程序调试。 1、Keil软件的安装设置:

单片机个实验代码详细

第一章单片机系统板说明 一、概述 单片机实验开发系统是一种多功能、高配置、高品质的MCS-51单片机教学与开发设备。适用于大学本科单片机教学、课程设计和毕业设计以及电子设计比赛。 该系统采用模块化设计思想,减小了系统面积,同时增加了可靠性,使得单片机实验开发系统能满足从简单的数字电路实验到复杂的数字系统设计实验,并能一直延伸到综合电子设计等创新性实验项目。该系统采用集成稳压电源供电,使电源系统的稳定性大大提高,同时又具备完备的保护措施。为适应市场上多种单片机器件的应用,该系统采用“单片机板+外围扩展板”结构,通过更换不同外围扩展板,可实验不同的单片机功能,适应了各院校不同的教学需求。 二、单片机板简介 本实验系统因为自带了MCS-51单片机系统,因此没有配置其他单片机板,但可以根据教学需要随时配置。以单片机板为母板,并且有I/O接口引出,可以很方便的完成所有实验。因此构成单片机实验系统。 1、主要技术参数 (1)MSC-51单片机板 板上配有ATMEL公司的STC89C51芯片。 STC89C51资源:32个I/O口;封装DIP40。 STC89C51开发软件:KEIL C51。 2、MSC-51单片机结构 (1)单片机板中央放置一块可插拔的DIP封装的STC89C51芯片。 (2)单片机板左上侧有一个串口,用于下载程序。 (3)单片机板的四周是所有I/O引脚的插孔,旁边标有I/0引脚的脚引。 (4)单片机板与各个模块配合使用时,可形成—个完整的实验系统。 三、母板简介 主要技术参数 (1)实验系统电源 实验系统内置了集成稳压电源,使整个电源具有短路保护、过流保护功能,提高了实验的稳定性。 主板的右上角为电源总开关,当把220V交流电源线插入主板后,打开电源开关,主板

51单片机实验指导书

51系列单片机原理与应用实验

目录 实验一交通灯控制实验 (4) 实验二现实人体视觉暂留特性测试实验 (7) 实验三实施时钟制作实验 (9) 实验四简易电子琴制作实验 (10) 实验五EEPROM应用—数字密码锁 (13) 实验六综合实验:教学板自检程序设计 (15) 实验七数据采集—火灾报警装置的软硬件设计 (17) 附录一实验教学板 (17) 附录二实验用软件使用说明 (18)

实验须知 一、预习要求 1.实验前认真阅读实验指导书的相关内容,明确实验目的和实验任务。 2.实验前应做好预习报告,在报告中,要求画出所设计的实验电路原理图、程序流程图,编写好程序,并对程序加以注释,还要拟订好实验步骤。 二、实验要求 1.按实验中心安排的时间到指定实验室上实验课,不要迟到、缺席。有特殊原因不能在原安排时间来实验时,须提前一天通知实验中心负责教师。 2.认真完成每次实验的各项任务,实验结果要请指导教师检查。教师对实验内容提问,并对完成者进行记录。 3.爱护设备,保持清洁,不得在实验室内大声喧哗,不要将食物带入实验室,不擅自更换设备。 4.在实验箱(板)通电状态下,不要用手随意触摸电路板上除按键和开关以外的芯片等其它元器件。,严禁带电操作,即所有接线、改线和拆线操作均应在不带电的状态下进行。 5.实验中若发生异常情况应立即切断电源,并向指导教师报告,检查原因,避免再次发生类似情况。 6.实验完毕,请整理好实验设备后再离开实验室。 三、实验报告要求 实验报告必须使用实验报告专用纸,书写要工整、清楚,并在下一次实验时交给指导教师。实验报告应包括以下内容: 1.实验名称、实验人姓名、学号、班级、同组人姓名。 2.实验目的、任务(内容)。 3.各任务程序流程图、自编程序清单,对程序须给出适量注释(例如:变量和

相关文档
最新文档