精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

DS18B20 數(shù)字溫度計(jì)特點(diǎn)

科技綠洲 ? 來(lái)源:?jiǎn)纹瑱C(jī)實(shí)例設(shè)計(jì) ? 作者:?jiǎn)纹瑱C(jī)實(shí)例設(shè)計(jì) ? 2023-09-11 11:19 ? 次閱讀

一.DS18B20特點(diǎn)

DS18B20 數(shù)字溫度計(jì)提供12位(二進(jìn)制)溫度讀數(shù)的數(shù)字型傳感器。傳感器僅需要單總線(xiàn)接口與CPU連接,實(shí)現(xiàn)信號(hào)送入 DS18B20 或從 DS18B20 送出。傳感器內(nèi)部框圖如下:

圖片

DS18B20內(nèi)部框圖

  1. DS18B20的電源可以由數(shù)據(jù)線(xiàn)本身提供(如框圖所示),可不需要再接外部電源,因此從CPU到DS18B20僅需一條數(shù)據(jù)線(xiàn)和地線(xiàn)。
  2. 內(nèi)部的64位ROM 只讀存儲(chǔ)器,用于存放DS18B20 ID編碼,其前8位是單線(xiàn)系列編碼(DS18B20的編碼是19H),后面48位是芯片唯一的序列號(hào),最后8位是以上56位的CRC碼(冗余校驗(yàn))。數(shù)據(jù)在出產(chǎn)時(shí)廠(chǎng)家已設(shè)置好,用戶(hù)不可更改。
  3. RAM 數(shù)據(jù)暫存器,用于內(nèi)部計(jì)算和數(shù)據(jù)存取,數(shù)據(jù)在掉電后丟失,DS18B20共9個(gè)字節(jié)RAM,每個(gè)字節(jié)為8位。

圖片

DS18B20內(nèi)部RAM圖

第1、2個(gè)字節(jié)是溫度轉(zhuǎn)換后的數(shù)據(jù)值信息,第3、4個(gè)字節(jié)是用戶(hù)EEPROM(常用于溫度報(bào)警值儲(chǔ)存)的鏡像。在上電復(fù)位時(shí)其值將被刷新。第5個(gè)字節(jié)則是用戶(hù)第3個(gè)EEPROM的鏡像。第6、7、8個(gè)字節(jié)為計(jì)數(shù)寄存器,是為了讓用戶(hù)得到更高的溫度分辨率而設(shè)計(jì)的,同樣也是內(nèi)部溫度轉(zhuǎn)換、計(jì)算的暫存單元。第9個(gè)字節(jié)為前8個(gè)字節(jié)的CRC碼。EEPROM 非易失性記憶體,用于存放長(zhǎng)期需要保存的數(shù)據(jù),上下限溫度報(bào)警值和校驗(yàn)數(shù)據(jù),DS18B20共3位EEPROM,并在RAM都存在鏡像,以方便用戶(hù)操作。

二.DS18B20連接圖

DS18B20電源連接方式有兩種,可通過(guò)數(shù)據(jù)線(xiàn)供電或者電源引腳直接供電;此外,無(wú)論哪種連接方式,數(shù)據(jù)線(xiàn)都需要外置4.7k的上拉電阻

圖片

數(shù)據(jù)線(xiàn)供電的連接方式

圖片

外部電源供電的連接方式

三.DS18B20控制時(shí)序分析

1.復(fù)位時(shí)序

時(shí)序見(jiàn)圖,主機(jī)總線(xiàn)發(fā)送一復(fù)位脈沖(最短為 480us,最長(zhǎng)960us的低電平信號(hào));接著主機(jī)將總線(xiàn)拉到高電平,釋放總線(xiàn)并進(jìn)入引腳接收狀態(tài);DS18B20 在檢測(cè)到總線(xiàn)的上升沿之后等待15-60us,接著DS18B20發(fā)出存在脈沖(低電平持續(xù) 60-240 us) 。主機(jī)總線(xiàn)檢測(cè)到低電平時(shí)間在140us內(nèi),則檢測(cè)到DS18B20的應(yīng)答。

圖片

//復(fù)位DS18B20
void DS18B20_Rst(void)    
{                 
  DS18B20_IO_OUT(); //SET IO OUTPUT
  DS18B20_DQ_OUT=0; //拉低DQ
  delay_us(750);    //拉低750us
  DS18B20_DQ_OUT=1; //DQ=1
  delay_us(15);     //15US
}


//等待DS18B20的回應(yīng)
//返回1:未檢測(cè)到DS18B20的存在
//返回0:存在
u8 DS18B20_Check(void)     
{   
  u8 retry=0;
  DS18B20_IO_IN();//SET PA0 INPUT  
  while (DS18B20_DQ_IN&&retry< 200)
  {
    retry++;
    delay_us(1);
  };  
  if(retry >=200)return 1;
  else retry=0;
  while (!DS18B20_DQ_IN&&retry< 240)
  {
    retry++;
    delay_us(1);
  };
  if(retry >=240)return 1;     
  return 0;
}

2.寫(xiě)時(shí)序

當(dāng)主機(jī)總線(xiàn)從高拉至低電平時(shí)就產(chǎn)生寫(xiě)時(shí)間隙,見(jiàn)圖時(shí)序圖,從下降沿開(kāi)始15us之內(nèi)應(yīng)將所需寫(xiě)的位送到總線(xiàn)上,DS18B20在15-60us間對(duì)總線(xiàn)采樣,若低電平寫(xiě)入的位是0,若高電平,則寫(xiě)入的位是1,連續(xù)寫(xiě)入位數(shù)的間隙應(yīng)大于1us。

圖片

//寫(xiě)一個(gè)字節(jié)到DS18B20
//dat:要寫(xiě)入的字節(jié)
void DS18B20_Write_Byte(u8 dat)     
 {             
    u8 j;
    u8 testb;
    DS18B20_IO_OUT();//SET IO OUTPUT;
    for (j=1;j<=8;j++)
    {
        testb=dat&0x01;
        dat=dat >>1;
        if (testb)
        {
            DS18B20_DQ_OUT=0;// 寫(xiě)入1
            delay_us(2);                            
            DS18B20_DQ_OUT=1;
            delay_us(60);             
        }
        else
        {
            DS18B20_DQ_OUT=0;// 寫(xiě)入0
            delay_us(60);             
            DS18B20_DQ_OUT=1;
            delay_us(2);                          
        }
    }
}

3.讀時(shí)序

主機(jī)總線(xiàn)從高拉至低電平時(shí),總線(xiàn)只須保持低電平1us以上后,將總線(xiàn)拉高,產(chǎn)生讀時(shí)間隙,如圖:

圖片

讀時(shí)間在Trc后到15us內(nèi)有效,也就是說(shuō) t z 時(shí)刻前主機(jī)必須完成讀位,并在 Tinit后的 60us ~ 120 us內(nèi)釋放總線(xiàn)。主機(jī)引腳讀取總線(xiàn)狀態(tài),若低電平讀取的位是0,若高電平,則讀取的位是1,連續(xù)讀取位數(shù)的間隙應(yīng)大于1us。

圖片

//從DS18B20讀取一個(gè)位
//返回值:1/0
u8 DS18B20_Read_Bit(void)     // read one bit
{
    u8 data;
    DS18B20_IO_OUT();//SET IO OUTPUT
    DS18B20_DQ_OUT=0;
    delay_us(2);
    DS18B20_DQ_OUT=1;
    DS18B20_IO_IN();//SET IO INPUT
    delay_us(12);
    if(DS18B20_DQ_IN)data=1;
    else data=0;  
    delay_us(50);           
    return data;
}


//從DS18B20讀取一個(gè)字節(jié)
//返回值:讀到的數(shù)據(jù)
u8 DS18B20_Read_Byte(void)    // read one byte
{        
    u8 i,j,dat;
    dat=0;
    for (i=1;i<=8;i++)
    {
        j=DS18B20_Read_Bit();
        dat=(j< 7)|(dat >>1);
    }          
    return dat;
}

4.讀取DS18B20溫度值

DS18B20讀取溫度值步驟如下,其中單個(gè)傳感器無(wú)需匹配ROM,所以程序中跳過(guò)匹配ROM。

圖片

//從ds18b20得到溫度值
//精度:0.1C
//返回值:溫度值 (-550~1250)
short DS18B20_Get_Temp(void)
{
    u8 temp;
    u8 TL,TH;
    short tem;
    DS18B20_Start ();                    // ds1820 開(kāi)始轉(zhuǎn)換
    DS18B20_Rst();
    DS18B20_Check();  
    DS18B20_Write_Byte(0xcc);// 跳過(guò)匹配ROM
    DS18B20_Write_Byte(0xbe);// 轉(zhuǎn)換   
    TL=DS18B20_Read_Byte(); // LSB   
    TH=DS18B20_Read_Byte(); // MSB  
    if(TH >7)
    {
        TH=~TH;
        TL=~TL;
        temp=0;//溫度為負(fù)  
    }else temp=1;//溫度為正      
    tem=TH; //獲得高八位
    tem< <=8;    
    tem+=TL;//獲得底八位
    tem=(float)tem*0.625;//轉(zhuǎn)換     
    if(temp)return tem; //返回溫度值
    else return -tem;    
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 電源
    +關(guān)注

    關(guān)注

    184

    文章

    17213

    瀏覽量

    247807
  • 存儲(chǔ)器
    +關(guān)注

    關(guān)注

    38

    文章

    7366

    瀏覽量

    163104
  • 數(shù)據(jù)線(xiàn)

    關(guān)注

    8

    文章

    277

    瀏覽量

    37463
  • DS18B20
    +關(guān)注

    關(guān)注

    10

    文章

    774

    瀏覽量

    80483
  • 數(shù)字溫度計(jì)

    關(guān)注

    2

    文章

    108

    瀏覽量

    21652
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于DS18B20數(shù)字溫度計(jì)

    基于DS18B20數(shù)字溫度計(jì)
    發(fā)表于 04-12 22:07

    DS18B20數(shù)字溫度計(jì)相關(guān)資料分享

    DS18B20數(shù)字溫度計(jì)資料下載內(nèi)容主要介紹了:DS18B20基本知識(shí)DS18B20產(chǎn)品的特點(diǎn)
    發(fā)表于 04-14 06:02

    數(shù)字溫度計(jì)DS18B20的特性及應(yīng)用

    DS18B20是美國(guó)DALLAS公司生產(chǎn)的可完全替代DS1820的全新型單線(xiàn)數(shù)字溫度計(jì).文中介紹了DS18B20的性能結(jié)構(gòu)和與
    發(fā)表于 04-25 15:19 ?69次下載

    DS18B20數(shù)字溫度計(jì)使用原理及實(shí)驗(yàn)

    DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1-Wire,即單總線(xiàn)器件,具有線(xiàn)路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線(xiàn)路簡(jiǎn)單,在一根通信線(xiàn),可以?huà)旌芏噙@樣的
    發(fā)表于 01-08 11:51 ?389次下載

    基于MSP430單片機(jī)和DS18B20數(shù)字溫度計(jì)

    為了在工業(yè)生產(chǎn)及過(guò)程控制中準(zhǔn)確測(cè)量溫度,設(shè)計(jì)了一種基于低功耗MSP430單片機(jī)的數(shù)字溫度計(jì)。整個(gè)系統(tǒng)通過(guò)單片機(jī)MSP430F1121A控制DS18B20讀取
    發(fā)表于 11-22 16:14 ?269次下載

    DS18B20數(shù)字溫度計(jì)使用

    DS18B20數(shù)字溫度計(jì)使用 1.DS18B20基本知識(shí) DS18B20數(shù)字
    發(fā)表于 01-25 11:29 ?1519次閱讀
    <b class='flag-5'>DS18B20</b><b class='flag-5'>數(shù)字</b><b class='flag-5'>溫度計(jì)</b>使用

    基于DS18B20數(shù)字溫度計(jì)設(shè)計(jì)

    基于DS18B20數(shù)字溫度計(jì)設(shè)計(jì),供大家下載。
    發(fā)表于 12-21 18:26 ?24次下載

    DS18B20數(shù)字溫度計(jì)使用

    DS18B20數(shù)字溫度計(jì)使用。
    發(fā)表于 05-05 14:56 ?0次下載

    51單片機(jī)與DS18B20數(shù)字溫度計(jì)

    51單片機(jī)與DS18B20數(shù)字溫度計(jì)
    發(fā)表于 05-19 15:32 ?117次下載

    DS18B20數(shù)字溫度計(jì)使用

    學(xué)習(xí)單片機(jī)電路圖的很好的資料——DS18B20數(shù)字溫度計(jì)使用
    發(fā)表于 11-03 15:15 ?0次下載

    基于AT89S51的DS18B20數(shù)字溫度計(jì)使用

    DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1-Wire,即單總線(xiàn)器件,具有線(xiàn)路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線(xiàn)路簡(jiǎn)單,在一根通信線(xiàn),可以?huà)旌芏噙@樣的
    發(fā)表于 08-30 15:28 ?28次下載
    基于AT89S51的<b class='flag-5'>DS18B20</b><b class='flag-5'>數(shù)字</b><b class='flag-5'>溫度計(jì)</b>使用

    DS18B20數(shù)字溫度計(jì)的單片機(jī)接口應(yīng)用詳細(xì)說(shuō)明

    DS18B20數(shù)字溫度計(jì)是DALLAS公司生產(chǎn)的1-Wire,即單總線(xiàn)器件,具有線(xiàn)路簡(jiǎn)單,體積小的特點(diǎn)。因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線(xiàn)路簡(jiǎn)單,在一根通信線(xiàn),可以?huà)旌芏噙@樣的
    的頭像 發(fā)表于 05-05 14:53 ?9391次閱讀
    <b class='flag-5'>DS18B20</b><b class='flag-5'>數(shù)字</b><b class='flag-5'>溫度計(jì)</b>的單片機(jī)接口應(yīng)用詳細(xì)說(shuō)明

    ds18b20數(shù)字溫度計(jì)程序

    ds18b20數(shù)字溫度計(jì)程序
    發(fā)表于 03-11 15:29 ?12次下載

    DS18B20溫度傳感器的數(shù)字溫度計(jì)設(shè)計(jì)案例

    本設(shè)計(jì)采用的主控芯片是ATMEL公司的AT89S52單片機(jī),數(shù)字溫度傳感器是DALLAS公司的DS18B20。本設(shè)計(jì)用數(shù)字傳感器DS18B20
    發(fā)表于 05-09 16:02 ?53次下載

    DS18B20數(shù)字溫度計(jì)英文規(guī)格書(shū)

    電子發(fā)燒友網(wǎng)站提供《DS18B20數(shù)字溫度計(jì)英文規(guī)格書(shū).pdf》資料免費(fèi)下載
    發(fā)表于 09-18 10:59 ?0次下載