微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 89c52单片机P0口怎么编程实现复用控制数码管的段码和位码

89c52单片机P0口怎么编程实现复用控制数码管的段码和位码

时间:10-02 整理:3721RD 点击:


怎么编程实现三个数码管动态显示

74hc573一个控制段选一个控制位选

百度一大堆,比较着学习肯定有收获

锁存

用锁存器分时复用P0口。

     ORG 0000H
     AJMP MAIN
         ORG 0300H
MAIN:MOV R1,#1H
     MOV R2,#2H
         MOV R3,#3H
         MOV P0,#0FFH
DD:         SETB P2.7
     CLR  P2.6
     MOV A,R1
     MOV DPTR,#TAB
         MOVC A,@A+DPTR
         MOV P0,A
     ACALL DELAY
         CLR P2.7
         SETB P2.6
         MOV P0,#0FEH
         CLR P2.6
         SETB P2.7
     MOV A,R2
     MOV DPTR,#TAB
         MOVC A,@A+DPTR
         MOV P0,A
         ACALL DELAY
         CLR P2.7
         SETB P2.6
         MOV P0,#0FDH
         CLR P2.6
         SETB P2.7
     MOV A,R3
     MOV DPTR,#TAB
         MOVC A,@A+DPTR
         MOV P0,A
         ACALL DELAY
         CLR P2.7
         SETB P2.6
         MOV P0,#0FBH
         AJMP DD
DELAY:
     MOV R4,#10H
XT1: MOV R5,#0F0H
XT2: DJNZ R5,XT2
     DJNZ R4,XT1
         RET       
TAB: DB 3FH,6H,5BH,4FH,66H,6DH,7DH,7H,7FH,6FH        ;0-9数码管显示译码
         END
为什么编完之后 数码管显示的顺序是反着的?

只要你会用数码管,这个就没有难度了,你只要控制LE脚就可以控制wei了

加两个74hc573分别控制段和位就可以了   百度下就可以看到。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top