标题: 单片机8位数码管不用锁存器显示0-8程序 Proteus仿真图 [打印本页]

作者: 3花木城    时间: 2021-12-22 20:49
标题: 单片机8位数码管不用锁存器显示0-8程序 Proteus仿真图
还不会用锁存器,直接用一排口控制位选,一排口控制段选。用的共阳数码管,实际使用前要先判断好,类型和程序、接线方式都有区别,注意。
仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)


单片机源程序如下:
  1. #include <reg52.h>
  2. #define uchar unsigned char
  3. #define smgd P2    //定义段选为P2总线          段段
  4. #define smgw P0    //定义位选为P0总线        位位
  5. uchar code tabled[]={0xC0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf};
  6. uchar code tablew[]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,
  7.                       0x80}; //共阳极数码管,高电平点亮
  8.                                                   //如果是共阴极的,要低电平,求反
  9.                                                 // 7seg-mpx1-ca。ca是共阳,cc是共阴
  10. void delay(uchar i)                                                                //C0
  11. {
  12.   uchar j,k;
  13.   for(j=i;j>0;j--)
  14.     for(k=125;k>0;k--);
  15. }

  16. /*演示主程序*/
  17. void main(void)
  18. {
  19.     unsigned int  a;
  20. while(1)
  21. {
  22.         for(a=0;a<8;a++)
  23.           {
  24.         smgw=tablew[a];
  25.         smgd=tabled[a];
  26.         delay(5);
  27.         }
  28.   

  29. }
  30. }
复制代码

Keil代码与Proteus仿真下载:
仿真.7z (36.06 KB, 下载次数: 19)





作者: 3花木城    时间: 2021-12-22 20:52
实物请在位选加三极管,




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