单片机实验总结
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机实验程序小结
实验二中断实验
1.将P1口驱动的8个LED发光二极管做左移循环闪烁(7灭1亮),当有中
断请求时(连接在0
INT引脚上的按键来模拟)使8个LED发光二极管闪烁6次。
a)程序:
ORG 0000H
LJMP START
ORG 0003H
LJMP EXT1
ORG 0100H
START: SETB EA
SETB EX0
SETB IT0
MOV SP,#60H
MOV A,#01H
L1: MOV P1,A
ACALL DELAY
RL A
JMP L1
DELAY: MOV R1,#50
J1: MOV R2,#20
J2: MOV R3,#248
DJNZ R3,$
DJNZ R2,J2
DJNZ R1,J1
RET
EXT1: PUSH ACC
PUSH PSW
CLR RS1
SETB RS0
MOV A,#00H
MOV R7,#12
S1: MOV P1,A
ACALL DELAY
CPL A
DJNZ R7,S1
POP PSW
POP ACC
RETI
END
2.0
INT接实验箱上的负脉冲按钮,来模拟中断源。当有“中断请求”(该铵钮按下并松开)时,使连接在P1口上的4个发光二极管的状态反映(记录)“中断请求”次数(初使状态时,该4个发光二极管全灭)。
a)程序:
ORG 0000H
LJMP START
ORG 0003H
LJMP EXT1
ORG 0100H
START: SETB EA
SETB EX0
SETB IT0
MOV SP,#60H
MOV A,#00H
MOV P1,A
JMP $
EXT1: PUSH PSW
RL A
ADD A,#1H
MOV P1,A
POP PSW
RETI
END
ORG 0000H
LJMP MAIN
ORG 0003H
LJMP INT_0
ORG 0100H
MAIN: SETB EA
SETB EX0
SETB IT0
INT_0:
RETI
实验三定时器和计数器实验
1.利用8031定时器的中断方式产生400Hz的音频信号(方波),通过P1.0驱动
蜂鸣器。
a)程序
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0INT
ORG 0100H
MAIN: SETB EA
SETB ET0
MOV TMOD,#01H
MOV TL0,#3CH
MOV TH0,#0F6H
SETB TR0
SJMP $
T0INT: CPL P1.0
MOV TL0,#3CH
MOV TH0,#0F6H
RETI
2.在上面的实验基础上添加一个按键K1(接P3.3),实现以下功能: K1按下时,通过定时器1的中断方式,通过P1.0驱动蜂鸣器; K1键松开时,使蜂鸣器不响。
a)程序:
ORG 0000H
LJMP MAIN
ORG 001BH
LJMP T1INT
ORG 0100H
MAIN: SETB EA
SETB ET1
MOV TMOD,#90H
MOV TL1,#3CH
MOV TH1,#0F6H
SETB TR1
AJMP $
T1INT: CPL P1.0
MOV TL1,#3CH
MOV TH1,#0F6H
RETI
3.8031内部定时/计数器T0,按计数器模式下的方式1工作,对P3.4引脚的脉冲个数(接至实验箱上的负脉冲按钮)进行计数。将其数值按二进制数通过P1口驱动的4个发光二极管的状态反映(记录)(初始状态时,该4个发光二极管全灭)。
a) 程序:
ORG 0100H
MOV TMOD,#06H
MOV TL0,#00H
MOV TH0,#00H
SETB TR0
S0: MOV P1,TL0
JNB TF0,S1
CLR TF0
S1: SJMP S0
定时器小结:
1.设置计数器/定时器工作模式,MOV TMOD,#**H
2.计算计数初值,并送到计数器,MOV TH0,#**H
MOV TL0,#**H
3.设置中断:SETB EA
SETB ET1
4.开计数器/定时器:SETB TR0
5.编写中断子程序。
常用格式:ORG 0000H
LJMP MAIN
ORG 000BH
LJMP T0INT
ORG 0100H
MAIN: MOV TMOD,#**H
MOV TH0,#**H
MOV TL0,#**H
SETB EA
SETB ET0
SETB TR0
主程序(略)
T0INT: 中断程序
MOV TH0,#**H
MOV TL0,#**H
RETI