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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

溫度報警器制作,附51單片機程序 仿真原理圖等資料

  [復制鏈接]
跳轉到指定樓層
樓主
ID:223453 發表于 2017-8-6 14:54 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
利用DS18B20溫度傳感器,檢測到外界的溫度,通過數碼管顯示出來,同時還可以設置最高值和最低值,當溫度超過此范圍,蜂鳴器報警。

實物圖:


背面:


Altium Designer畫的原理圖和PCB圖如下:(51hei附件中可下載工程文件)



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


數字溫度報警器說明書

一、    概述:
主要實現:實時溫度測量及顯示,超出溫度范圍聲光報警,上下限溫度可通過按鍵設定等功能。
本數字溫度報警器是基于51單片機及溫度傳感器DS18B20來設計的,溫度測量范圍0到99.9攝氏度,精度為0.1攝氏度,可見測量溫度的范圍廣,精度高的特點。可設置上下限報警溫度,默認上限報警溫度為38℃、默認下限報警溫度為5℃(通過程序可以更改上下限值)。報警值可設置范圍:最低上限報警值等于當前下限報警值,最高下限報警值等于當前上限報警值。將下限報警值調為0時為關閉下限報警功能。

二、    使用說明:
1、    開機:打開電源,機器進入初始化狀態,此時數碼管顯示 - - - -;片刻即開始顯示當前溫度。
2、    查看當前上下限溫度范圍:按下【S1】鍵(左邊鍵),數碼管閃爍顯示Hxxx,H表示上限溫度,再次按下【S1】鍵,數碼管閃爍顯示Lxxx, L表示下限溫度。再按【S1】鍵時退出設置,數碼管顯示當前實時溫度。
3、    重新設定上下限溫度范圍:按下【S1】鍵一次,數碼管閃爍顯示Hxxx時,此時是設定上限溫度,按【S3】鍵加溫度,【S2】鍵減溫度。再按下【S1】鍵一次,此時是設定下限溫度,數碼管閃爍顯示Lxxx時,按【S3】鍵加溫度,【S2】鍵減溫度。再按下【S1】鍵一次,設置成功并退出設置。
4、    報警:當檢測到當前實時溫度高于上限溫度值,或者低于下限溫度值,系統會自動發出報警,報警為紅燈一直閃爍且蜂鳴器隨著燈的頻率響。除非重設上下限溫度范圍,否則報警一直持續。

單片機源程序如下:
  1. #include <AT89X52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char           //宏定義
  4. #define SET  P3_1                            //定義調整鍵
  5. #define DEC  P3_2                            //定義減少鍵
  6. #define ADD  P3_3                            //定義增加鍵
  7. #define BEEP P3_6                            //定義蜂鳴器
  8. #define ALAM P1_2                                //定義燈光報警
  9. #define DQ   P3_7                             //定義DS18B20總線I/O        
  10. bit shanshuo_st;                            //閃爍間隔標志
  11. bit beep_st;                                     //蜂鳴器間隔標志
  12. sbit DIAN = P0^5;                        //小數點
  13. uchar x=0;                                      //計數器
  14. signed char m;                                     //溫度值全局變量
  15. uchar n;                                              //溫度值全局變量
  16. uchar set_st=0;                             //狀態標志
  17. signed char shangxian=38;                  //上限報警溫度,默認值為38
  18. signed char xiaxian=5;                   //下限報警溫度,默認值為38
  19. //uchar code  LEDData[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff};
  20. uchar code  LEDData[]={0x5F,0x44,0x9D,0xD5,0xC6,0xD3,0xDB,0x47,0xDF,0xD7,0xCF,0xDA,0x9B,0xDC,0x9B,0x8B};

  21. //============================================================================================
  22. //====================================DS18B20=================================================
  23. //============================================================================================
  24. /*****延時子程序*****/
  25. void Delay_DS18B20(int num)
  26. {
  27.   while(num--) ;
  28. }
  29. /*****初始化DS18B20*****/
  30. void Init_DS18B20(void)
  31. {
  32.   unsigned char x=0;
  33.   DQ = 1;         //DQ復位
  34.   Delay_DS18B20(8);    //稍做延時
  35.   DQ = 0;         //單片機將DQ拉低
  36.   Delay_DS18B20(80);   //精確延時,大于480us
  37.   DQ = 1;         //拉高總線
  38.   Delay_DS18B20(14);
  39.   x = DQ;           //稍做延時后,如果x=0則初始化成功,x=1則初始化失敗
  40.   Delay_DS18B20(20);
  41. }
  42. /*****讀一個字節*****/
  43. unsigned char ReadOneChar(void)
  44. {
  45.   unsigned char i=0;
  46.   unsigned char dat = 0;
  47.   for (i=8;i>0;i--)
  48.   {
  49.     DQ = 0;     // 給脈沖信號
  50.     dat>>=1;
  51.     DQ = 1;     // 給脈沖信號
  52.     if(DQ)
  53.     dat|=0x80;
  54.     Delay_DS18B20(4);
  55.   }
  56.   return(dat);
  57. }
  58. /*****寫一個字節*****/
  59. void WriteOneChar(unsigned char dat)
  60. {
  61.   unsigned char i=0;
  62.   for (i=8; i>0; i--)
  63.   {
  64.     DQ = 0;
  65.     DQ = dat&0x01;
  66.     Delay_DS18B20(5);
  67.     DQ = 1;
  68.     dat>>=1;
  69.   }
  70. }
  71. /*****讀取溫度*****/
  72. unsigned int ReadTemperature(void)
  73. {
  74.   unsigned char a=0;
  75.   unsigned char b=0;
  76.   unsigned int t=0;
  77.   float tt=0;
  78.   Init_DS18B20();
  79.   WriteOneChar(0xCC);  //跳過讀序號列號的操作
  80.   WriteOneChar(0x44);  //啟動溫度轉換
  81.   Init_DS18B20();
  82.   WriteOneChar(0xCC);  //跳過讀序號列號的操作
  83.   WriteOneChar(0xBE);  //讀取溫度寄存器
  84.   a=ReadOneChar();     //讀低8位
  85.   b=ReadOneChar();    //讀高8位
  86.   t=b;                                   //高8位轉移到t
  87.   t<<=8;                           //t數據左移8位
  88.   t=t|a;                           //將t和a按位或,得到一個16位的數
  89.   tt=t*0.0625;                   //將t乘以0.0625得到實際溫度值(溫度傳感器設置12位精度,最小分辨率是0.0625)
  90.   t= tt*10+0.5;     //放大10倍(將小數點后一位顯示出來)輸出并四舍五入
  91.   return(t);                   //返回溫度值

  92. ……………………

  93. …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼

Keil代碼與Proteus仿真文檔下載:
溫度傳感器.7z (1.09 MB, 下載次數: 1196)

評分

參與人數 2黑幣 +7 收起 理由
403715068 + 5
wangshun666666 + 2 很給力!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏43 分享淘帖 頂23 踩
回復

使用道具 舉報

沙發
ID:360951 發表于 2018-6-28 12:27 | 只看該作者
不錯哦
回復

使用道具 舉報

板凳
ID:347274 發表于 2018-6-29 19:32 | 只看該作者
下載了自己打開顯示器上也會出現51黑電子論壇的logo嗎?
回復

使用道具 舉報

地板
ID:1 發表于 2018-6-29 21:50 | 只看該作者
1379310 發表于 2018-6-29 19:32
下載了自己打開顯示器上也會出現51黑電子論壇的logo嗎?

當然不會,那只是圖片上面的水印啊
回復

使用道具 舉報

5#
ID:345999 發表于 2018-6-30 18:52 | 只看該作者
樓主你好~  我用了proteus仿真打開你的仿真的時候溫度報警氣沒到設置的上限的時候老是發出滴滴的聲音,是我的軟件有問題嗎??   還是我什么東西沒有調試好啊??  萌新求個助~~感謝大佬
回復

使用道具 舉報

6#
ID:347274 發表于 2018-6-30 20:04 | 只看該作者
admin 發表于 2018-6-29 21:50
當然不會,那只是圖片上面的水印啊

謝謝你
回復

使用道具 舉報

7#
ID:365113 發表于 2018-7-5 18:12 | 只看該作者
樓主你好,想問一下原理圖的封裝都是哪些呢?感謝!
回復

使用道具 舉報

8#
ID:394786 發表于 2018-9-6 22:43 | 只看該作者
感謝分享
回復

使用道具 舉報

9#
ID:397465 發表于 2018-9-14 16:34 來自手機 | 只看該作者
我有個問題!我在設計程序時候遇到和141錯誤代碼!請各位幫我就這一個問題我寫得uint   temperature   出現141
回復

使用道具 舉報

10#
ID:397465 發表于 2018-9-14 16:41 來自手機 | 只看該作者
xsxs99 發表于 2018-7-5 18:12
樓主你好,想問一下原理圖的封裝都是哪些呢?感謝!

請問你懂單片機編程不!我現在遇到個難題希望a幫我就這一問題 uint  temperature結果出現了141錯誤不曉得咋改!請幫我問問
回復

使用道具 舉報

11#
ID:398976 發表于 2018-9-17 16:17 | 只看該作者
有用的
回復

使用道具 舉報

12#
ID:358464 發表于 2018-9-21 13:38 | 只看該作者
太棒了!
回復

使用道具 舉報

13#
ID:397593 發表于 2018-10-17 19:27 | 只看該作者
good,辛苦
回復

使用道具 舉報

14#
ID:413430 發表于 2018-10-22 15:48 | 只看該作者
感謝分享
回復

使用道具 舉報

15#
ID:413474 發表于 2018-10-25 16:11 | 只看該作者
感謝樓主分享,很有用,資料非常齊全,很棒!!!
回復

使用道具 舉報

16#
ID:430537 發表于 2018-11-21 14:32 | 只看該作者
謝謝樓主分享
回復

使用道具 舉報

17#
ID:433266 發表于 2018-11-26 10:42 | 只看該作者
十分不錯,謝謝樓主分享
回復

使用道具 舉報

18#
ID:402417 發表于 2018-12-1 17:15 | 只看該作者
ak5689998 發表于 2018-6-30 18:52
樓主你好~  我用了proteus仿真打開你的仿真的時候溫度報警氣沒到設置的上限的時候老是發出滴滴的聲音,是我 ...

你好,請問能分享以下樓主的資料給我嗎,我的等級還不能看
回復

使用道具 舉報

19#
ID:441855 發表于 2018-12-13 13:55 | 只看該作者
學習學習下
回復

使用道具 舉報

20#
ID:441855 發表于 2018-12-13 13:55 | 只看該作者
學習了  很好的資料  謝謝樓主了
回復

使用道具 舉報

21#
ID:393925 發表于 2018-12-16 14:41 | 只看該作者
謝謝樓主分享,贊一個
回復

使用道具 舉報

22#
ID:447503 發表于 2018-12-16 21:19 | 只看該作者
非常感謝
回復

使用道具 舉報

23#
ID:478552 發表于 2019-2-21 10:12 | 只看該作者
很棒很給力
回復

使用道具 舉報

24#
ID:478552 發表于 2019-2-21 10:14 | 只看該作者
很棒很給力,牛逼
回復

使用道具 舉報

25#
ID:479894 發表于 2019-2-27 15:29 | 只看該作者
有Word形式程序嗎
回復

使用道具 舉報

26#
ID:538623 發表于 2019-5-21 16:24 來自手機 | 只看該作者
感謝大神
回復

使用道具 舉報

27#
ID:553183 發表于 2019-6-4 18:54 | 只看該作者
想問一下樓主和各位,上面的dat<<=1的作用是什么呀,沒懂,麻煩各位解答一下
回復

使用道具 舉報

28#
ID:570510 發表于 2019-6-24 09:39 | 只看該作者
很給力能發一下教程就更加完美
回復

使用道具 舉報

29#
ID:578823 發表于 2019-7-6 10:16 | 只看該作者
很棒棒的
回復

使用道具 舉報

30#
ID:578823 發表于 2019-7-6 12:28 | 只看該作者

非常棒棒喲
回復

使用道具 舉報

31#
ID:582643 發表于 2019-7-14 16:13 | 只看該作者
很棒,蟹蟹樓主
回復

使用道具 舉報

32#
ID:633372 發表于 2019-10-31 17:01 | 只看該作者
給力啊
回復

使用道具 舉報

33#
ID:633646 發表于 2019-11-3 15:40 | 只看該作者
想問一下這里電阻是多大的
回復

使用道具 舉報

34#
ID:633646 發表于 2019-11-3 15:48 | 只看該作者
想問一下樓主,這里面的電阻都有多大的,圖片看不清
還有原理圖封裝都是哪些
回復

使用道具 舉報

35#
ID:632952 發表于 2019-11-20 18:06 來自手機 | 只看該作者
請問可以給一下仿真的程序嗎
回復

使用道具 舉報

36#
ID:647786 發表于 2019-11-23 12:51 | 只看該作者
有元器件 封裝庫嗎
回復

使用道具 舉報

37#
ID:654211 發表于 2019-12-2 13:42 | 只看該作者
設計很完美啊!
回復

使用道具 舉報

38#
ID:669652 發表于 2019-12-21 11:45 | 只看該作者
感謝樓主分享,十分給力,很有用處
回復

使用道具 舉報

39#
ID:675981 發表于 2019-12-30 20:22 | 只看該作者
感謝樓主的無私奉獻,么么噠
回復

使用道具 舉報

40#
ID:675981 發表于 2019-12-30 20:23 | 只看該作者
感謝樓主無私奉獻
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 狠狠综合久久av一区二区小说 | 国产精品久久久久久久久免费软件 | 99福利视频导航 | 亚洲欧美一区二区三区国产精品 | 国产在线h | 亚洲精品视频在线观看免费 | 超碰97免费观看 | 欧美日韩在线视频一区 | 亚洲精品久久久久avwww潮水 | 狠狠ri| 欧美色综合一区二区三区 | 日韩在线视频播放 | 久久久久久久久蜜桃 | 国产精品久久久久久久7电影 | 欧美黑人又粗大 | 久久伊 | 国产99久久久国产精品 | av网站在线免费观看 | 日韩欧美亚洲 | 日韩高清一区 | 午夜免费视频 | 久久毛片| 国产高清在线视频 | 黄色香蕉视频在线观看 | 国产成人综合在线 | 国产一区二区在线播放 | 久久夜视频 | 久久国产精品视频 | 黄色免费网址大全 | 一区二区三区免费 | 黄色男女网站 | 日韩视频中文字幕 | 伊人网影院 | 天天干狠狠干 | 成人精品鲁一区一区二区 | 国产日韩欧美二区 | 国产二区精品视频 | 视频一区在线 | 国产成人免费视频网站视频社区 | 亚洲顶级毛片 | 日韩精品1区2区 |