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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機溫度傳感器和蜂鳴器程序結合問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:1007138 發表于 2022-2-27 20:50 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如果要時時檢測溫度到達一個零界點,傳出來的溫度本來就有延時,而且還要繼續顯示溫度,都會影響蜂鳴器的頻率怎么解決void BeepRing() {
        if (Ds18b20ReadTemp() * 0.0625 > 25) {      //大于25°C就報警
                while (1) {
                        beep = ~beep;
                        delay(10);        
                        datapros(Ds18b20ReadTemp());
                        weixuan();
                        if (Ds18b20ReadTemp() * 0.0625 <= 25)   //不大于就推出
                                break;
                }
        }        
}


蜂鳴器部分代碼
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:161164 發表于 2022-2-27 21:34 | 只看該作者
給你一個思路
  1. bit Beep_On = 0;

  2. void 1微秒中斷() interrupt 1
  3. {
  4.         if(Beep_On)
  5.         {
  6.                 beep = ~beep;
  7.         }
  8.         flag1ms = 1;
  9. }

  10. void main()
  11. {int msCount = 0;
  12. float Temp = 0.0;
  13.         while(1)
  14.         {
  15.                 if(flag1ms)
  16.                 {
  17.                         flag1ms = 0;
  18.                         if(msCount++ >= 1000)
  19.                         {
  20.                                 msCount = 0;
  21.                                 Temp = Ds18b20ReadTemp() * 0.0625;
  22.                                 if(Temp > 25)
  23.                                 {
  24.                                         Beep_On = 1;
  25.                                 }
  26.                                 if(Temp <= 25)
  27.                                 {
  28.                                         Beep_On = 0;
  29.                                 }
  30.                         }
  31.                 }
  32.         }
  33. }
復制代碼
回復

使用道具 舉報

板凳
ID:213173 發表于 2022-2-27 21:49 | 只看該作者
給你一個示例參考,數碼管和LCD任選。 DS18B20溫度上下限報警數碼 1602顯示.rar (182.67 KB, 下載次數: 36)

回復

使用道具 舉報

地板
ID:123289 發表于 2022-2-28 15:14 | 只看該作者
音域:20-20K,蜂鳴器不超過10K,周期>100us。
你的CPU執行指令周期遠小于100us,如何就不夠了呢?
更何況,你使用的是長鳴蜂鳴器,觸發一下即能實現鳴叫的起、停,就更不會有沖突了。
一定是你把CPU的大量時間用于等待了!請修改一下程序。
回復

使用道具 舉報

5#
ID:1013437 發表于 2022-3-28 10:47 | 只看該作者
wulin 發表于 2022-2-27 21:49
給你一個示例參考,數碼管和LCD任選。

感謝感謝
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表