《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 嵌入式單總線控制器設計
嵌入式單總線控制器設計
張 武
摘要: 以數字式溫度傳感器DS1820為例,介紹了單總線器件的工作原理,詳細分析了單總線器件的通信時序。微處理器與單總線器件通信時必須關閉中斷,造成系統實時性差。對此提出了采用VHDL語言設計嵌入式單總線控制器的方法。給出了基于VHDL的嵌入式單總線控制器的軟硬件設計及仿真波形。該控制器的功能已在MAX+plusII平臺上仿真實現,能夠產生DS1820的通信時序。
Abstract:
Key words :

    摘 要:數字式溫度傳感器DS1820為例,介紹了單總線器件的工作原理,詳細分析了單總線器件的通信時序。微處理器與單總線器件通信時必須關閉中斷,造成系統實時性差。對此提出了采用VHDL語言設計嵌入式單總線控制器的方法。給出了基于VHDL的嵌入式單總線控制器的軟硬件設計及仿真波形。該控制器的功能已在MAX+plusII平臺上仿真實現,能夠產生DS1820的通信時序。

    關鍵詞:單總線;DS1820;VHDL;控制器

     DS1820是美國DALLAS公司生產的一種單總線(1-wire)數字溫度傳感器,采用1-wire總線通信協議。具有獨特的單總線通信方式以及較高的測量精度,從而獲得了廣泛應用。參考文獻[1]詳細介紹了DS1820的基本原理和通信時序,提出由單片機的I/O端口模擬單總線時序來控制DS1820的方法[1]。參考文獻[2]更進一步地將DS1820測量溫度的分辨率由0.5 ℃提高到了0.1 ℃。將DS1820應用于不同領域,同樣取得了較好的效果[3-5]。上述文獻在使用DS1820時均采用微處理器作為總線主機,利用微處理器的I/O端口,用軟件模擬單總線時序,實現與DS1820的通信。因為1-wire器件對總線時序要求嚴格,因此,為了保證與DS1820的可靠通信,微處理器需要采用關閉中斷的辦法,以防止操作時序被中斷服務所破壞。這種方法增加了軟件的設計難度,影響了系統的實時性[6]
    VHDL作為電子設計主流硬件描述語言,采用了層次化設計方式,具有電路行為描述能力強、靈活、通用、運算速度快的特點,能夠較容易地實現時序邏輯控制[7]。以數字溫度傳感器DS1820為例,設計一個基于VHDL的單總線控制器,實現與DS1820的通信。本文介紹的單總線控制器,有較強的可擴展性,可以連接多種單總線器件,且微處理器可以不用被迫關閉中斷,滿足實時性嚴格要求的應用。
1 DS1820簡介
1.1 DS1820內部結構

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

 


    DS1820可以采用寄生電源的方式供電,在信號線為高電平的時間周期內,把能量儲存在內部電容器中,在信號線為低電平期間,由存儲在電容器內的電荷供電。DS1820工作時信號線須接4.7 kΩ的上拉電阻,以保證信號線有足夠的驅動能力。
1.2 DS1820時序及工作方式
    DS1820時序如圖2所示,時序波形的電平分為3種類型:主機作用的高低電平、DS1820輸出的高低電平和由上拉電阻拉起的高電平(后2種情況主機釋放信號線)。DS1820閑置時信號線應保持高電平。對DS1820的任何操作(讀、寫、復位等)都是由主機對信號線由邏輯高電平拉至低電平開始。

 


    由時序圖可知,單總線的通信協議由6種信號類別組成:復位脈沖、存在脈沖、寫0、寫1、讀0、讀1。所有這些信號除了存在脈沖之外,均由總線主機產生。
    主機通過單總線對DS1820的操作必須首先由ROM操作命令之一開始。現以單總線只掛接一個DS1820,讀取溫度數據為例,其工作過程如下:
    (1)主機產生復位脈沖,DS1820返回響應脈沖;
    (2)主機寫入Skip ROM(CCH,跳過ROM)命令,該命令為5種ROM操作命令之一;
    (3)主機寫入溫度轉換(44H)命令;
    (4)主機再次產生復位脈沖,DS1820返回響應脈沖;
    (5)主機寫入Skip ROM(CCH,跳過ROM)命令;
    (6)主機寫入讀暫存存儲器命令(BEH);
    (7)讀暫存存儲器的溫度數據。
2  控制器設計
2.1 控制器結構

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

 

 

2.2 讀寫時序的實現
    DS1820要求引腳驅動必須是漏極開路引腳,控制器用三態門與DS1820連接,如圖4所示。其中ctrl為三態門控制信號,當ctrl=0時輸出信號,ctrl=1時輸入信號。控制器采用5 μs作為基本計時單位,可以保證DS1820時序關系有一定的余地。

 

 

    寫字節部分VHDL代碼:
    PROCESS(cq)—輸出1 bit
    SIGNAL cout:STD_LOGIC_VECTOR(2 DOWNTO 0);
    VARIABLE di:STD_LOGIC;
    BEGIN
    ctrl<=‘0’;
    IF(cq>=“0000” AND cq<=“0010”)THEN
    di:=‘0’;——拉低輸出電位10 ms
    ELSIF(cq>“0010”AND cq<“1110”)THEN
         di:=rq;    ——取發送移位寄存器的輸出位
          ELSIF(cq>=“1110”)THEN
         di:=‘1’;cout<=cout + 1;
       END IF;
    dqo<=di;
    END PROCESS;
    PROCESS(cout)  —計數
    SIGNAL f:STD_LOGIC;
    IF cout=“111” THEN
         f<=‘0’;—8位輸出結束,停止計時
       ELSE  f<=‘1’;
    END IF;
    END PROCESS;
3 仿真波形
    控制器的VHDL程序在MAX+plusII平臺編譯通過,并獲得了正確的復位、讀、寫時序。圖5為寫時序波形,寫入77H字節。每次寫入新的bit前,控制器將總線電平拉底10 μs。

 


    基于VHDL的嵌入式DS1820控制器,具有轉換速度快、精度高、通用性好等優點。同時,嵌入軟核的FPGA可以分擔許多微處理器的工作,降低系統對CPU實時性的要求,也降低了軟件開發的難度。本文雖然是針對DS1820設計的控制器,但由于單總線通信協議的通用性,也可以用于其他單總線器件。
參考文獻
[1] 王成江,王安敏,張玉華.單總線數字溫度傳感器原理及應用[J].半導體技術,2003,28(2): 68-70.
[2] 薛智宏,趙金,解麗紅.DS1820的測量原理及提高分辨率的方法[J].河北工業科技,2002,19(6): 4-7.
[3] 許勇.DS1820在網絡中心機房溫控中的應用[J].電腦開發與應用,2001,14(9): 424-425.
[4] 陳善富,王榮亮.DS1820與PIC12C5XX系列微控制器應用于火災感溫測控器[J].計算機與現代化,2000,70(6): 111-114.
[5] 張令.溫室群的溫度自動測試系統[J].邯鄲職業技術學院學報,2003,16(4): 65-68.
[6] 李農.FPGA與DS18B20型溫度傳感器通信的實現[J].國外電子元器件.2006,2(2): 48-51.
[7] 袁偉亭,周潤景.FPGA與DS18B20組成的測溫系統設計[J].內蒙古大學學報(自然科學版),2006,37(4): 459-463.

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久精品国产99国产精品澳门 | 在线综合欧美| 亚洲日本免费| 91久久精品视频| 亚洲国产一成人久久精品| 亚洲国产99精品国自产| 在线欧美日韩精品| 尤物精品在线| **欧美日韩vr在线| 亚洲国产欧美日韩另类综合| 亚洲欧洲精品一区二区三区波多野1战4 | 亚洲激情中文1区| 亚洲电影免费观看高清完整版在线观看 | 亚洲精品国产精品久久清纯直播 | 一本久久精品一区二区| 日韩午夜精品| 亚洲视频欧洲视频| 亚洲欧美精品中文字幕在线| 亚洲欧美视频| 久久精品2019中文字幕| 久久米奇亚洲| 欧美va亚洲va国产综合| 欧美女同视频| 国产精品久久午夜夜伦鲁鲁| 国产欧美一区二区精品性色| 国产一区二区按摩在线观看| 黄色成人在线| 亚洲国产一区二区三区a毛片| 亚洲日本久久| 亚洲一品av免费观看| 亚洲欧美日韩国产成人精品影院| 午夜在线一区| 亚洲黄色在线| 亚洲社区在线观看| 欧美亚洲色图校园春色| 久久精品综合网| 欧美成熟视频| 欧美午夜激情视频| 国产拍揄自揄精品视频麻豆| 国产亚洲欧美一区| 亚洲国产一区在线观看| 一区二区三区精品国产| 欧美一区二区日韩一区二区| 亚洲黄色影院| 亚洲男人的天堂在线aⅴ视频| 久久精品国产亚洲一区二区三区 | 国产精品久久久久久久久 | 国产自产v一区二区三区c| 亚洲成色777777在线观看影院| 亚洲日本激情| 亚洲欧美卡通另类91av| 亚洲电影视频在线| 中文日韩在线| 久久久精品午夜少妇| 欧美激情综合五月色丁香| 国产精品电影在线观看| 国产原创一区二区| 亚洲毛片视频| 欧美一级午夜免费电影| 亚洲精品国产拍免费91在线| 亚洲一区二区三区高清| 久久久亚洲国产天美传媒修理工| 欧美激情一区二区| 国产农村妇女毛片精品久久莱园子| 亚洲第一偷拍| 正在播放亚洲一区| 亚洲国产精品一区二区三区| 亚洲深夜福利视频| 另类专区欧美制服同性| 国产精品分类| 亚洲国产黄色片| 亚洲女人天堂av| 一本色道久久加勒比精品| 欧美一区二区三区视频免费| 欧美国产三区| 国产欧美一区视频| 日韩一级黄色av| 亚洲电影观看| 小黄鸭精品aⅴ导航网站入口| 欧美ed2k| 国产中文一区| 国产精品99久久不卡二区| 亚洲国产精品高清久久久| 亚洲欧美日本另类| 欧美精品播放| 精品99一区二区| 亚洲女优在线| 亚洲一级黄色av| 欧美成人免费网| 国产伊人精品| 亚洲欧美在线视频观看| 在线综合欧美| 欧美成人免费全部| 国内精品写真在线观看| 亚洲欧美精品suv| 中文av一区二区| 欧美激情一区在线观看| 国内外成人免费激情在线视频网站 | 亚洲国产精品热久久| 欧美一区二区高清| 亚洲欧美日韩高清| 欧美三日本三级少妇三2023| 亚洲高清在线精品| 亚洲高清不卡一区| 久久久久久久91| 国产日韩在线一区二区三区| 亚洲午夜高清视频| 亚洲视频中文| 欧美日韩一级视频| 亚洲精品视频在线观看网站 | 午夜视频在线观看一区二区三区 | 亚洲区第一页| 老司机午夜免费精品视频| 国产亚洲欧洲| 欧美一区2区三区4区公司二百| 香蕉乱码成人久久天堂爱免费| 国产精品高潮呻吟视频| 一本色道久久综合亚洲精品婷婷| a4yy欧美一区二区三区| 欧美激情网友自拍| 亚洲韩国青草视频| 亚洲九九九在线观看| 免费一级欧美在线大片| 樱桃成人精品视频在线播放| 欧美一区二区三区在线视频 | 一区二区三区四区在线| 亚洲私人影院| 国产精品第十页| 亚洲一区二区三区在线播放| 亚洲伊人久久综合| 国产精品手机在线| 亚洲欧美日韩国产一区二区三区| 午夜日韩激情| 国产日韩综合| 在线看视频不卡| 日韩午夜在线播放| 欧美日本韩国一区| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 亚洲欧美成aⅴ人在线观看| 国产精品另类一区| 亚洲欧美日韩国产综合在线| 久久精品二区三区| 永久555www成人免费| 亚洲日本中文字幕| 欧美日韩视频一区二区三区| 一区二区三区 在线观看视| 亚洲免费在线观看视频| 国产毛片一区二区| 久久精品国产一区二区三区免费看 | 亚洲国产精品999| 一本综合久久| 国产精品丝袜白浆摸在线| 香蕉久久夜色精品国产| 另类尿喷潮videofree | 久久青草福利网站| 亚洲欧洲一区二区在线观看| 亚洲视频免费看| 国产欧美欧美| 亚洲国产欧美日韩精品| 欧美精品一级| 亚洲免费综合| 另类激情亚洲| 一区二区三区国产盗摄| 久久国产精品72免费观看| 在线免费日韩片| 亚洲永久免费| 樱桃成人精品视频在线播放| 午夜精品久久久久久久久久久久| 蜜臀久久久99精品久久久久久| 亚洲免费观看在线观看| 销魂美女一区二区三区视频在线| 红桃av永久久久| 中国成人在线视频| 亚洲国产精品电影| 亚洲一区中文| 国精品一区二区| 9i看片成人免费高清| 国产麻豆日韩| 亚洲精品一级| 国产精品永久免费| 亚洲欧洲综合另类| 国产精品美女主播| 亚洲精品国产精品乱码不99| 国产精品乱看| 亚洲国产精品一区二区久| 欧美视频日韩视频在线观看| 久久精品99久久香蕉国产色戒| 欧美日韩精品二区第二页| 欧美一区二区观看视频| 欧美日韩午夜精品| 亚洲福利视频三区| 国产精品国产三级国产aⅴ无密码| 亚洲成在线观看| 国产精品福利影院| 亚洲看片网站| 国产综合色产在线精品| 亚洲一区二区三区四区中文| 在线免费不卡视频| 久久国产免费| 一本久久综合亚洲鲁鲁五月天|