亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

標(biāo)題: 單片機(jī)數(shù)碼管閃爍怎么解決 附程序電路圖 [打印本頁(yè)]

作者: 小灰灰、    時(shí)間: 2022-12-13 17:56
標(biāo)題: 單片機(jī)數(shù)碼管閃爍怎么解決 附程序電路圖
[attach]307230[/attach]

2.png (196.83 KB, 下載次數(shù): 117)

數(shù)碼管閃爍

數(shù)碼管閃爍

1.png (462.1 KB, 下載次數(shù): 116)

兩個(gè)這種類型的顯示函數(shù)

兩個(gè)這種類型的顯示函數(shù)

0.png (268.87 KB, 下載次數(shù): 126)

主函數(shù)

主函數(shù)

作者: 小灰灰、    時(shí)間: 2022-12-13 18:02
程序仿真后顯示兩個(gè)DS18B20的溫度,一直在切換,該怎么保持一段時(shí)間后再顯示下一個(gè)?主函數(shù)那里用了延時(shí)函數(shù)也沒(méi)用
作者: 小灰灰、    時(shí)間: 2022-12-13 18:06
就是這樣

1670925090421.gif (335.93 KB, 下載次數(shù): 113)

1670925090421.gif

作者: lkc8210    時(shí)間: 2022-12-13 23:15


作者: wulin    時(shí)間: 2022-12-14 09:53
動(dòng)態(tài)掃描數(shù)碼管顯示發(fā)生閃爍現(xiàn)象是因?yàn)閽呙桀l率過(guò)低,掃描頻率過(guò)低的原因是讀取DS18B20數(shù)據(jù)耗時(shí)過(guò)長(zhǎng)和顯示函數(shù)編寫缺陷所致。4位數(shù)碼管掃描周期不得大于20ms。使用長(zhǎng)時(shí)間的阻滯型延時(shí)會(huì)大大降低CPU工作效率。給你一個(gè)示例參考。 4位數(shù)碼管時(shí)鐘溫度表仿真.rar (332.16 KB, 下載次數(shù): 24)


作者: wpppmlah    時(shí)間: 2022-12-14 10:16
這個(gè)方法試一下::
雙擊數(shù)碼管,打開(kāi)數(shù)碼管的屬性,把觸發(fā)時(shí)間改一下.



作者: Longan.Wang    時(shí)間: 2022-12-14 11:35
動(dòng)態(tài)掃描應(yīng)該調(diào)快一點(diǎn)。
作者: Longan.Wang    時(shí)間: 2022-12-14 11:36
畢竟這是仿真,PC機(jī)的性能也會(huì)影響的。還是以實(shí)物為準(zhǔn)。
作者: 小灰灰、    時(shí)間: 2022-12-14 15:15
lkc8210 發(fā)表于 2022-12-13 23:15

我是在主函數(shù)加for循環(huán),也解決了
作者: 小灰灰、    時(shí)間: 2022-12-14 15:21
解決了,我是在主函數(shù)加了個(gè)for循環(huán)

NRW`Y$P@57VH_S1I7{8Z$2M.png (332.99 KB, 下載次數(shù): 47)

NRW`Y$P@57VH_S1I7{8Z$2M.png

51hei錄屏20221214151953.gif (358.5 KB, 下載次數(shù): 115)

51hei錄屏20221214151953.gif

作者: ldc2000    時(shí)間: 2022-12-17 03:31
wulin 發(fā)表于 2022-12-14 09:53
動(dòng)態(tài)掃描數(shù)碼管顯示發(fā)生閃爍現(xiàn)象是因?yàn)閽呙桀l率過(guò)低,掃描頻率過(guò)低的原因是讀取DS18B20數(shù)據(jù)耗時(shí)過(guò)長(zhǎng)和顯示 ...

大佬,下來(lái)后解壓不了呢,能重新發(fā)一下嗎
作者: laohu_zz    時(shí)間: 2022-12-27 18:15
顯示和功能處理分開(kāi),不要混淆一起,這樣比較好處理問(wèn)題
作者: 2(┯_┯)    時(shí)間: 2023-1-1 18:30
調(diào)整一下顯示時(shí)間,顯示與數(shù)據(jù)運(yùn)行區(qū)分開(kāi)來(lái)
                                                   
作者: 小灰灰、    時(shí)間: 2023-2-24 15:42
lkc8210 發(fā)表于 2022-12-13 23:15

大佬,為什么我用了你這個(gè)會(huì)報(bào)錯(cuò)?DS18B20.C(51): error C183: unmodifiable lvalue
  1. void Delay(int count)
  2. {
  3.         int i;
  4.         for(i=1;i<=count;i++);
  5. }
復(fù)制代碼

作者: lkc8210    時(shí)間: 2023-2-24 20:56
小灰灰、 發(fā)表于 2023-2-24 15:42
大佬,為什么我用了你這個(gè)會(huì)報(bào)錯(cuò)?DS18B20.C(51): error C183: unmodifiable lvalue

完全不一樣好不好
作者: 13423265909    時(shí)間: 2023-2-24 22:22
控制好程序執(zhí)行每一步的時(shí)間,一步步調(diào)DELAY也行,調(diào)到時(shí)序?qū)Φ臅r(shí)候一般就行
作者: 小灰灰、    時(shí)間: 2023-2-25 20:26
lkc8210 發(fā)表于 2023-2-24 20:56
完全不一樣好不好

這是 全部程序仿,就 照著大佬  你發(fā)的圖片修的  ,哪不對(duì) 了  ?

多路溫度報(bào)警 (2).zip

107.49 KB, 下載次數(shù): 5


作者: lkc8210    時(shí)間: 2023-2-26 11:04
小灰灰、 發(fā)表于 2023-2-25 20:26
這是 全部程序仿,就 照著大佬  你發(fā)的圖片修的  ,哪不對(duì) 了  ?

你的"Delay"是函數(shù)
我的"Delay"是變量
當(dāng)然不一樣
作者: 小灰灰、    時(shí)間: 2023-2-26 11:40
lkc8210 發(fā)表于 2023-2-26 11:04
你的"Delay"是函數(shù)
我的"Delay"是變量
當(dāng)然不一樣

那我該怎么寫?請(qǐng)大佬教教我
作者: angmall    時(shí)間: 2023-2-26 11:56
小灰灰、 發(fā)表于 2023-2-26 11:40
那我該怎么寫?請(qǐng)大佬教教我

給你改了

  1. /********************************************************************
  2. * 程序名;  基于DS18B20的測(cè)溫系統(tǒng)
  3. * 功  能: 實(shí)時(shí)測(cè)量溫度,超過(guò)上下限報(bào)警,報(bào)警溫度可手動(dòng)調(diào)整。K1是用來(lái)
  4. * 進(jìn)入上下限調(diào)節(jié)模式的,當(dāng)按一下K1進(jìn)入上限調(diào)節(jié)模式,再按一下進(jìn)入下限
  5. * 調(diào)節(jié)模式。在正常模式下,按一下K2進(jìn)入查看上限溫度模式,顯示1s左右自動(dòng)
  6. * 退出;按一下K3進(jìn)入查看下限溫度模式,顯示1s左右自動(dòng)退出;按一下K4消除
  7. * 按鍵音,再按一下啟動(dòng)按鍵音。在調(diào)節(jié)上下限溫度模式下,K2是實(shí)現(xiàn)加1功能,
  8. * K1是實(shí)現(xiàn)減1功能,K3是用來(lái)設(shè)定上下限溫度正負(fù)的。         
  9.                   
  10. *********************************************************************/
  11. #include<reg52.h>                                   //將AT89X52.h頭文件包含到主程序
  12. #include<intrins.h>                                   //將intrins.h頭文件包含到主程序(調(diào)用其中的_nop_()空操作函數(shù)延時(shí))
  13. #define uint unsigned int                      //變量類型宏定義,用uint表示無(wú)符號(hào)整形(16位)
  14. #define uchar unsigned char                   //變量類型宏定義,用uchar表示無(wú)符號(hào)字符型(8位)

  15. uchar max=0x00,min=0x00;                   //max是上限報(bào)警溫度,min是下限報(bào)警溫度

  16. bit   s=0;                                                   //s是調(diào)整上下限溫度時(shí)溫度閃爍的標(biāo)志位,s=0不顯示200ms,s=1顯示1s左右
  17. bit   s1=0;                                                   //s1標(biāo)志位用于上下限查看時(shí)的顯示
  18. void display1(uint z);                            //聲明display1()函數(shù)(display.h頭文件中的函數(shù),ds18b20.h要用應(yīng)先聲明)
  19. #include"ds18b20.h"                                   //將ds18b20.h頭文件包含到主程序
  20. #include"keyscan.h"                                   //將keyscan.h頭文件包含到主程序
  21. #include"display.h"                                   //將display.h頭文件包含到主程序


  22. /***********************主函數(shù)************************/
  23. void main()
  24. {
  25.          unsigned char z;
  26.          unsigned int Delay=0;
  27.          beer=1;                                           //關(guān)閉蜂鳴器
  28.          led=1;                                                   //關(guān)閉LED燈
  29.          timer1_init(0);                           //初始化定時(shí)器1(未啟動(dòng)定時(shí)器1)
  30.          get_temperature(1);                    //首次啟動(dòng)DS18B20獲取溫度(DS18B20上點(diǎn)后自動(dòng)將EEPROM中的上下限溫度復(fù)制到TH和TL寄存器)
  31.          get_temperature_1(1);
  32.          while(1)                                           //主循環(huán)
  33.          {         
  34.                                     //按鍵掃面函數(shù)
  35.                  
  36.                  keyscan();                                   //按鍵掃面函數(shù)
  37.                  if(Delay==0)
  38.                  {
  39.                  get_temperature(0);            //獲取溫度函數(shù)
  40.                  alarm();       
  41.                  }
  42.                  if(Delay==1000)
  43.                  {
  44.                  get_temperature_1(0);
  45.                  alarm_1();       
  46.                  }                  
  47.                  
  48.                  if(Delay++>=2000)Delay=0;
  49.                    display(temp,temp_d*0.625);//顯示函數(shù)
  50.          }
  51. }   
復(fù)制代碼

作者: 小灰灰、    時(shí)間: 2023-2-26 20:27
angmall 發(fā)表于 2023-2-26 11:56
給你改了

您好,我照您這樣改了之后確實(shí)可以連續(xù)報(bào)警了,但是一旦報(bào)警就停不下來(lái)了,溫度降下來(lái)了也還在報(bào)警是怎么回事?




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