新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 嵌入式單總線控制器設計

嵌入式單總線控制器設計

作者: 時間:2010-12-21 來源:網(wǎng)絡 收藏

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

本文引用地址:http://butianyuan.cn/article/151166.htm

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

  1 DS1820簡介

  1.1 DS1820內部結構

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

DS1820內部結構

  DS1820可以采用寄生電源的方式供電,在信號線為高電平的時間周期內,把能量儲存在內部電容器中,在信號線為低電平期間,由存儲在電容器內的電荷供電。DS1820工作時信號線須接4.7 kΩ的上拉電阻,以保證信號線有足夠的驅動能力。

  1.2 DS1820時序及工作方式

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

DS1820時序

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

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

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

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

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

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

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

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

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

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉