标题: 单片机入门设计:一位数码管数字显示(汇编+仿真) [打印本页]

作者: xxpp2011    时间: 2018-12-30 23:42
标题: 单片机入门设计:一位数码管数字显示(汇编+仿真)
制作一个简单的51单片机7段LED数码管显示,数字由0~9循环显示(Proteus仿真和汇编代码在附件中)
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1.         ORG         0000H
  2.         LJMP START
  3.         ORG 0030H
  4. START:         MOV         DPTR,#TABLE          ;DPTR指向段码表首地址
  5. S1:        MOV        A,#00H                  
  6.         MOVC        A,@A+DPTR          ;查表取得段码
  7.         CJNE        A,#01H,S2          ;判断段码是否为结束符
  8.         SJMP        START
  9. S2:        MOV        P0,A                  ;段码送数码管显示
  10.         LCALL        DELAY                  ;延时
  11.         INC        DPTR
  12.         SJMP        S1
  13. DELAY:         MOV         R5,#20                  ;延时子程序
  14. D2:         MOV         R6,#20
  15. D1:         MOV         R7,#248
  16.         DJNZ         R7,$
  17.         DJNZ         R6,D1
  18.         DJNZ         R5,D2
  19.         RET                                                          
  20. TABLE:         DB         3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH          ;段码表
  21.         DB        01H                                 ;结束符
  22.         END
复制代码

所有资料51hei提供下载:
LED数码管显示之7段LED数码管.zip (34.86 KB, 下载次数: 21)



作者: Imagine灬    时间: 2020-3-29 15:49
为什么运行数码管不亮,有蓝色的点就是没有红色的

作者: xxpp2011    时间: 2020-4-15 11:16
Imagine灬 发表于 2020-3-29 15:49
为什么运行数码管不亮,有蓝色的点就是没有红色的

有没有导入hex文件




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1