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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3523|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

單片機(jī)單只18B20測(cè)溫程序(使用Float處理數(shù)據(jù))

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:110653 發(fā)表于 2016-3-29 01:11 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式


DS18B20是一種很常用的數(shù)字溫度傳感器,溫度檢測(cè)范圍是-55~+125度,手冊(cè) 說(shuō)明在-10~+85度范圍內(nèi)檢測(cè)誤差為±0.5度,作者在自己的產(chǎn)品中隨機(jī)抽樣驗(yàn)證 了幾只傳感器,在-25度誤差0.1度,+25度與+50度誤差小于0.1度,可見(jiàn)這種傳感 器實(shí)際精度是很高的,傳感器引腳如圖19-1所示,工作電壓范圍是3.0~5.5V,通 常使用+5V,電源接反或接錯(cuò)一般是不會(huì)損壞傳感器的,對(duì)于單只DS18B20的使用,我們按圖19-2連接即可。







電路和介紹詳見(jiàn):http://www.zg4o1577.cn/bbs/dpj-47286-1.html(在這貼附件中可下載完整的源碼壓縮包)
主程序如下(部分預(yù)覽):
  1. /****************《51單片機(jī)輕松入門-基于STC15W4K系列》配套例程 *************
  2. ★★★★★★★★★★★★★★★★★★★★★★★★
  3. 《51單片機(jī)輕松入門-基于STC15W4K系列》 一書已經(jīng)由北航出版社正式出版發(fā)行。
  4.   作者親手創(chuàng)作的與教材配套的51雙核實(shí)驗(yàn)板(2個(gè)MCU)對(duì)程序下載、調(diào)試、仿真方便,不需要外部
  5.   仿真器與編程器,這種設(shè)計(jì)方式徹底解決了系統(tǒng)中多個(gè)最高優(yōu)先級(jí)誰(shuí)也不能讓誰(shuí)的中斷競(jìng)爭(zhēng)問(wèn)題。
  6.   QQ群:STC51-STM32(3) :515624099 或 STC51-STM32(2):99794374。
  7.         驗(yàn)證信息:STC15單片機(jī)
  8.   郵箱:xgliyouquan@126.com
  9.   ★★★★★★★★★★★★★★★★★★★★★★★★*/

  10. //單只DS18B20的溫度檢測(cè),測(cè)溫范圍-55 —— +125度,1602液晶顯示。
  11. #include "STC15W4K.H"
  12. #include <stdio.h>             // sprintf函數(shù)需用
  13. #include "DS18b20.h"
  14. #include "myfun.h"
  15. #include "LCD1602.h"
  16. bit flag;                      // flag=0表示正溫,flag=1表示負(fù)溫。
  17. unsigned char str[10];                   // 最長(zhǎng)字符10字節(jié),比如:-123.4567/0
  18.         
  19. //****************溫度數(shù)據(jù)處理函數(shù)************************/
  20. void gettemp()                           // 讀取溫度值
  21. {                     
  22.         int temp;                           // 存放18B20中讀出的2字節(jié)原始數(shù)據(jù)
  23.         float Temperature;                                         // 存放最終溫度值
  24.         temp=DS18B20_ReadTemperature();         // 從18B20中讀取2字節(jié)原始溫度值
  25.         Temperature=temp*0.0625;
  26.         sprintf(str,"%0.6f",Temperature);         // 保留6位小數(shù)
  27. }
  28. void port_mode()            // 端口模式
  29. {
  30.         P0M1=0x00; P0M0=0x00;P1M1=0x00; P1M0=0x00;P2M1=0x00; P2M0=0x00;P3M1=0x00; P3M0=0x00;
  31.         P4M1=0x00; P4M0=0x00;P5M1=0x00; P5M0=0x00;P6M1=0x00; P6M0=0x00;P7M1=0x00; P7M0=0x00;
  32. }
  33. void main()
  34. {
  35.         unsigned char xPos,yPos;
  36.         unsigned char *s="Now temp is:";
  37.         port_mode();                      // 所有IO口設(shè)為準(zhǔn)雙向弱上拉方式。
  38.         xPos=0;                              // xPos表示水平右移字符數(shù)(0-15)
  39.         yPos=0;                              // yPos表示垂直下移字符數(shù)(0-1)
  40.         delay100ms();                 // 等待LCD1602上電時(shí)內(nèi)部復(fù)位
  41.         LCD1602_Init();
  42.         WriteString(xPos,yPos,s);          // X坐標(biāo)、Y坐標(biāo)、字符串,屏幕左上角為坐標(biāo)原點(diǎn)        
  43.         DS18B20_SetResolution(3);     // 設(shè)置DS18B20的分辨率為12位(默認(rèn)值,新器件可以不作任何設(shè)置)
  44.         while(1)
  45.         {
  46.                 gettemp();
  47.                 WriteString(0,1,str);
  48.                 SetCur(NoCur);                  //  有顯示無(wú)光標(biāo)
  49.         }
  50. }
復(fù)制代碼

mufun.c文件:
  1. #include "myfun.h"
  2. #include "string.h"
  3. /****************《51單片機(jī)輕松入門-基于STC15W4K系列》配套例程 *************
  4. ★★★★★★★★★★★★★★★★★★★★★★★★
  5. 《51單片機(jī)輕松入門-基于STC15W4K系列》 一書已經(jīng)由北航出版社正式出版發(fā)行。
  6.   作者親手創(chuàng)作的與教材配套的51雙核實(shí)驗(yàn)板(2個(gè)MCU)對(duì)程序下載、調(diào)試、仿真方便,不需要外部
  7.   仿真器與編程器,這種設(shè)計(jì)方式徹底解決了系統(tǒng)中多個(gè)最高優(yōu)先級(jí)誰(shuí)也不能讓誰(shuí)的中斷競(jìng)爭(zhēng)問(wèn)題。
  8.   QQ群:STC51-STM32(3) :515624099 或 STC51-STM32(2):99794374。
  9.         驗(yàn)證信息:STC15單片機(jī)
  10.   郵箱:xgliyouquan@126.com
  11.   ★★★★★★★★★★★★★★★★★★★★★★★★*/

  12. void delay2us(void)               // 22.118400MHz
  13. {
  14.         unsigned char i,j,k;
  15.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  16.         for(j=1;j>0;j--)        // 注意后面沒(méi)分號(hào)
  17.         for(k=5;k>0;k--);     
  18. }

  19. void delay4us(void)               // 22.118400MHz
  20. {
  21.         unsigned char i,j,k;
  22.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  23.         for(j=1;j>0;j--)        // 注意后面沒(méi)分號(hào)
  24.         for(k=16;k>0;k--);     
  25. }

  26. void delay60us(void)            // 22.118400MHz
  27. {
  28.         unsigned char i,j,k;
  29.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  30.         for(j=5;j>0;j--)        // 注意后面沒(méi)分號(hào)
  31.         for(k=64;k>0;k--);     
  32. }

  33. void delay75us(void)            // 22.118400MHz
  34. {
  35.         unsigned char i,j,k;
  36.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  37.         for(j=2;j>0;j--)        // 注意后面沒(méi)分號(hào)
  38.         for(k=204;k>0;k--);     
  39. }
  40. void delay500us(void)            // 22.118400MHz
  41. {
  42.         unsigned char i,j,k;
  43.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  44.         for(j=11;j>0;j--)       // 注意后面沒(méi)分號(hào)
  45.         for(k=249;k>0;k--);     
  46. }
  47. void delay720us(void)           // 22.118400MHz
  48. {
  49.         unsigned char i,j,k;
  50.         for(i=1;i>0;i--)        // 注意后面沒(méi)分號(hào)
  51.         for(j=16;j>0;j--)       // 注意后面沒(méi)分號(hào)
  52.         for(k=247;k>0;k--);     
  53. }
  54. void delay100ms(void)            // 22.1184MHz
  55. {
  56.         unsigned char i,j,k;
  57.         for(i=19;i>0;i--)              // 注意后面沒(méi)分號(hào)
  58.         for(j=223;j>0;j--)      // 注意后面沒(méi)分號(hào)
  59.         for(k=129;k>0;k--);   
  60. }

  61. void delay760ms(void)
  62. {
  63.         unsigned char i,j,k;
  64.         for(i=65;i>0;i--)      // 注意后面沒(méi)分號(hào)
  65.         for(j=252;j>0;j--)     // 注意后面沒(méi)分號(hào)
  66.         for(k=255;k>0;k--);   
  67. }
復(fù)制代碼



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

使用道具 舉報(bào)

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 91资源在线 | 国产精品精品视频一区二区三区 | 狠狠做六月爱婷婷综合aⅴ 国产精品视频网 | 一区二区中文 | 国产综合精品 | 在线日韩在线 | 91视频国产一区 | 久久99精品视频 | 国产精品久久久久久久免费大片 | 日韩不卡一区二区 | 最新免费视频 | 亚洲精品一区二区在线观看 | 欧美精品日韩精品国产精品 | 国产资源在线视频 | 黄色网址在线播放 | 人人叉 | 综合网中文字幕 | 欧美精品一区二区三区视频 | 狠狠干av| 亚洲a网| 天堂成人av | 日韩欧美三级 | 久久色视频| 国产黄色大片在线免费观看 | 国产一区二区黑人欧美xxxx | 亚洲欧洲日韩精品 中文字幕 | 麻豆久久久9性大片 | 精品国产91 | 福利网站导航 | 美女啪啪国产 | av日日操 | 久久午夜影院 | 国产a级黄色录像 | 精品在线一区二区三区 | 人人做人人澡人人爽欧美 | 在线国产小视频 | 国产天堂| www.国产| 国产综合精品 | 日韩一二区在线观看 | 91在线观看视频 |