當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]摘要:詳細(xì)介紹單總線(xiàn)溫度傳感器DSl8B20的工作原理、通信協(xié)議和使用方法;給出測(cè)溫程序流程,以及DSl8B20在Proteus中硬件仿真的具體實(shí)現(xiàn)方法,并對(duì)該仿真結(jié)果與實(shí)驗(yàn)結(jié)果進(jìn)行了比較。 關(guān)鍵詞:Proteus;DSl8B20;單總

摘要:詳細(xì)介紹單總線(xiàn)溫度傳感器DSl8B20的工作原理、通信協(xié)議和使用方法;給出測(cè)溫程序流程,以及DSl8B20在Proteus中硬件仿真的具體實(shí)現(xiàn)方法,并對(duì)該仿真結(jié)果與實(shí)驗(yàn)結(jié)果進(jìn)行了比較。
關(guān)鍵詞:Proteus;DSl8B20;單總線(xiàn);測(cè)溫

引言
    目前,微機(jī)與外設(shè)之間進(jìn)行數(shù)據(jù)的串行總線(xiàn)主要有I2C總線(xiàn)、SPI總線(xiàn)和SCI總線(xiàn)。其中,I2C總線(xiàn)以同步串行2線(xiàn)方式進(jìn)行通信(1條時(shí)鐘線(xiàn)和1條數(shù)據(jù)線(xiàn)),SPI總線(xiàn)以同步串行3線(xiàn)方式進(jìn)行通信(1條時(shí)鐘線(xiàn)、1條數(shù)據(jù)輸入線(xiàn)和1條數(shù)據(jù)輸出線(xiàn)),而SCI總線(xiàn)則是以異步方式進(jìn)行通信的(1條數(shù)據(jù)輸入線(xiàn)和1條數(shù)據(jù)輸出線(xiàn))。這些總線(xiàn)至少需要2條信號(hào)線(xiàn)及地線(xiàn)。Dallas公司推出的單總線(xiàn)技術(shù)用單根信號(hào)線(xiàn)及地線(xiàn),既傳輸時(shí)鐘又傳輸數(shù)據(jù),而且數(shù)據(jù)的傳輸時(shí)雙向的,具有線(xiàn)路簡(jiǎn)單、硬件開(kāi)銷(xiāo)少、成本低、便于總線(xiàn)擴(kuò)展和維護(hù)等優(yōu)點(diǎn)。
    DSl8B20是典型的單總線(xiàn)數(shù)字式溫度傳感器,工作電壓為3~5V,測(cè)量溫度范圍為-55~+125℃,可根據(jù)實(shí)際需要通過(guò)軟件設(shè)置選擇9~12位分辨率;用戶(hù)設(shè)置的報(bào)警溫度存儲(chǔ)在芯片內(nèi)部EEPROM中,可掉電保持;每個(gè)芯片都有全球唯一的編碼,用戶(hù)可以通過(guò)其特有的序列號(hào)查詢(xún)其溫度,因此理論上一條總線(xiàn)上可連接無(wú)數(shù)個(gè)該測(cè)溫元件。單總線(xiàn)通常要求外接一個(gè)約4.7 kΩ的上拉電阻,保證總線(xiàn)閑置時(shí)其狀態(tài)為高電平。
1 PrOteus中DSl8B20仿真圖的設(shè)計(jì)
1.1 Proteus簡(jiǎn)介
    Proteus是英國(guó)Labcenter Electronics公司研發(fā)的EDA工具軟件。它是能進(jìn)行模擬電路、數(shù)字電路、模/數(shù)混合電路、RS232動(dòng)態(tài)仿真、I2C調(diào)試器、SPI調(diào)試器、鍵盤(pán)和LCD、LED系統(tǒng)的設(shè)計(jì)與仿真的平臺(tái)。Proteus具備原理圖設(shè)計(jì)、電路分析與仿真、PCB設(shè)計(jì)功能,可以通過(guò)調(diào)入程序的編譯結(jié)果.hex或.cof文件來(lái)調(diào)試單片機(jī)程序,還可直接嵌入到Microchip公司的單片機(jī)調(diào)試軟件MPLABIDE中,進(jìn)行程序的調(diào)試和仿真。
    Proteus的特色是能實(shí)現(xiàn)單片機(jī)與外設(shè)的混合電路系統(tǒng)、軟件系統(tǒng)的設(shè)計(jì)和仿真。在仿真過(guò)程中,用戶(hù)可以用鼠標(biāo)單擊開(kāi)關(guān)、鍵盤(pán)、電位計(jì)、可調(diào)電阻等外設(shè)設(shè)備,使單片機(jī)系統(tǒng)根據(jù)輸入信號(hào)做出相應(yīng)的響應(yīng),并將響應(yīng)處理結(jié)果根據(jù)所編制的軟件在LCD、LED等顯示器件上顯示,整個(gè)過(guò)程與硬件仿真器調(diào)試過(guò)程相似。因此,在缺乏硬件的情況下,這是款非常實(shí)用的仿真軟件,其仿真的原理圖經(jīng)驗(yàn)證后可直接應(yīng)用到現(xiàn)實(shí)中。Proteus還提供虛擬示波器、邏輯分析儀、信號(hào)發(fā)生器和I2C、SPI調(diào)試器等多種虛擬終端,方便用戶(hù)仿真調(diào)試。
1.2 DSl8B20仿真的實(shí)現(xiàn)
    目前,國(guó)內(nèi)采用單片機(jī)作控制系統(tǒng)中的微處理器時(shí)多選擇.PIC、51系列或Freescale系列單片機(jī)。PIC單片機(jī)具有外圍電路簡(jiǎn)單、功耗低、外圍資源豐富等優(yōu)點(diǎn)。本系統(tǒng)選用PIC系列單片機(jī)PICl6F877A作為控制芯片。
    Proteus仿真圖設(shè)計(jì)的第一步就是拾取仿真所需要的元器件,單擊圖1所示界面預(yù)覽窗口下面的P按鈕,彈出Pick Devices(元器件拾取)對(duì)話(huà)框。然后,在Keywords文本框內(nèi)分別輸入DSl8820、LM041L(4行×16字符型LCD)、PICl6F877A、RES(電阻)。在檢索出來(lái)的結(jié)果中,選中所要的元器件并雙擊,該元器件就會(huì)出現(xiàn)在左側(cè)預(yù)覽窗口中。


    元器件拾取完畢后,關(guān)閉Pick Devices窗口回到主設(shè)計(jì)頁(yè)面。在左側(cè)預(yù)覽窗口中,選中元器件放置到合適的位置。然后,在最左側(cè)選中圖標(biāo)(terminals mode),分別選中POWER(電源)和GROUND(地),放置在合適的位置,并進(jìn)行連接。欲改變?cè)骷膮?shù),雙擊該元器件,然后在出現(xiàn)的屬性框中直接修改即可。本文所設(shè)計(jì)的由12個(gè)DSl8B20組成的測(cè)溫網(wǎng)絡(luò)如圖2所示。

[!--empirenews.page--]

2 單總線(xiàn)器件DSl8B20的使用
2.1 DSl8B20的工作原理
    在該測(cè)溫系統(tǒng)中,單片機(jī)PICl6F877A作為主機(jī),DSl8B20溫度傳感器作為從機(jī)。由于DSl8B20采用的是主從結(jié)構(gòu),只有主機(jī)呼叫從機(jī)時(shí),從機(jī)才能應(yīng)答。因此,訪(fǎng)問(wèn)器件時(shí)必須嚴(yán)格遵循單總線(xiàn)命令序列,以及初始化、ROM、命令功能的命令。如果序列混亂,則器件不響應(yīng)主機(jī)。從機(jī)主機(jī)和從機(jī)之間的通信通過(guò)3個(gè)步驟完成:初始化器件;識(shí)別器件;交換數(shù)據(jù)。
    單總線(xiàn)器件采用嚴(yán)格的通信協(xié)議來(lái)保證數(shù)據(jù)的完整性。通信協(xié)議包括:復(fù)位脈沖、應(yīng)答脈沖、寫(xiě)0、寫(xiě)1、讀O和讀1。所有這些信號(hào)都是以先低位、后高位的方式發(fā)送的。
    (1)復(fù)位脈沖和應(yīng)答脈沖
    復(fù)位脈沖和應(yīng)答脈沖即為初始化過(guò)程,所有的通信都是以初始化開(kāi)始的。首先主機(jī)要拉低總線(xiàn)至少480μs,接著釋放總線(xiàn)并持續(xù)15~60μs,然后進(jìn)入接收狀態(tài),檢測(cè)總線(xiàn)DQ的電平。若DQ為低電平,則表示從機(jī)已就緒,可以發(fā)送ROM命令。由于C語(yǔ)言簡(jiǎn)潔緊湊、靈活方便且可
移植性好,因此本文程序采用C語(yǔ)言來(lái)完成。相應(yīng)的初始化程序如下:


    其中,變量dq用來(lái)判斷DSl8B20是否有返回的存在脈沖,為O即有返回脈沖,表明復(fù)位成功,可跳出循環(huán);DQ表示總線(xiàn)的電平,當(dāng)總線(xiàn)為高電平時(shí)DQ為1,否則為0;DQ_IO用來(lái)表示DQ所連的單片機(jī)I/O口的狀態(tài),若該I/O口對(duì)單片機(jī)是作為輸入使用則DQ_IO為1,作為輸出使用則DQ_IO為O。
    (2)寫(xiě)操作時(shí)序
    無(wú)論是命令還是數(shù)據(jù),所有的寫(xiě)操作都是以字節(jié)為單位的,全部以先低位、后高位的方式傳輸?shù)?。位?xiě)入過(guò)程是這樣的:主機(jī)將總線(xiàn)拉低15μs,然后根據(jù)要發(fā)的那位數(shù)據(jù)的電平來(lái)決定接下來(lái)總線(xiàn)的電平。若數(shù)據(jù)待發(fā)位為低電平,則主機(jī)須將DQ置為低電平并保持1 5~45μs;若數(shù)據(jù)待發(fā)位為高電平,則主機(jī)需將DQ置為高電平且保持15~45μs。發(fā)送1位數(shù)據(jù)的時(shí)間(從總線(xiàn)拉低開(kāi)始到發(fā)送結(jié)束)必須控制在60~20μ s。
    位與位之間要有一個(gè)大于1μs的高電平時(shí)間間隙隔開(kāi)。一個(gè)字節(jié)的數(shù)據(jù)寫(xiě)入結(jié)束后需要將總線(xiàn)釋放,以確保之后操作的正確進(jìn)行。
    (3)讀操作時(shí)序
    所有數(shù)據(jù)的讀取是以字節(jié)為單位,以先低位、后高位的方式進(jìn)行傳輸?shù)摹N蛔x取的過(guò)程如下:首先需要主機(jī)將總線(xiàn)拉低1~15μs,然后釋放總線(xiàn),對(duì)總線(xiàn)的電平進(jìn)行判斷。若總線(xiàn)為低電平,說(shuō)明帶讀取數(shù)據(jù)位為0;若總線(xiàn)為高電平,則表明帶讀取數(shù)據(jù)位為1。讀取1位數(shù)據(jù)的時(shí)間(從總線(xiàn)拉低開(kāi)始到將總線(xiàn)置高準(zhǔn)備下一位數(shù)據(jù))必須大于60 μs。同樣,位與位之間須有一個(gè)大于1 μs的高電平時(shí)間間隙隔開(kāi)。一個(gè)字節(jié)的數(shù)據(jù)讀取結(jié)束后需要將總線(xiàn)釋放,以確保操作的正確進(jìn)行。由于DSl8B20的溫度采用9~12位的分辨率,因此一個(gè)溫度數(shù)據(jù)需要讀取2字節(jié)的溫度數(shù)據(jù)。2字節(jié)的數(shù)據(jù)讀取結(jié)束后將總線(xiàn)釋放,以便接下來(lái)數(shù)據(jù)的正確傳輸。[!--empirenews.page--]
2.2 讀溫度主要使用的命令
    讀溫度主要使用的命令如表1所列。

3 測(cè)溫的實(shí)現(xiàn)及在PrOteus中的仿真
3.1 測(cè)溫的實(shí)現(xiàn)
    整個(gè)讀取溫度步驟具體如下:


        
    若還要讀其他芯片的溫度,則從②~⑤開(kāi)始循環(huán)。其中,reset()為調(diào)用初始化子程序;send_com()為機(jī)向從機(jī)發(fā)送1字節(jié)的子程序;send_num()為主機(jī)向從機(jī)發(fā)送64位器件序列號(hào)的子程序;delay()為延時(shí)子程序;check()為主機(jī)判斷所有從機(jī)的溫度是否全部讀取完畢的子程序。
3.2 Proteus仿真
    在Proteus中使用多個(gè)DSl8B20時(shí),必須改變器件的屬性,使仿真中每個(gè)器件的序列號(hào)各不相同。具體作法是:右擊DSl8B20,選中Edit Properties選項(xiàng),在其中改變ROM Serial Numbet的值;還可改變Granularity的數(shù)值,即改變每次調(diào)整溫度的額度。在Proteus中,可以人為改變3個(gè)字節(jié)的器件序列號(hào)。要想得到全部8個(gè)字節(jié),一個(gè)簡(jiǎn)單的方法就是每一次總線(xiàn)上只連接一個(gè)器件,利用Ox33讀器件序列號(hào)的命令在程序中得到完整的器件序列號(hào)。具體的程序如下所示:

[!--empirenews.page--]

    其中,send_com()為主機(jī)向從機(jī)發(fā)送一個(gè)字節(jié)的子程序,read_dat()為主機(jī)讀取從機(jī)一個(gè)字節(jié)的子程序。例如,將器件序列號(hào)改為B8C530,在MPLAB IDE中的Watch窗口中可直接觀察到該器件的完整的器件序列號(hào),如圖3所示。


    本系統(tǒng)中共使用12個(gè)DSl8B20,序列號(hào)為B8C530~B8C53B。通過(guò)上述的方法可得到所有器件的序列號(hào),然后組成一個(gè)數(shù)組,在讀取溫度程序中就可直接使用。數(shù)組如下所示:


    在MPLAB IDE中,使用Proteus VSM仿真模式。根據(jù)上述讀取溫度程序的過(guò)程,編寫(xiě)讀取溫度的程序,經(jīng)編譯、運(yùn)行,即可得到仿真結(jié)果。

結(jié)語(yǔ)
    經(jīng)驗(yàn)證,在Proteus中的仿真結(jié)果和實(shí)際實(shí)驗(yàn)結(jié)果完全一致。這充分說(shuō)明該軟件仿真結(jié)果真實(shí)性很高,在缺乏硬件的情況下,這是款非常實(shí)用的仿真軟件。其仿真的原理圖和結(jié)果經(jīng)實(shí)驗(yàn)驗(yàn)證后可直接應(yīng)用到實(shí)際項(xiàng)目中。
    單總線(xiàn)數(shù)字式溫度傳感器DSl8B20具有體積小、動(dòng)態(tài)范圍寬、測(cè)量精度高等特點(diǎn),分辨率可根據(jù)實(shí)際的需求進(jìn)行相應(yīng)的設(shè)置。單總線(xiàn)器件連接簡(jiǎn)單,且具有很強(qiáng)的擴(kuò)展性,可以組建多點(diǎn)的溫度檢測(cè)網(wǎng)絡(luò),在電子產(chǎn)品各部件特別是半導(dǎo)體器件的溫度測(cè)量領(lǐng)域具有良好的應(yīng)用前景。
 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉