基于單總線(xiàn)數(shù)字溫度計(jì)DSl8B20實(shí)現(xiàn)分布式測(cè)控系統(tǒng)的設(shè)計(jì)
出處:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用 發(fā)布于:2020-04-01 16:05:17
單總線(xiàn)技術(shù)是美國(guó)Dallas半導(dǎo)體公司近年推出的新技術(shù)。它將地址線(xiàn)、數(shù)據(jù)線(xiàn)、控制線(xiàn)合為1根信號(hào)線(xiàn),允許在這根信號(hào)線(xiàn)上掛接數(shù)百個(gè)單總線(xiàn)器件芯片?;趩慰偩€(xiàn)的每個(gè)芯片內(nèi)部均有1個(gè)出廠(chǎng)前被光刻好的64位ROM序列號(hào),它可以看作是該芯片的地址序列碼。開(kāi)始8位是產(chǎn)品類(lèi)型標(biāo)號(hào),如DSl8B20為28H,DS2450為20H等;接著的48位是該芯片自身的序列號(hào),用以保證在同類(lèi)芯片中的性;8位是前面56位的循環(huán)冗余校驗(yàn)碼,以確保數(shù)據(jù)傳輸?shù)目煽啃?。光刻ROM的作用是使每個(gè)“單總線(xiàn)”器件的地址都各不相同,這是定位和尋址器件實(shí)現(xiàn)單總線(xiàn)測(cè)控功能的前提條件,并以此為依據(jù)實(shí)現(xiàn)1根總線(xiàn)上掛接多個(gè)“單總線(xiàn)”芯片。芯片內(nèi)部集成有收發(fā)控制電路和電源存儲(chǔ)電路。與微處理器的接口非常簡(jiǎn)單,可節(jié)省大量的引線(xiàn)和邏輯電路。芯片的耗電量很小,從總線(xiàn)上“偷”一點(diǎn)電(空閑時(shí)幾μW,工作時(shí)幾mW)存儲(chǔ)在片內(nèi)的電容中就可正常工作,一般不用另附電源??少F的是這些芯片在檢測(cè)點(diǎn)已把被測(cè)信號(hào)數(shù)字化了,因此在單總線(xiàn)上傳送的是數(shù)字信號(hào),這使得系統(tǒng)的抗干擾性能好、可靠性高、傳輸距離遠(yuǎn)。
1、 DS2480B主要特性
◇ 串口UART/RS232至單總線(xiàn)通信協(xié)議的轉(zhuǎn)接橋,可直接連到UART和5V RS232系統(tǒng)中, 支持Dallas全系列單總線(xiàn)器件,如數(shù)字溫度傳感器DS18B20、A/D轉(zhuǎn)換器DS2450等;
◇ 將主機(jī)從單總線(xiàn)時(shí)序控制中解脫出來(lái),提供規(guī)范的、靈活的和強(qiáng)驅(qū)動(dòng)的單總線(xiàn)定時(shí);
◇ 支持標(biāo)準(zhǔn)UART通信,支持9.6(默認(rèn))、 19.2、57.6和115.2 kbps速率;
◇ 具有較強(qiáng)的總線(xiàn)驅(qū)動(dòng)能力,通信距離可達(dá)300 m;
◇ 可編程下拉擺率控制和有源上拉,工作范圍 5 V,-40 ~ +85 ℃,8引腳SOIC封裝。
2、 引腳說(shuō)明及原理框圖
DS2480B為8腳貼片式封裝,如圖1所示。引腳功能如表1所列。
3 、DS2480B與RS232的接口技術(shù)
電路應(yīng)用了串口“竊電”技術(shù),不用外加電源,同時(shí)有DS9502對(duì)單總線(xiàn)提供靜電保護(hù),如圖3所示。
4 、基于DS2480B的單總線(xiàn)農(nóng)業(yè)溫室分布式測(cè)控系統(tǒng)設(shè)計(jì)
4.1 器件介紹
溫度信號(hào)的檢測(cè)選用單總線(xiàn)數(shù)字溫度計(jì)DSl8B20。它利用溫敏振蕩器的頻率隨溫度變化的關(guān)系,通過(guò)對(duì)振蕩周期的計(jì)數(shù)來(lái)實(shí)現(xiàn)溫度測(cè)量。DSl8B20采用3引腳TO-92小體積封裝形式;溫度測(cè)量范圍為 -55~+125 ℃,可編程為9~12位 A/D轉(zhuǎn)換,測(cè)溫分辨率可達(dá) 0.0625 ℃,典型轉(zhuǎn)換速度200 ms/次;被測(cè)溫度用符號(hào)擴(kuò)展的16位二進(jìn)制補(bǔ)碼數(shù)字量方式串行輸出;內(nèi)部非揮發(fā)的溫度報(bào)警觸發(fā)器可由用戶(hù)設(shè)置高、低限報(bào)警值。
濕度信號(hào)、二氧化碳濃度等信號(hào)的檢測(cè),先由相應(yīng)的傳感器和信號(hào)調(diào)理電路將其轉(zhuǎn)換成電壓信號(hào),然后掛接到DS2450上。DS2450是單總線(xiàn)4通道逐次逼近式A/D轉(zhuǎn)換器,其輸入電壓范圍、轉(zhuǎn)換位數(shù)(2~6位)、報(bào)警門(mén)限電壓等均可編程;每個(gè)通道有各自的存儲(chǔ)器以存儲(chǔ)電壓范圍設(shè)置、轉(zhuǎn)換結(jié)果、門(mén)限電壓等參數(shù);普通方式下串行通信速率達(dá)16.3 kbps;片內(nèi)16位循環(huán)冗余校驗(yàn)碼生成器可用于檢測(cè)通信的正確性;芯片正常工作時(shí)僅消耗2.5 mW功率,空閑情況下消耗25μW。
溫室控制系統(tǒng)的執(zhí)行機(jī)構(gòu)采用開(kāi)關(guān)量控制,選用可尋址的單總線(xiàn)控制開(kāi)關(guān)DS2405,由它送出1位0或1作為控制碼信息,先觸發(fā)光電耦合器,經(jīng)功率放大,驅(qū)動(dòng)繼電器、晶閘管或固態(tài)繼電器,控制通風(fēng)機(jī)、增濕器執(zhí)行機(jī)構(gòu)等的開(kāi)啟與關(guān)閉。
對(duì)于控制系統(tǒng)中所需要的數(shù)字輸入信號(hào),可選用DS2401。DS2401是符合單總線(xiàn)協(xié)議的ROM硅片。當(dāng)外圍電路接通DS2401后,通過(guò)條件搜索ROM命令,可以由計(jì)算機(jī)查詢(xún)到該輸入開(kāi)關(guān)量的狀態(tài)。
4.2 系統(tǒng)硬件組成框圖
系統(tǒng)硬件組成框圖如圖4所示。
4.3 軟件設(shè)計(jì)
為了保證數(shù)據(jù)可靠地傳輸,任一時(shí)刻單總線(xiàn)上只能有一個(gè)控制信號(hào)或數(shù)據(jù)。進(jìn)行數(shù)據(jù)通信時(shí)應(yīng)符合單總線(xiàn)協(xié)議,計(jì)算機(jī)對(duì)某一測(cè)控對(duì)象操作時(shí),一般有以下4個(gè)過(guò)程:① 初始化;② 傳送ROM命令;③ 傳送RAM命令;④ 數(shù)據(jù)交換。每次傳送的數(shù)據(jù)或命令是由一系列的時(shí)序信號(hào)組成,單總線(xiàn)上共有4種時(shí)序信號(hào):① 初始化信號(hào)(復(fù)位信號(hào));② 寫(xiě)0信號(hào);③ 寫(xiě)1信號(hào);④ 讀信號(hào)。軟件設(shè)計(jì)時(shí)要產(chǎn)生這四種時(shí)序信號(hào)波形。在單總線(xiàn)系統(tǒng)中,軟件設(shè)計(jì)是技術(shù)的關(guān)鍵。簡(jiǎn)捷的硬件設(shè)計(jì)是靠復(fù)雜的軟件來(lái)支撐的。
為了提高開(kāi)發(fā)效率,我們采用了Dallas公司授權(quán)的軟件開(kāi)發(fā)商(ASDB)提供的TMEX軟件開(kāi)發(fā)工具套件。在TMEX中已包含上述4種時(shí)序信號(hào)波形程序,編程時(shí)可直接調(diào)用。TMEX實(shí)際上是一些動(dòng)態(tài)鏈接庫(kù),包括IBFS32.DLL 、IB97U32.DLL 等文件,提供了對(duì)單總線(xiàn)芯片進(jìn)行訪(fǎng)問(wèn)和控制的函數(shù)。它支持Windows及DOS操作平臺(tái),可以采用C++、C++、Delphi、VB等計(jì)算機(jī)語(yǔ)言開(kāi)發(fā)用戶(hù)應(yīng)用程序;它還支持基于DS2480B的串口轉(zhuǎn)換器DS9097U、DS1410D并行轉(zhuǎn)換口。因此,可以設(shè)計(jì)精美、生動(dòng)的界面,既可以看到測(cè)控系統(tǒng)的總布局圖,又可查看某個(gè)測(cè)控現(xiàn)場(chǎng)的狀態(tài)數(shù)據(jù)和指示信號(hào),達(dá)到了現(xiàn)代化、自動(dòng)化的管理水平。
下面是用VB6.0開(kāi)發(fā)工具調(diào)用TMEX的API函數(shù),驅(qū)動(dòng)DS2480B進(jìn)行單總線(xiàn)通信的程序。
。..。..
Dim dmmy,search, result as integer
Dim Myhandle as long
State-buffer(15360) as byte
Private declare function TMExtendedStartSession lib “IBFS32.DLL”
?。˙yval portnum as integer Byval portType as integer, Byval reserved as any)
as long
Private declare function TMsetup lib “IBFS32.DLL”(Byval session_handle as long
,state_buffer as byte) as integer
Private declare function TMfirst lib “IBFS32.DLL” (Byval session_handle as long,
state_buffer as byte) as integer
Private declare function TMrom lib “IBFS32.DLL” (Byval session_handle as long,
state_buffer as byte, rom as integer) as integer
Private declare function TMendsession lib “IBFS32.DLL”
?。˙yval session_handle as long) as integer
。..。..
Myhandle= TMExtendedStartSession(1,5,vbNullstring)
‘檢查DS2480B是否準(zhǔn)備就緒,準(zhǔn)備建立會(huì)話(huà)注意,針
‘對(duì)DS2480B,該函數(shù)第2個(gè)參數(shù)必須為5
If (Myhandle》0) then ‘成功建立會(huì)話(huà)
Dmmy=TMSetup(Myhandle) ‘初始化
Search=TMFirst(Myhandle,state_buffer(0)) ‘查找設(shè)備,找
‘到第1個(gè)設(shè)備返回“1”
If (search=1) then
ROM[0] = 0; ‘表示讀數(shù)據(jù)
result = TMRom(session_handle, state_buffer(0), ROM(0));
if (result = 1) then
‘此時(shí)ROM中數(shù)據(jù)表示該設(shè)備的64位ROM序列號(hào),其中
‘ ROM[0]為器件類(lèi)型代碼,如ROM(0)=20H 表示找到
‘ DS2450, ROM[7] 存放的是 8 bit CRC
。..。.. ‘對(duì)找到的設(shè)備進(jìn)行相應(yīng)操作
。..。..
end if
dmmy= TMendsession(Myhandle) ‘結(jié)束會(huì)話(huà),釋放單總線(xiàn)
。..。..
結(jié)束語(yǔ)
基于DS2480B的單總線(xiàn)分布式測(cè)控系統(tǒng),具有節(jié)省I/O口線(xiàn)資源、結(jié)構(gòu)簡(jiǎn)單、開(kāi)發(fā)快捷、成本低廉、便于總線(xiàn)擴(kuò)展和維護(hù)等優(yōu)點(diǎn),因此有廣闊的應(yīng)用空間,具有較大的推廣價(jià)值。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫(kù)電子市場(chǎng)網(wǎng)”的所有作品,版權(quán)均屬于維庫(kù)電子市場(chǎng)網(wǎng),轉(zhuǎn)載請(qǐng)必須注明維庫(kù)電子市場(chǎng)網(wǎng),http://udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性,不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 簡(jiǎn)述計(jì)算機(jī)總線(xiàn)的分類(lèi)2025/9/4 17:12:23
- 深度剖析三進(jìn)線(xiàn)兩母聯(lián)供電系統(tǒng)設(shè)計(jì)方案2025/9/3 10:37:39
- 匯流排是什么匯流排好還是線(xiàn)接好2025/8/28 17:13:00
- 安森美 USB - C 電池充電器解決方案2025/8/28 15:45:10
- I2C 總線(xiàn)加上拉電阻的必要性2025/8/25 16:42:09
- 編碼器的工作原理及作用1
- 超強(qiáng)整理!PCB設(shè)計(jì)之電流與線(xiàn)寬的關(guān)系2
- 三星(SAMSUNG)貼片電容規(guī)格對(duì)照表3
- 電腦藍(lán)屏代碼大全4
- 國(guó)標(biāo)委發(fā)布《電動(dòng)汽車(chē)安全要求第3部分:人員觸電防護(hù)》第1號(hào)修改單5
- 通俗易懂談上拉電阻與下拉電阻6
- 繼電器的工作原理以及驅(qū)動(dòng)電路7
- 電容單位8
- 跟我學(xué)51單片機(jī)(三):?jiǎn)纹瑱C(jī)串口通信實(shí)例9
- 一種三極管開(kāi)關(guān)電路設(shè)計(jì)10
- 交交型變頻器和交直交型變頻器的區(qū)別
- 800G DR8 與其他 800G 光模塊的對(duì)比分析
- UPS電源中電流電壓傳感器的應(yīng)用
- 51單片機(jī)電平特性是什么
- AC/DC 與 DC/DC 轉(zhuǎn)換器的工作原理與應(yīng)用
- PCB板層設(shè)計(jì)與電磁兼容性的關(guān)系解析
- 接觸器式繼電器怎么區(qū)分 如何測(cè)量好壞
- 車(chē)規(guī)級(jí)MCU介紹及應(yīng)用場(chǎng)景
- 電容選型時(shí)如何選擇產(chǎn)品的電壓
- 線(xiàn)性穩(wěn)壓電源與開(kāi)關(guān)穩(wěn)壓電源:原理、特性及應(yīng)用