• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于1一Wire總線的嵌入式測溫系統(tǒng)設(shè)計

    基于1一Wire總線的嵌入式測溫系統(tǒng)設(shè)計

    作者: 時間:2009-05-08 來源:網(wǎng)絡(luò) 收藏
    溫度作為一種基本的環(huán)境因素,直接影響著工業(yè)控制、化工、醫(yī)藥、航空航天等生產(chǎn)工藝過程。因此如何安全、可靠、快速地取得溫度值就顯得尤為重要。隨著計算機軟件、硬件技術(shù)及集成電路工業(yè)的迅速發(fā)展,各種溫度采集技術(shù)不斷出現(xiàn)。這里介紹一種基于DSl8820的1一系統(tǒng)設(shè)計。
    1一是美國Dallas公司的一項專有技術(shù)――單技術(shù)(1一 Bus Technology),該技術(shù)在理論上每條總線連接的1一Wire器件數(shù)量可達248。支,適用于單主機、多從設(shè)備的系統(tǒng)。它與其他串行通信方式最大的不同在于它采用單根信號線雙向傳輸數(shù)據(jù)。以其節(jié)省I/0口線資源,成本低廉,體積小,便于總線擴展和維護等優(yōu)點,在串行數(shù)據(jù)通信領(lǐng)域占有越來越重要的地位。
    1一Wire網(wǎng)絡(luò)構(gòu)成簡單,一般情況下只使用電源線、地線、信號線3條線,當使用寄電方式供電時只需電源/信號線和地線2根線。
    DSl8820是Dallas公司生產(chǎn)的一種簡便易用的數(shù)字式溫度傳感器。它體積小巧,溫度測量范圍廣(一55~+125℃),測量分辨率可選,分別為0.062 5 oC,0.125℃,0.25℃,0.5℃。

    1 主要器件結(jié)構(gòu)及工作原理
    1.1 DSl8820結(jié)構(gòu)及工作原理

    Dallas公司生產(chǎn)的DSl8820可編程單總線數(shù)據(jù)溫度傳感器共有3種封裝形式:8管腳SO封裝、8管腳μSOP封裝和3管腳TO一92封裝。該設(shè)計中為了節(jié)省空間采用3管腳的TO一92封裝,它的管腳排列圖和底視圖如圖1所示,其中GND為接地管腳,VDD為外部供電電源管腳,DQ為數(shù)據(jù)輸入/輸出管腳。

    本文引用地址:http://www.czjhyjcfj.com/article/195868.htm

    DSl8820內(nèi)部結(jié)構(gòu)如圖2所示,包括供電電路、64 b ROM、內(nèi)部存儲器和存儲器控制邏輯4部分。64 b ROM中存儲著每個DSl8820芯片獨有的64位ROM ID碼,這是系統(tǒng)用來識別DSl8820芯片的標志。其中最低8位是DSl8820的家族碼:28H。中間48位是每片DSl8820獨有的串行碼。最高8位是用前56位計算得到的循環(huán)冗余校驗碼。
    內(nèi)部存儲器由9。Byte SRAM和3 B E。PROM組成。SRAM中:ByteO和Bytel是溫度寄存器,用來存儲采集到的溫度值。Byte0的內(nèi)容是溫度的低8位,Bytel是溫度的高8位。。Byte2和Byte3為高低溫警報寄存器。Byte4為配置寄存器,用來設(shè)置器件溫度采集精度。這3個字節(jié)中的值可以拷貝到E。PROM中,保證掉電后數(shù)據(jù)不會丟失,重新上電后E。PROM中的值將自動重載人SRAM中。Byte5,Byte6,Byte7保留為內(nèi)部使用。Byte8存儲CRC碼。
    DSl8820有2種供電方式:寄電方式和外部供電方式。寄電方式非常適用于需要遠程溫度測量和空間受限的場合。當工作于這種方式時,管腳3必須接地??偩€處于高電平時DSl8820通過DQ管腳從1一Wire網(wǎng)絡(luò)上竊取能量并存儲一部分電荷到寄電電容中,總線處于低電平時釋放寄電電容中的電荷給DSl8820供電。在寄電方式中寄電電容中存儲的電荷能滿足DSl8820大部分操作的要求,但是當執(zhí)行溫度轉(zhuǎn)換和數(shù)據(jù)拷貝命令時操作電流提高到1.5 mA,這將導(dǎo)致內(nèi)部弱上拉電阻上產(chǎn)生不可接受的壓降,同時這個電流也高于寄電電容能夠提供的電流,所以必須外接強上拉電路以滿足這一類命令的要求。當處于外部供電方式下時則不需要外接強上拉電路,直接通過管腳3從外部供電。

    在溫度超過100℃條件時,處于寄電方式下的DSl8B20可能不能保證正常通信,所以在某些特殊場合下使用外部供電方式比寄電方式更加可靠。DSl8820是一種可編程的基于1一Wire總線標準的數(shù)字式溫度傳感器,可以通過SRAM中的配置寄存器來選擇測量分辨率,其上電默認值為12位精度,對應(yīng)分辨率為0.062 5℃。其他可選擇的精度包括11位、 10位和9位,對應(yīng)的分辨率分別為O.125℃,O.25℃, O.5℃。DSl8820上電后處于空閑狀態(tài),可通過微處理器發(fā)送轉(zhuǎn)換命令44H來啟動1次溫度測量和A/D轉(zhuǎn)換,并將結(jié)果存儲在溫度寄存器中,此后DSl8820返回空閑狀態(tài)。如果Dsl8820處于外部供電模式,微處理器可以發(fā)送“讀時隙”來查看溫度采集轉(zhuǎn)換過程是否完畢,如果結(jié)束則應(yīng)答為1,沒結(jié)束則應(yīng)答為O。如果 DSl8820處于寄電方式下則不能使用該功能。DSl8820的溫度數(shù)據(jù)值是以攝氏度為單位的。
    1.2 DS2480B介紹及工作原理
    1一Wire通信協(xié)議可以通過微處理器上的一個I/O 引腳實現(xiàn),但是要創(chuàng)建可靠的1一Wire網(wǎng)絡(luò),必須提供正確的時序和適當?shù)妮敵鲭妷簲[率,如果1一Wire主機發(fā)送的時序不正確會導(dǎo)致與1一Wire從器件之間的通信間斷或完全失敗,并限制網(wǎng)絡(luò)的長度。DS2480B是從串行接口到1一Wire網(wǎng)絡(luò)協(xié)議轉(zhuǎn)換的橋接器。使用這個橋接器和UART連接就能產(chǎn)生嚴格定時和電壓擺率控制的1一Wire波形,并能減輕主機產(chǎn)生1一Wire時序信號和對1一Wire總線進行采樣的負擔。Ds2480B 接收指令與數(shù)據(jù),執(zhí)行1一Wire操作,并將結(jié)果返回至主機。圖3為1一Wire復(fù)位操作、寫1/讀數(shù)據(jù)操作、寫 0操作的時序圖,這3種操作是1一Wire操作中必須具備的基本操作,幾乎所有的其他1一Wire操作都可以由這3種操作構(gòu)成。由于該設(shè)計工作在Flexible模式下,以下提供的參數(shù)都是Flexible模式下適用的參數(shù)。

    linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

    上一頁 1 2 3 下一頁

    關(guān)鍵詞: Wire 總線 嵌入式 測溫

    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 湛江市| 永靖县| 苍山县| 广昌县| 吉林省| 富平县| 山丹县| 祁连县| 高邑县| 双辽市| 长兴县| 庆云县| 靖边县| 大方县| 普洱| 瑞金市| 七台河市| 富平县| 长子县| 丽江市| 宁强县| 庆元县| 桑日县| 祁阳县| 两当县| 赤壁市| 曲松县| 孝感市| 洪江市| 屏南县| 潼关县| 武川县| 正安县| 阳原县| 金门县| 江北区| 朝阳市| 伊宁市| 南靖县| 敖汉旗| 汉源县|