<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于VHDL的嵌入式單總線(xiàn)控制器設計

基于VHDL的嵌入式單總線(xiàn)控制器設計

作者: 時(shí)間:2010-12-18 來(lái)源:網(wǎng)絡(luò ) 收藏

  是美國DALLAS公司生產(chǎn)的一種(1-wire)數字溫度傳感器,采用1-wire總線(xiàn)通信協(xié)議。具有獨特的通信方式以及較高的測量精度,從而獲得了廣泛應用。參考文獻[1]詳細介紹了的基本原理和通信時(shí)序,提出由單片機的I/O端口模擬時(shí)序來(lái)控制的方法[1]。參考文獻[2]更進(jìn)一步地將DS1820測量溫度的分辨率由0.5 ℃提高到了0.1 ℃。將DS1820應用于不同領(lǐng)域,同樣取得了較好的效果[3-5]。上述文獻在使用DS1820時(shí)均采用微處理器作為總線(xiàn)主機,利用微處理器的I/O端口,用軟件模擬單總線(xiàn)時(shí)序,實(shí)現與DS1820的通信。因為1-wire器件對總線(xiàn)時(shí)序要求嚴格,因此,為了保證與DS1820的可靠通信,微處理器需要采用關(guān)閉中斷的辦法,以防止操作時(shí)序被中斷服務(wù)所破壞。這種方法增加了軟件的設計難度,影響了系統的實(shí)時(shí)性[6]。

  作為電子設計主流硬件描述語(yǔ)言,采用了層次化設計方式,具有電路行為描述能力強、靈活、通用、運算速度快的特點(diǎn),能夠較容易地實(shí)現時(shí)序邏輯控制[7]。以數字溫度傳感器DS1820為例,設計一個(gè)基于的單總線(xiàn),實(shí)現與DS1820的通信。本文介紹的單總線(xiàn),有較強的可擴展性,可以連接多種單總線(xiàn)器件,且微處理器可以不用被迫關(guān)閉中斷,滿(mǎn)足實(shí)時(shí)性嚴格要求的應用。

  1 DS1820簡(jiǎn)介

  1.1 DS1820內部結構

  DS1820主要由4部分組成:64 bit光刻ROM、溫度敏感器件、高速暫存存儲器和溫度報警觸發(fā)器TH、TL。64 bit光刻ROM保存DS1820的唯一64 bit的ROM編碼。高速暫存存儲器包含9個(gè)連續的字節,存放測得的溫度(補碼)、TH和TL的拷貝、計數器余值和CRC校驗等數據,其結構如圖1所示。所有數據均以最低有效位在前的方式讀寫(xiě)。

DS1820內部結構

  DS1820可以采用寄生電源的方式供電,在信號線(xiàn)為高電平的時(shí)間周期內,把能量?jì)Υ嬖趦炔侩娙萜髦?,在信號線(xiàn)為低電平期間,由存儲在電容器內的電荷供電。DS1820工作時(shí)信號線(xiàn)須接4.7 kΩ的上拉電阻,以保證信號線(xiàn)有足夠的驅動(dòng)能力。

  1.2 DS1820時(shí)序及工作方式

  DS1820時(shí)序如圖2所示,時(shí)序波形的電平分為3種類(lèi)型:主機作用的高低電平、DS1820輸出的高低電平和由上拉電阻拉起的高電平(后2種情況主機釋放信號線(xiàn))。DS1820閑置時(shí)信號線(xiàn)應保持高電平。對DS1820的任何操作(讀、寫(xiě)、復位等)都是由主機對信號線(xiàn)由邏輯高電平拉至低電平開(kāi)始。

DS1820時(shí)序

  由時(shí)序圖可知,單總線(xiàn)的通信協(xié)議由6種信號類(lèi)別組成:復位脈沖、存在脈沖、寫(xiě)0、寫(xiě)1、讀0、讀1。所有這些信號除了存在脈沖之外,均由總線(xiàn)主機產(chǎn)生。

  主機通過(guò)單總線(xiàn)對DS1820的操作必須首先由ROM操作命令之一開(kāi)始?,F以單總線(xiàn)只掛接一個(gè)DS1820,讀取溫度數據為例,其工作過(guò)程如下:

  (1)主機產(chǎn)生復位脈沖,DS1820返回響應脈沖;

  (2)主機寫(xiě)入Skip ROM(CCH,跳過(guò)ROM)命令,該命令為5種ROM操作命令之一;

  (3)主機寫(xiě)入溫度轉換(44H)命令;

  (4)主機再次產(chǎn)生復位脈沖,DS1820返回響應脈沖;

  (5)主機寫(xiě)入Skip ROM(CCH,跳過(guò)ROM)命令;

  (6)主機寫(xiě)入讀暫存存儲器命令(BEH);

  (7)讀暫存存儲器的溫度數據。

  2 設計

  2.1 控制器結構

  控制器結構如圖3所示,控制器由4部分組成,即邏輯控制、單總線(xiàn)時(shí)序控制、數據緩存和計數器。邏輯控制部分用于實(shí)現與CPU的通信,D0~D7為8位雙向數據線(xiàn),EN為啟動(dòng)信號,下降沿有效。A1、A0為地址信號,其組合決定控制器的工作狀態(tài)。A1A0=00,控制器對DS1820執行復位操作;A1A0=01,控制器執行寫(xiě)入操作;A1A0=10,控制器執行讀出操作??刂破饔赏獠刻峁?00 kHz的時(shí)鐘信號CLK,產(chǎn)生5 μs的計數周期,控制器以5 μs為一個(gè)時(shí)間片形成DS1820的讀寫(xiě)時(shí)序。計數器的計數輸出值控制讀寫(xiě)周期。單總線(xiàn)時(shí)序控制部分的主要功能是產(chǎn)生單總線(xiàn)的讀寫(xiě)時(shí)序,并向DS1820輸出控制命令,讀出DS1820測得的數字溫度值及其他輸出信息。

控制器結構

  2.2 讀寫(xiě)時(shí)序的實(shí)現

  DS1820要求引腳驅動(dòng)必須是漏極開(kāi)路引腳,控制器用三態(tài)門(mén)與DS1820連接,如圖4所示。其中ctrl為三態(tài)門(mén)控制信號,當ctrl=0時(shí)輸出信號,ctrl=1時(shí)輸入信號??刂破鞑捎? μs作為基本計時(shí)單位,可以保證DS1820時(shí)序關(guān)系有一定的余地。

DS1820要求引腳驅動(dòng)必須是漏極開(kāi)路引腳

  寫(xiě)字節部分代碼:

  3 仿真波形

  控制器的VHDL程序在MAX+plusII平臺編譯通過(guò),并獲得了正確的復位、讀、寫(xiě)時(shí)序。圖5為寫(xiě)時(shí)序波形,寫(xiě)入77H字節。每次寫(xiě)入新的bit前,控制器將總線(xiàn)電平拉底10 μs。

寫(xiě)時(shí)序波形

  基于VHDL的嵌入式DS1820控制器,具有轉換速度快、精度高、通用性好等優(yōu)點(diǎn)。同時(shí),嵌入軟核的FPGA可以分擔許多微處理器的工作,降低系統對CPU實(shí)時(shí)性的要求,也降低了軟件開(kāi)發(fā)的難度。本文雖然是針對DS1820設計的控制器,但由于單總線(xiàn)通信協(xié)議的通用性,也可以用于其他單總線(xiàn)器件。



關(guān)鍵詞: 單總線(xiàn) DS1820 VHDL 控制器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>