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

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

QQ登錄

只需一步,快速開始

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

ds18b20 溫度模塊串口顯示簡(jiǎn)單代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
今天晚上沒事干編了一個(gè)極簡(jiǎn)的一個(gè)小程序,雖然簡(jiǎn)單但是還是很穩(wěn)定的,連接也很簡(jiǎn)單,用最小系統(tǒng)板p0.0口接上ds18b20模塊就可以了

#include <reg51.h>
#include <intrins.h>
#include <stdio.h>
#include "DS18B20.h"
#define OSC 11059200            //晶振頻率
#define BAUDRATE 9600    //波特率

void main(void)
{

       unsigned int i;
       unsigned char tmph,tmpl;
       Temp t;
       unsigned char strTemp[8];    //顯示到屏幕的溫度數(shù)據(jù)
                           //開背光
       TMOD = 0x21;                  //選擇方式2作為波特率發(fā)生
       SCON = 0x50;                   //串口方式1,允許中斷
       PCON |= 0x80;                  //SMOD=1
       TL1 = 256 -(OSC/12/16/BAUDRATE);
       TH1 = 256 -(OSC/12/16/BAUDRATE);
       TR1 = 1;                                  //啟動(dòng)定時(shí)器
       TI = 1;                                   //TI有效
//檢測(cè)DS18B20溫度傳感器是否存在并復(fù)位傳感器
       if(DSReset())
           printf("\r\Temp sensor ResetOK!");
       else  printf("\r\Temp Sensor Notready!");
          
    while(1){
       
          DSReset();                             //復(fù)位傳感器
          Delay(1);
          DSWriteByte(SkipROM);                  //跳讀 省時(shí)
          DSWriteByte(StartConvert);             //溫度轉(zhuǎn)換
          for(i=0;i<40000;i++);
          DSReset();
          Delay(1);
          DSWriteByte(SkipROM);
          DSWriteByte(ReadMemory);   //讀RAM程序
          tmpl = DSReadByte();
          tmph = DSReadByte();
          printf("\r\nTemperature code HI=%02bX,LO=%02bX ",tmph,tmpl);
          DSReadTemp(&t);
//準(zhǔn)備輸出到顯示屏的數(shù)據(jù)
        strTemp[0]=t.z/10+0x30;     //十位
        strTemp[1]=t.z%10+0x30;     //個(gè)位
        strTemp[2]='.';             //小數(shù)點(diǎn)
        strTemp[3]=t.x/1000+0x30;   //十分位
        strTemp[4]=(t.x/100)%10+0x30; //百分位
                strTemp[5]=(t.x/10)%10+0x30;//千分位
                strTemp[6]=t.x%10+0x30;            //萬分位
        strTemp[7]='C';
              if(t.z>=30)
              printf("\nWarning!!!Temperature= %d.%04d ",t.z,t.x) ;  //大于30度溫度警告
              else
        printf("\r\nTemperature = %d.%04d",t.z,t.x);

}
}

U%$`HK1Y@B98$CCYHITWL7K.png (80.25 KB, 下載次數(shù): 56)

串口助手顯示選9600波特率

串口助手顯示選9600波特率

IMG_20190924_230416.jpg (2.42 MB, 下載次數(shù): 46)

實(shí)物連接,其實(shí)就一根線

實(shí)物連接,其實(shí)就一根線

溫度串口顯示.zip

47 KB, 下載次數(shù): 65, 下載積分: 黑幣 -5

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:571427 發(fā)表于 2019-11-14 08:41 | 只看該作者
支持!
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表