最新单片机实验指导
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机实验指导
实验一
跑马灯实验
一、实验目的与要求
熟悉星研集成环境软件或熟悉Keil C51集成环境软件的使用方法。 熟悉MCS51汇编指令,能自己编写简单的程序,控制硬件。
二、实验设备
STAR 系列实验仪一套、PC 机一台 三、实验内容
1、熟悉星研集成环境软件或熟悉Keil C51集成环境软件的安装和使用方法。
2、照接线图编写程序:使用P1口控制F5区的8个指示灯,循环点亮,瞬间只有一个灯亮。
2、观察实验结果,验证程序是否正确。 四、实验原理图
P1.01P1.12P1.23P1.34P1.45P1.56P2.1(A9)22P2.2(A10)23P2.3(A11)24P2.4(A12)25P2.5(A13)26P2.6(A14)27P2.7(A15)28PSEN 29ALE/PROG
30EA/Vpp 31P0.7(AD7)32P0.6(AD6)33P0.5(AD5)34P0.4(AD4)35P0.3(AD3)36P0.2(AD2)37P0.1(AD1)38P0.0(AD0)39Vcc 40P1.67P1.78RST
9(RXD)P3.010(TXD)P3.111(INT0)P3.212(INT1)P3.313(T0)P3.414(T1)P3.515(WR)P3.616(RD)P3.717XTAL218XTAL119P2.0(A8)
21
GND 20
89C52
U42DS35DS36DS37DS38DS39DS40DS41VCC
DS421
2345678510
R111
510R112
510R113
510R114
510R115
510R116
510R117
510R118
2、编写程序或运行参考程序。
3、实验结果:通过F5区的LED指示灯(8个指示灯轮流点亮),观察实验的输出结果是否正确。
六、演示程序
ORG 0000H
LJMP START
ORG 0100H
START: MOV SP,#60H
MOV A,#0FFH
CLR C
START1: RLC A
MOV P1,A
ACALL Delay
SJMP START1
Delay: MOV R5,#2 ;延时
Delay1: MOV R6,#0
Delay2: MOV R7,#0
DJNZ R7,$
DJNZ R6,Delay2
DJNZ R5,Delay1
RET
END
如果读者使用星研集成环境软件,请考虑以下问题?
1、运行程序前,打开变量窗;
2、使用单步进入命令,运行到第六行后,运行过程中变量窗有何变化?将鼠标停留在A、SP上一秒后,出现什么?,它与变量窗使用场合的区别?
3、第九行是调用延时子程序,如何进入延时子程序(使用单步进入命令)?如何将延时子程序一下子运行完毕(使用单步命令;也可以将光标移到下一行,使用运行到光标处命令;)?单步进入命令与单步命令有何区别?
4、运行几次后,在第十行设置一个断点,使用全速断点命令运行几次,观察运行结果,它与运行到光标处命令有何区别?
5、Delay是一个延时子程序,改变延时常数,使用全速运行命令,显示发生了什么变化?
6、观察寄存器,有哪几种方法?
1)在工作区窗的通用寄存器标签视中;
2)变量窗
3)鼠标停留在寄存器上
4)观察窗
5)寄存器窗
实验二数据传送(RAM–>XRAM)
一、实验目的
熟悉星研集成环境软件或熟悉Keil C51集成环境软件的使用方法。
熟悉MCS51汇编指令,能自己编写简单的程序,掌握数据传输的方法。
二、实验内容
1、熟悉星研集成环境软件或熟悉Keil C51集成环境软件的安装和使用方
法。
2、编写程序,实现内外部数据段的传送、校验。
三、程序框图
«Skip Record If...»
四、实验步骤
在内部RAM 30H ~3FH中输入数据;使用单步、断点方式调试程序,检测
外部数据RAM的1000H ~100FH中的内容。熟悉查看特殊功能寄存器、内部数
据RAM、外部数据空间的各种方法。
五、程序清单
;将内部RAM Address1 开始的16个字节送到外部RAM从Address2开始的单元里,再作比较。
Address1 DATA 30H
Address2 XDATA 1000H
ORG 0000H
LJMP STAR
ORG 0100H
STAR: MOV SP,#60H
MOV R0,#Address1
MOV DPTR,#Address2
MOV R7,#10H
STAR1: MOV A,@R0 ;传送
MOVX @DPTR,A
INC R0
INC DPTR
DJNZ R7,STAR1
MOV R0,#Address1
MOV DPTR,#Address2
MOV R7,#10H
STAR2: MOV B,@R0 ;比较
MOVX A,@DPTR
CJNE A,B,STAR3
INC R0
INC DPTR
DJNZ R7,STAR2
SJMP $ ;传送正确
STAR3: SJMP $ ;传送错误
END
如果读者使用星研集成环境软件,请考虑以下问题:
1、运行程序前,打开变量窗、二个存贮器窗(一个选择片内数据;一个选择片外数据,起始地址选择1000H),每个存贮器窗有四个标签,有何好处?;
2、使用单步进入命令,运行到第十四行后,运行过程中变量窗有何变化?将鼠标停留在A、SP、@R0、@DPTR上一秒后,出现什么?,它与变量窗使用场合的区别?
3、将光标移到第十四行上,使用运行到光标处命令,观察运行结果,体会它与单步进入命令的不同处。
4、在二十行上,设置一个断点,使用全速断点命令运行几次,观察运行结果,它与运行到光标处命令有何区别?
5、使用全速运行命令,稍后,点击工具条上停止运行命令按钮,当前执行箭头停在哪一行?运行结果是否正确?它与全速断点运行命令有何区别?
6、观察寄存器,有哪几种方法?
1)在工作区窗的通用寄存器标签视中;
2)变量窗
3)鼠标停留在寄存器上