欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機多位數碼管高位為零時不顯示的程序該如何寫?求思路 [打印本頁]

作者: franklee    時間: 2020-12-9 09:24
標題: 單片機多位數碼管高位為零時不顯示的程序該如何寫?求思路
各位大神,請問計數器程序,高位為零時不要顯示的程序怎么寫?謝謝!

作者: 壓著我頭發啦    時間: 2020-12-9 15:46
大概參考下,16為
  1. void main()
  2. {        while(1)
  3.         {
  4.         keyscan();
  5.         if(num<10)
  6.         {
  7.                 a0=num;b0=16;c0=16;d0=16;e0=16;f0=16;
  8.         }
  9.         else
  10.         {
  11.                 if(num<100)
  12.                 {a0=num/10;b0=num%10;c0=16;d0=16;e0=16;f0=16;}
  13.                 else
  14.                 {
  15.                         if(num<1000)
  16.                         {a0=num/100;b0=num%100/10;c0=num%10;d0=16;e0=16;f0=16;}
  17.                         else
  18.                         {
  19.                                 if(num<10000)
  20.                                 {a0=num/1000;b0=num%1000/100;c0=num%100/10;d0=num%10;e0=16;f0=16;}
  21.                                 else
  22.                                 {
  23.                                         if(num<100000)
  24.                                         {a0=num/10000;b0=num%10000/1000;c0=num%1000/100;d0=num%100/10;e0=num%10;f0=16;}
  25.                                         else
  26.                                         {
  27.                                                 if(num<1000000)
  28.                                                 {a0=num/100000;b0=num%100000/10000;c0=num%10000/1000;d0=num%1000/100;e0=num%100/10;f0=num%10;}
  29.                                         }
  30.                                 }
  31.                         }
  32.                 }
  33.         }
  34.         display(a0,b0,c0,d0,e0,f0);
  35.         }
  36. }
復制代碼
全滅
作者: 壓著我頭發啦    時間: 2020-12-9 15:47
  1. unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
  2.                         0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
復制代碼

作者: 名字不是重點    時間: 2020-12-9 16:15
以下是偽代碼。希望你能看懂

顯示函數()
{

//置首位0標志
//第一位消隱
//送第一位位碼
//讀第一位段值
// 如要 段值 =0 且首位0標志置位 則 跳過第一位
// 如要 段值 不等于0 則
   //讀第一位段碼
   //送第一位段碼
   //清首位0標志
//第二位消隱
.
.
.
.
}
作者: suncat0504    時間: 2020-12-9 23:54
通常不是在向顯示緩沖單元賦值的時候處理的嗎?你要顯示的數據,個位在最后,十位在前。在設置的時候,先清除所有位為不顯示的段位碼。然后從個位依次向十位、百位賦值。顯示程序里,是不需要做任何判斷的,直接把各個位置的筆段數碼數據送出去,逐個顯示就行。編程的一個原則是,代碼越簡單越好。搞的太復雜,不容易懂,維護起來也麻煩啊。
作者: wulin    時間: 2020-12-10 11:22
給你一個示例,有你需要的多位數碼管高位為零不顯示的代碼。
ds18b20溫度報警4位數碼管顯示 仿真.zip (153.36 KB, 下載次數: 27)






歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1