国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

嵌入式單總線控制器設計

發(fā)布時間:2009-8-11 14:51    發(fā)布者:李寬
關鍵詞: 單總線 , 控制器 , 嵌入式
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的可靠通信,微處理器需要采用關閉中斷的辦法,以防止操作時序被中斷服務所破壞。這種方法增加了軟件的設計難度,影響了系統(tǒng)的實時性[6]。

  VHDL作為電子設計主流硬件描述語言,采用了層次化設計方式,具有電路行為描述能力強、靈活、通用、運算速度快的特點,能夠較容易地實現時序邏輯控制 [7]。以數字溫度傳感器DS1820為例,設計一個基于VHDL的單總線控制器,實現與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的拷貝、計數器余值和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為地址信號,其組合決定控制器的工作狀態(tài)。A1A0=00,控制器對DS1820執(zhí)行復位操作;A1A0=01,控制器執(zhí)行寫入操作;A1A0=10,控制器執(zhí)行讀出操作。控制器由外部提供200 kHz的時鐘信號CLK,產生5 μs的計數周期,控制器以5 μs為一個時間片形成DS1820的讀寫時序。計數器的計數輸出值控制讀寫周期。單總線時序控制部分的主要功能是產生單總線的讀寫時序,并向DS1820 輸出控制命令,讀出DS1820測得的數字溫度值及其他輸出信息。



  2.2 讀寫時序的實現

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



  寫字節(jié)部分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; ——取發(fā)送移位寄存器的輸出位

  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字節(jié)。每次寫入新的bit前,控制器將總線電平拉底10 μs。



  基于VHDL的嵌入式DS1820控制器,具有轉換速度快、精度高、通用性好等優(yōu)點。同時,嵌入軟核的FPGA可以分擔許多微處理器的工作,降低系統(tǒng)對 CPU實時性的要求,也降低了軟件開發(fā)的難度。本文雖然是針對DS1820設計的控制器,但由于單總線通信協議的通用性,也可以用于其他單總線器件。
本文地址:http://m.qingdxww.cn/thread-2970-1-1.html     【打印本頁】

本站部分文章為轉載或網友發(fā)布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區(qū)

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 一区二区三区欧美 | 欧产日产国产精品精品 | 亚洲资源在线播放 | 久久青春 | 久久天堂网 | 国产精品久久久久久久久免费 | 欧美一级日韩一级亚洲一级 | 日本黄色一区 | 亚洲欧美综合一区二区三区四区 | 狠狠狠狠操 | 在线看片日本 | 性8成人有声小说在线播放 性88分钟在线播放 性88分钟 | 国产精品午夜久久久久久99热 | 午夜在线免费视频 | 中文字幕日韩一区二区三区不卡 | 91人前露出精品国产 | 国产区香蕉精品系列在线观看不卡 | 97视频在线观看视频最新 | 九九热视频这里只有精品 | 五月欧美激激激综合网色播 | 家庭教师姐姐 | 日韩成人免费在线 | 久久亚洲国产午夜精品理论片 | 亚洲xx网 | 尤物国午夜精品福利网站 | 妖精视频一区二区三区 | 黄色的免费网站 | 一级做a爰片久久毛片毛片 一级做a爰片久久毛片看看 | 精品亚洲欧美高清不卡高清 | 99精品国产福利免费一区二区 | 日本www色视频成人免费网站 | 欧美 另类 精品一区视频 | 国产一级久久久久久毛片 | 国产欧美日韩在线一区二区不卡 | young sheldon | 高清在线一区 | 亚洲黄色成人 | 永久黄网站色视频免费网站 | 99国产视频 | 欧美日韩一区二区中文字幕视频 | 欧美在线一二三区 |