单片机习题集和答案2015(8)
时间:2026-01-16
时间:2026-01-16
单片机习题集和答案
RET
6 编一子程序,从串行接口接受一个字符.
解: START: MOV TMOD,#20H ;定时器T1工作于模式2
MOV TH1,#0E8H ;设置波特率为1 200b/s
MOV TL1,#0E8H
SETB TR1 ;启动T1
MOV SCON,#50H ;串行接口工作于方式1,充许接收 L1: JNB RI,L1 ;等待接收数据,末接收到数据,继续
等待
CLR RI ;接收到数据,清RI
MOV A,SBUF ;接收到数据送A
RET
7 利用调子程序的方法,进行两个无符号数相加。请编主程序及子程序。
解 用R0和R1作数据指针,R0指向第一个加数,并兼作“和”的指针,R1
指向另一个加数,字节存放到R2中作计数初值。
主程序:
JAFA: MOV R0,#20H ;指向加数最低字节
MOV R1,#29H ;指向另一加数最低字节
MOV R2,#04H ;字节数作计数值
ACALL JASUB ;调用加法子程序
AJMP $
RTE
多字节加法子程序:
JASUB: CLR C
JASUB1: MOV A,@R0 ;取出加数的一个字节(4B无符号数加数)
ADDC A,@R1 ;加上另一数的一个字节
MOV @R0,A ;保存和数
INC R0 ;指向加数的高位