用汇编语言编程,设计8位共阴极七段码显示原理图,动态显示从左到右显示5CE20229
时间: 2024-03-19 11:44:53 浏览: 82
七段电子表显示汇编程序源代码资料
好的,以下是一个简单的汇编程序,可以实现动态显示从左到右显示5CE20229:
```
ORG 0000H
MOV P1, #0FFH ; P1口设置为输出
MOV DPTR, #TABLE ; 将数据表的地址装入DPTR
MOV R0, #00H ; 设置初始计数器值
AGAIN:
MOV A, R0 ; 将计数器值装入累加器
MOVX A, @DPTR ; 读取数据表中的数值
MOV P1, A ; 将读取的数值输出到P1口
ACALL DELAY ; 调用延时程序
INC R0 ; 计数器自增
CJNE R0, #04H, AGAIN ; 如果计数器不为4,则跳转到AGAIN继续循环
MOV DPTR, #TABLE2 ; 将数据表2的地址装入DPTR
MOV R0, #00H ; 重新设置计数器值
AGAIN2:
MOV A, R0 ; 将计数器值装入累加器
MOVX A, @DPTR ; 读取数据表2中的数值
MOV P1, A ; 将读取的数值输出到P1口
ACALL DELAY ; 调用延时程序
INC R0 ; 计数器自增
CJNE R0, #04H, AGAIN2 ; 如果计数器不为4,则跳转到AGAIN2继续循环
MOV DPTR, #TABLE ; 将数据表的地址装入DPTR
SJMP AGAIN ; 无限循环
DELAY:
MOV R1, #0FFH ; 设置延时循环次数
HERE:
DJNZ R1, HERE ; 循环延时
RET ; 延时结束,返回
TABLE:
DB 70H ; 5
DB 0CH ; C
DB 7CH ; E
DB 40H ; 空格
DB 3FH ; 2
DB 06H ; 0
DB 2EH ; 2
DB 39H ; 9
TABLE2:
DB 3FH ; 2
DB 06H ; 0
DB 2EH ; 2
DB 39H ; 9
END
```
该程序使用了两个数据表,一个用于显示5CE,另一个用于显示20229。程序会循环读取数据表中的数据,将其输出到P1口控制的七段数码管上,并等待一段时间后再输出下一个数码。DELAY子程序中的循环次数可以根据需要进行调整,以达到合适的延时效果。
阅读全文