久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3678|回復: 3
打印 上一主題 下一主題
收起左側

單片機想實現兩位數碼管00-FF,兩個數字好像不能同時顯示似的,請大神幫忙看看程序

[復制鏈接]
跳轉到指定樓層
樓主
2黑幣
本人初學51單片機(用的慧靜電子HL-1 89C52開發板),只會數碼管0-9顯示,兩位,三位顯示不會玩,自己寫數碼管00-FF程序如下,D0-D7對應單片機P0^0-P0^7,這個程序功能是可以實現,但是數碼管變成先顯示10位,消失,再顯示個位,兩個數字好像不能同時顯示似的,希望高人指點,幫忙看看程序那里不對,謝謝!

1.png (84.52 KB, 下載次數: 85)

1.png

B.png (13.26 KB, 下載次數: 77)

B.png

最佳答案

查看完整內容

樓主這樣寫個位只能顯示10毫秒,十位顯示約1秒,視覺只能看的十位,個位微亮或看不到。改一下:
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:213173 發表于 2020-9-21 08:13 | 只看該作者
樓主這樣寫個位只能顯示10毫秒,十位顯示約1秒,視覺只能看的十位,個位微亮或看不到。改一下:
  1. #include<reg52.h>

  2. #define uint  unsigned int
  3. #define uchar unsigned char

  4. sbit dula=P2^6;
  5. sbit wela=P2^7;

  6. unsigned char code table[]={//共陰數碼管段碼"0~f-."
  7.                 0x3f,0x06,0x5b,0x4f,
  8.                 0x66,0x6d,0x7d,0x07,
  9.                 0x7f,0x6f,0x77,0x7c,
  10.                 0x39,0x5e,0x79,0x71,0x40,0x80};

  11. void delayms(uint xms)
  12. {
  13.         uint i,j;
  14.         for(i=xms;i>0;i--)
  15.                 for(j=110;j>0;j--);
  16. }

  17. void main()
  18. {
  19.         unsigned char i,j,k[2];
  20.         dula=0;
  21.         wela=0;
  22.         while(1)
  23.         {
  24.                 k[0]=table[j/16];
  25.                 k[1]=table[j%16];
  26.                 P0=0x00;dula=1;dula=0;//消隱
  27.                 if(i%2==0)// i=偶數顯示十位
  28.                 {
  29.                         P0=0xef;wela=1;wela=0;
  30.                         P0=k[0];dula=1;dula=0;               
  31.                 }
  32.                 else                // i=奇數數顯示個位
  33.                 {
  34.                         P0=0xdf;wela=1;wela=0;
  35.                         P0=k[1];dula=1;dula=0;               
  36.                 }
  37.                 i++;
  38.                 if(i>=200)//約1s
  39.                 {
  40.                         i=0;                       
  41.                         if(++j>=255)
  42.                                 j=0;
  43.                 }
  44.                 delayms(5);
  45.         }
  46. }

復制代碼
回復

使用道具 舉報

板凳
ID:818740 發表于 2020-9-21 21:36 | 只看該作者
本帖最后由 zhujiangzhang 于 2020-9-21 21:45 編輯
wulin 發表于 2020-9-21 14:51
樓主這樣寫個位只能顯示10毫秒,十位顯示約1秒,視覺只能看的十位,個位微亮或看不到。改一下:

太棒了,真可以實現了,大概思路是什么?
              
回復

使用道具 舉報

地板
ID:213173 發表于 2020-9-22 05:58 | 只看該作者
zhujiangzhang 發表于 2020-9-21 21:36
太棒了,真可以實現了,大概思路是什么?

所謂動態顯示就是逐位分時顯示。受delayms(5)限制,主循環周期被約束在約5ms,也就是前5ms顯示十位,后5ms顯示個位,如此反復。由于速度很塊,人眼視覺殘留效應感覺是同時顯示。如果顯示的位數多,每位顯示的時間要縮短,只要掌握 位數*每位顯示的時間<20ms,就不會感到閃爍。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人在线视频免费播放 | 亚洲精品一区中文字幕乱码 | 精品国产乱码久久久久久牛牛 | 99免费在线视频 | 丝袜美腿一区二区三区 | 国产一区二区三区免费观看在线 | 九九伊人sl水蜜桃色推荐 | 欧美激情视频一区二区三区免费 | 国产欧美一区二区三区日本久久久 | 成人午夜视频在线观看 | 午夜国产一级 | 久久国产高清 | 国产精品中文字幕在线 | 美女天堂在线 | 99pao成人国产永久免费视频 | 中文在线视频 | 色综久久 | 一级毛片成人免费看a | 91啪影院| 男人天堂99 | 综合网视频 | 欧美舔穴| 天堂久久一区 | 国产精品久久久久久 | 国产aa| 中文字幕 国产 | 欧美一区二区在线观看视频 | 91麻豆精品国产91久久久资源速度 | 欧美日韩成人在线观看 | 人人亚洲| 久久高清精品 | 99久久免费精品国产免费高清 | 精品一区二区在线观看 | 91视频在线看 | 国产久视频 | 久久久久久国产精品 | 亚洲精品一区二区三区蜜桃久 | 黄色一级大片在线免费看产 | 国产精品三级 | 精品久久久久久久久久 | 日日久 |