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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

51單片機溫度測控程序設計

[復制鏈接]
跳轉到指定樓層
樓主
單片機設計分享
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機源程序如下:
  1. /********************************************************************
  2. * 程序名;  基于DS18B20的測溫系統
  3. * 功  能: 實時測量溫度,超過上下限報警,報警溫度可手動調整。K1是用來
  4. * 進入上下限調節模式的,當按一下K1進入上限調節模式,再按一下進入下限
  5. * 調節模式。在正常模式下,按一下K2進入查看上限溫度模式,顯示1s左右自動
  6. * 退出;按一下K3進入查看下限溫度模式,顯示1s左右自動退出;按一下K4消除
  7. * 按鍵音,再按一下啟動按鍵音。在調節上下限溫度模式下,K2是實現加1功能,
  8. * K1是實現減1功能,K3是用來設定上下限溫度正負的。         
  9. * 編程時間:                  
  10. *********************************************************************/
  11. #include<AT89X52.h>                                   //將AT89X52.h頭文件包含到主程序
  12. #include<intrins.h>                                   //將intrins.h頭文件包含到主程序(調用其中的_nop_()空操作函數延時)
  13. #define uint unsigned int                      //變量類型宏定義,用uint表示無符號整形(16位)
  14. #define uchar unsigned char                   //變量類型宏定義,用uchar表示無符號字符型(8位)

  15. uchar max=0x00,min=0x00;                   //max是上限報警溫度,min是下限報警溫度

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

  22. /***********************主函數************************/
  23. void main()
  24. {
  25.          beer=1;                                           //關閉蜂鳴器
  26.          led=1;                                                   //關閉LED燈
  27.          timer1_init(0);                           //初始化定時器1(未啟動定時器1)
  28.          get_temperature(1);                    //首次啟動DS18B20獲取溫度(DS18B20上點后自動將EEPROM中的上下限溫度復制到TH和TL寄存器)
  29.          while(1)                                           //主循環
  30.          {         
  31.                  keyscan();                                   //按鍵掃面函數
  32.                  get_temperature(0);           //獲取溫度函數
  33.                  keyscan();                                   //按鍵掃面函數
  34.                  display(temp,temp_d*0.625);//顯示函數
  35.                  alarm();                                           //報警函數
  36.                  keyscan();                                     //按鍵掃面函數
  37.          }
  38. }   
復制代碼

所有資料51hei提供下載:
基于51單片機及DS18B20溫度傳感器的數字溫度計設計.zip (802.46 KB, 下載次數: 40)


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

使用道具 舉報

沙發
ID:682512 發表于 2020-1-8 14:54 | 只看該作者
樓主,請問有匯編版本的嗎
回復

使用道具 舉報

板凳
ID:888341 發表于 2021-4-1 22:17 | 只看該作者
怎么測不出來溫度 ?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

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