国产精品成人网站,日韩视频二区,亚洲成人手机电影,怡红院国产

產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱


儀表網(wǎng)>技術(shù)中心>應(yīng)用設(shè)計(jì)>正文

歡迎聯(lián)系我

有什么可以幫您? 在線咨詢

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

   2011年10月20日 17:02  
  溫度作為一種基本的環(huán)境因素,直接影響著工業(yè)控制、化工、醫(yī)藥、航空航天等生產(chǎn)工藝過程。因此如何安全、可靠、快速地取得溫度值就顯得尤為重要。隨著計(jì)算機(jī)軟件、硬件技術(shù)及集成電路工業(yè)的迅速發(fā)展,各種溫度采集技術(shù)不斷出現(xiàn)。這里介紹一種基于DSl8820的1一Wire總線的嵌入式測(cè)溫系統(tǒng)設(shè)計(jì)。
  
  1一Wire總線是美國Dallas公司的一項(xiàng)專有技術(shù)——單總線技術(shù)(1一WireBusTechnology),該技術(shù)在理論上每條總線連接的1一Wire器件數(shù)量可達(dá)248。支,適用于單主機(jī)、多從設(shè)備的系統(tǒng)。它與其他串行通信方式zui大的不同在于它采用單根信號(hào)線雙向傳輸數(shù)據(jù)。以其節(jié)省I/0口線資源,成本低廉,體積小,便于總線擴(kuò)展和維護(hù)等優(yōu)點(diǎn),在串行數(shù)據(jù)通信領(lǐng)域占有越來越重要的地位。
  
  1一Wire網(wǎng)絡(luò)構(gòu)成簡(jiǎn)單,一般情況下只使用電源線、地線、信號(hào)線3條線,當(dāng)使用寄電方式供電時(shí)只需電源/信號(hào)線和地線2根線。
  
  DSl8820是Dallas公司生產(chǎn)的一種簡(jiǎn)便易用的數(shù)字式溫度傳感器。它體積小巧,溫度測(cè)量范圍廣(一55~+125℃),測(cè)量分辨率可選,分別為0.0625oC,0.125℃,0.25℃,0.5℃。
  
  1主要器件結(jié)構(gòu)及工作原理
  
  1.1DSl8820結(jié)構(gòu)及工作原理
  
  Dallas公司生產(chǎn)的DSl8820可編程單總線數(shù)據(jù)溫度傳感器共有3種封裝形式:8管腳SO封裝、8管腳μSOP封裝和3管腳TO一92封裝。該設(shè)計(jì)中為了節(jié)省空間采用3管腳的TO一92封裝,它的管腳排列圖和底視圖如圖1所示,其中GND為接地管腳,VDD為外部供電電源管腳,DQ為數(shù)據(jù)輸入/輸出管腳。
  
  DSl8820內(nèi)部結(jié)構(gòu)如圖2所示,包括供電電路、64bROM、內(nèi)部存儲(chǔ)器和存儲(chǔ)器控制邏輯4部分。64bROM中存儲(chǔ)著每個(gè)DSl8820芯片*的64位ROMID碼,這是系統(tǒng)用來識(shí)別DSl8820芯片的標(biāo)志。其中zui低8位是DSl8820的家族碼:28H。中間48位是每片DSl8820*的串行碼。zui高8位是用前56位計(jì)算得到的循環(huán)冗余校驗(yàn)碼。
  
  內(nèi)部存儲(chǔ)器由9。ByteSRAM和3BE。PROM組成。SRAM中:ByteO和By是溫度寄存器,用來存儲(chǔ)采集到的溫度值。Byte0的內(nèi)容是溫度的低8位,By是溫度的高8位。。Byte2和Byte3為高低溫警報(bào)寄存器。Byte4為配置寄存器,用來設(shè)置器件溫度采集精度。這3個(gè)字節(jié)中的值可以拷貝到E。PROM中,保證掉電后數(shù)據(jù)不會(huì)丟失,重新上電后E。PROM中的值將自動(dòng)重載人SRAM中。Byte5,Byte6,Byte7保留為內(nèi)部使用。Byte8存儲(chǔ)CRC碼。
  
  DSl8820有2種供電方式:寄電方式和外部供電方式。寄電方式非常適用于需要遠(yuǎn)程溫度測(cè)量和空間受限的場(chǎng)合。當(dāng)工作于這種方式時(shí),管腳3必須接地??偩€處于高電平時(shí)DSl8820通過DQ管腳從1一Wire網(wǎng)絡(luò)上竊取能量并存儲(chǔ)一部分電荷到寄電電容中,總線處于低電平時(shí)釋放寄電電容中的電荷給DSl8820供電。在寄電方式中寄電電容中存儲(chǔ)的電荷能滿足DSl8820大部分操作的要求,但是當(dāng)執(zhí)行溫度轉(zhuǎn)換和數(shù)據(jù)拷貝命令時(shí)操作電流提高到1.5mA,這將導(dǎo)致內(nèi)部弱上拉電阻上產(chǎn)生不可接受的壓降,同時(shí)這個(gè)電流也高于寄電電容能夠提供的電流,所以必須外接強(qiáng)上拉電路以滿足這一類命令的要求。當(dāng)處于外部供電方式下時(shí)則不需要外接強(qiáng)上拉電路,直接通過管腳3從外部供電。

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

  
  1.2.1復(fù)位/應(yīng)答時(shí)序
  
  DS2480B接到主機(jī)復(fù)位命令后將總線拉低512μs后釋放總線,等待2μs(短路/中斷采樣)后檢測(cè)總線上是否有短路或中斷信號(hào),如果沒有則等待8μs(應(yīng)答采樣)后檢測(cè)總線上是否有應(yīng)答脈沖,再等待512μs(延遲)后向主機(jī)發(fā)送命令應(yīng)答字。如果總線上有短路或中斷信號(hào)則等待4096μs后再次檢測(cè)總線。時(shí)序如圖3所示。
  
  1.2.2寫1/讀數(shù)據(jù)時(shí)序
  
  DS2480B在寫1/讀數(shù)據(jù)時(shí)序中先將總線拉低8~15μs(寫1低),3~10μs(數(shù)據(jù)采樣)數(shù)據(jù)采樣偏移后對(duì)總線采樣并讀從器件應(yīng)答。再經(jīng)過49μs(等待高)1/讀數(shù)據(jù)時(shí)序結(jié)束。時(shí)序圖如圖4所示。
  
  l.2.3寫0時(shí)序
  
  DS2480B的寫O時(shí)序中先將總線拉低57弘s(寫O低)然后釋放總線,3~10μs后寫0時(shí)序結(jié)束。如圖5所示。

  
  DS2480B可以被看作包含2個(gè)靜態(tài)和多個(gè)動(dòng)態(tài)的狀態(tài)機(jī)。上電后DS2480B自動(dòng)進(jìn)入兩個(gè)靜態(tài)之一的命令模式。此時(shí)主機(jī)應(yīng)向DS2480B發(fā)送1次復(fù)位命令,用來校準(zhǔn)DS2480B內(nèi)部的時(shí)序產(chǎn)生器,所有的1一Wire通信過程都必須以復(fù)位命令開始。此后DS2480B準(zhǔn)備好接收及執(zhí)行任何合法命令。在命令模式下微處理器可以改變1一Wire網(wǎng)絡(luò)的通信速度、供電方式、改變1一wire通信波形等。DS2480B從命令模式轉(zhuǎn)換到下一個(gè)靜態(tài)一數(shù)據(jù)模式后將從TXD管腳上收到的信息字節(jié)轉(zhuǎn)換成相應(yīng)的1一Wire通信波形并將從器件返回的應(yīng)答字節(jié)通過RXD管腳返回給微處理器。也就是說對(duì)1一wire從器件DSl8820的操作必須在數(shù)據(jù)模式下進(jìn)行。
  
  2系統(tǒng)設(shè)計(jì)
  
  系統(tǒng)設(shè)計(jì)包括硬件設(shè)計(jì)和軟件設(shè)計(jì)2部分。
  
  2.1系統(tǒng)硬件設(shè)計(jì)
  
  與DS2480B橋接器一起工作的UART應(yīng)支持8位字長、無奇偶校驗(yàn)、9600波特率(b/s)的通信方式。該系統(tǒng)采用Silicon公司生產(chǎn)的C8051F040作為主處理器,(;8051F040有2個(gè)uART串口,且滿足橋接器對(duì)UART的要求。溫度采集轉(zhuǎn)換芯片為Dallas公司生產(chǎn)的DSl8820。系統(tǒng)原理圖如圖6所示。

  
  其中從C8051F040的UART到DS2480B需用1片QS3245進(jìn)行3~5V的電平轉(zhuǎn)換。1一Wire總線上過多的噪聲會(huì)影響l—wire通信的正確性,為了濾除電路中的噪聲保護(hù)。DS2480B的1一Wire端口不受靜電損傷DS2480B的1一w管腳外接RC濾波電路。在本設(shè)計(jì)中只涉及到基本DS2480B操作,在需要進(jìn)行EPROM編程的設(shè)計(jì)中應(yīng)串接2個(gè)DS9503。
  
  2.2系統(tǒng)軟件設(shè)計(jì)
  
  給出的1一Wire總線驅(qū)動(dòng)程序是結(jié)合圖4所述電路,以C8051F040單片機(jī)為主控制器,使用內(nèi)部時(shí)鐘頻率24.5MHz編寫而成,其中包括DS24.80B復(fù)位子程序、DS2480B初始化子程序、總線復(fù)位子程序、溫度采集子程序、溫度值讀取子程序。C8051F040系統(tǒng)內(nèi)部有64KBFLASH存儲(chǔ)器可以用來存儲(chǔ)程序代碼。C代碼設(shè)計(jì)調(diào)試工具為Silicon公司提供的單片機(jī)集成開發(fā)環(huán)境。
  
  控制器上電后,對(duì)自身和DS2480B進(jìn)行初始化并與DS2480B取得同步。由于DS2480B中沒有晶振,它必須通過采樣主機(jī)發(fā)送的字節(jié)來調(diào)節(jié)自身的時(shí)基。主控制器在低于9600波特率條件下發(fā)送1次0字節(jié)可以產(chǎn)生1次復(fù)位信號(hào)。Ds2480B復(fù)位后所有參數(shù)恢復(fù)到缺省狀態(tài),在該設(shè)計(jì)中1一Wire網(wǎng)絡(luò)長度在10m之內(nèi),屬于小型長度,為了取得良好的性能,選擇在“flexi—blespeed”下進(jìn)行標(biāo)準(zhǔn)速度通信。對(duì)DS2480B復(fù)位和初始化是進(jìn)行正確1一Wire通信的前提,當(dāng)網(wǎng)絡(luò)中應(yīng)答數(shù)據(jù)包長度或格式不正確時(shí),也必須重新對(duì)DS2480B復(fù)位和初始化。
  
  所有的1一Wire操作都是從復(fù)位1一Wire總線開始的。每次采集溫度值和讀取溫度值操作前對(duì)總線進(jìn)行1次復(fù)位操作,同時(shí)檢測(cè)來自總線上的從器件的在線應(yīng)答脈沖。驅(qū)動(dòng)程序流程圖如圖7所示,部分程序代碼如下所示:




  
  3結(jié)語
  
  介紹一種1一Wire總線嵌入式測(cè)溫系統(tǒng),并給出了硬件電路及部分驅(qū)動(dòng)代碼。該系統(tǒng)具有設(shè)計(jì)簡(jiǎn)單,擴(kuò)展方便,占用主控制器資源少,軟件控制方便易于實(shí)現(xiàn)自動(dòng)化測(cè)試等特點(diǎn),并成功應(yīng)用于工程實(shí)踐中。在設(shè)計(jì)成本、費(fèi)用和復(fù)雜度方面相對(duì)于CAN,RS485等總線有著*的優(yōu)勢(shì),更適合小型工控系統(tǒng)使用,在今后的工業(yè)應(yīng)用領(lǐng)域中必將有著更為廣闊的空間。
  

免責(zé)聲明

  • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
  • 本網(wǎng)轉(zhuǎn)載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或和對(duì)其真實(shí)性負(fù)責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品第一來源,并自負(fù)版權(quán)等法律責(zé)任。
  • 如涉及作品內(nèi)容、版權(quán)等問題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
聯(lián)系我們

客服熱線: 15267989561

加盟熱線: 15267989561

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關(guān)注我們
  • 下載儀表站APP

  • Ybzhan手機(jī)版

  • Ybzhan公眾號(hào)

  • Ybzhan小程序

企業(yè)未開通此功能
詳詢客服 : 0571-87759942