单片机编程练习题(含部分答案)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编程练习题

1.编一程序将片内存储单元20H~3FH单元的内容复制到40H~5FH单元。

MOV R0,#20H

MOV R1,#40H

MOV R7,#32

LOOP: MOV A,@R0

MOV @R1,A

INC R0

INC R1

DJNZ R7,LOOP

SJMP $

2.编一程序将片内存储器40H单元的内容与41H单元的内容进行比较,若相等

将50H置00H,若不等将50H置0FFH。

3.在片内数据存储单元30H~4FH中存有32个同学的数学成绩,编一程序计算

有多少同学成绩不及格(成绩低于60为不及格)。若20H作为计数存储单元MOV R0,#30H

MOV 20H,#0

MOV R7,#32 LOOP: MOV A,@R0

SUBB A,#60

JNC GE

INC 20H GE: INC R0

DJNZ R7,LOOP

SJMP $

MOV R0,#30H

MOV 20H,#0

MOV R7,#32 LOOP: CJNE @R0,#60,NE NE: JNC GE

INC 20H

GE: INC R0

DJNZ R7,LOOP

SJMP $

4.内部RAM中分别以地址20H和30H开始的连续16个单元,按顺序依次将两

组中相应单元的内容相加(不考虑溢出),并将和存入外部RAM2000H开始的单元中。

MOV R0,#20H

MOV R1,#30H

MOV DPTR,#2000H

MOV R7,#16

LOPP: MOV A,@R0

ADD A,@R1

MOVX @DPTR,A

INC R0

INC R1

INC DPTR

DJNZ R7,LOOP

SJMP $

5.设内部RAM20H单元为数据块的起始地址,数据块长度为10H,数据为8位

无符号数,试编程找出数据块中的最小值,并将其存入40H单元。

MOV R0,#20H

MOV 40H,#255

MOV R7,#10H

LOOP: MOV A,@R0

SUBB A,40H

JNC NJW

MOV 40H,@R0

NCW: INC R0

DJNZ R7,LOOP

SJMP $

6.比较两个ASCII码字符串是否相等。字符串长度在内部RAM2FH单元,两字

符串的首地址分别为30H、50H。如果两个字符串相等,置CY=1,否则,置CY=0。

MOV R0,#30H

MOV R1,#50H

LOOP: MOV 20H,@R0

CJNE @R1,20H,NE

INC R0

INC R1

DJNZ 2FH,LOOP

SETB C

SJMP $

NE: CLR C

SJMP $

7.内部RAM30H和31H单元中各存放一个“0-9”数字的ASCII码,将其转换为

压缩BCD码(30H的BCD码在高4位),结果存入外部RAM2300H单元中。8.将内部RAM40H为起始地址的32个连续单元中的十六进制数转换成ASCⅡ码

存入外部RAM3000H开始的存储单元中。

0~9 +30H

A~F +37H

9.设时钟频率为6MHz或12MHz,分别编写一个延时1ms、5ms、20ms、100ms

子程序。

10.图示电路,若fosc=12MHz,数码管为共阳极,分别用延时法和定时器两种

方法编程实现数码管从0~9的交替轮流显示,时间间隔为1秒。(数字0~9共阳极段选码为0C0H, 0F9H, 0A4H, 0B0H, 99H, 92H, 82H, 0F8H, 80H, 90H。)

定时器中断法:

ORG 0000H

LJMP MAIN

ORG OOOBH

MOV TH0,#3CH ;定时50ms

MOV TL0,#0B0H

DJNZ R7,NEXT

MOV R7,#20 ;黄色块程序每1s执行一次MOV A,R6

MOVC A,@A+DPTR

MOV P1,A

INC R6

CJNE R6,#10,NEXT

MOV R6,#0

NEXT:RETI

MAIN:MOV TMOD,#01H

MOV TH0,#3CH ;定时50ms

MOV TL0,#0B0H

MOV IE,#82H

MOV R7,#20

MOV R6,#0 ;显示内容初值为0

MOV DPTR,#TAB

SETB TR0

SJMP $

TAB:DB *********

相关文档
最新文档