找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11042|回復(fù): 3
收起左側(cè)

單片機(jī)數(shù)碼管的動(dòng)態(tài)顯示仿真+代碼

[復(fù)制鏈接]
ID:439737 發(fā)表于 2018-12-5 09:54 | 顯示全部樓層 |閱讀模式
所謂動(dòng)態(tài)顯示,表面看著是同時(shí)顯示,其實(shí)是用數(shù)碼管的動(dòng)態(tài)顯示方式,即每一時(shí)刻只有一位位選線有效,其他的都不顯示。只要控制好每位數(shù)碼管點(diǎn)亮顯示的時(shí)間和間隔,就可造成同時(shí)顯示的現(xiàn)象,因此用盡量最低的延時(shí)函數(shù)約1ms。此處我用6個(gè)數(shù)碼管顯示一段自定義字符。

仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png

單片機(jī)源程序如下:
  1. #include <reg51.h>                                    
  2. #define uchar unsigned char                                         
  3. #define uint unsigned int                                         
  4. sbit DUAN=P2^6;
  5. sbit WEI=P2^7;
  6. uchar code led[6]=
  7. {0x05,0x06,0x07,0x08,0x09,0x0a};
  8. uchar code ledwei[6]=
  9. {0xfe,0xfd,0xfb,0xf7,0xef,0xdf};
  10. uchar code displaytab[16]=
  11. {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
  12. void  delay()                                                      
  13. {        uchar x,y;
  14.         for(x=2; x>0; x--)
  15.         for(y=250; y>0; y--);  }
  16. void  main()
  17. { uchar i;
  18. while(1)
  19. {
  20. for(i=0;i<6;i++)
  21. {
  22. P0=displaytab[led[i]];
  23. DUAN=1;
  24. DUAN=0;

  25. P0=ledwei[i];                                                        
  26. WEI=1;
  27. WEI=0;
  28.   
  29. delay();
  30. P0=0xff;
  31. WEI=1;
  32. WEI=0;
  33. }}        }
復(fù)制代碼

所有資料51hei提供下載:
數(shù)碼管動(dòng)態(tài)顯示.zip (28.96 KB, 下載次數(shù): 71)



評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:786836 發(fā)表于 2020-6-22 16:36 | 顯示全部樓層
怎么讓數(shù)碼管顯示六個(gè)數(shù)字
回復(fù)

使用道具 舉報(bào)

ID:786836 發(fā)表于 2020-6-22 16:40 | 顯示全部樓層
請(qǐng)問六位數(shù)碼管怎么修改程序讓它顯示六個(gè)數(shù)字
回復(fù)

使用道具 舉報(bào)

ID:786836 發(fā)表于 2020-6-22 19:10 | 顯示全部樓層
AD中好難找
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表