基于DSP的嵌入式溫度記錄儀的設計
溫度采集與控制技術是測量、控制系統(tǒng)的重要組成部分.傳統(tǒng)的模擬傳感測量溫度系統(tǒng)測量精度低、布線復雜,易受干擾.而新型單片數(shù)字式溫度傳感器測量精度高、抗干擾能力強,應用廣泛。這里提出一種基于DSP的嵌入式溫度記錄儀的設計方案。該系統(tǒng)設計采用TMS320F2812型DSP,DS28EA00型1一Wire數(shù)字溫度計為控制中心,采用帶有USB接口的大容量U盤或SD卡作為存儲介質(zhì),實現(xiàn)溫度采集與數(shù)據(jù)存儲。
2 系統(tǒng)設計方案
該系統(tǒng)設計主要包含DS28EA00測溫、USB接口、SD卡接口、外擴RAM.TM$320F2812數(shù)字信號處理等模塊。其中,TMS320F2812控制溫度計DS28EA00順序采集各測量點溫度,經(jīng)處理后暫存至外擴RAM,當滿足特定條件后,通過USB接口將數(shù)據(jù)以文件形式存儲到U盤或SD卡中,系統(tǒng)設計框圖如圖1所示。
3 系統(tǒng)硬件設計
3.1 DS28EA00測溫模塊
DS28EA00~是一款具有鏈路功能的l―Wire數(shù)字溫度傳感器,具有9~12位的分辨率,且?guī)в杏脩艨删幊淘O置的非易失性溫度報警閾值點。每個DS28EA00都具有工廠預先刻錄的唯一64位序列號,只需一根數(shù)據(jù)線和地線就可通過1一Wire協(xié)議完成串行傳輸數(shù)據(jù),支持15.3 Kb/s(最大值)的標準通信速率和125 Kb/s(最大值)的高速通信速率。改進的l―Wire接口具有滯回和干擾濾波功能,使得DS28EA00能夠在大型1一Wire網(wǎng)絡中可靠工作。
DS28EA00內(nèi)部數(shù)據(jù)部分包括64位序列號、64位暫存器以及報警配置寄存器。1一Wire ROM功能控制單元處理ROM功能命令,允許器件工作在一個多點網(wǎng)絡中。器件功能控制單元實現(xiàn)對器件的特定操作和控制,如讀/寫,溫度轉換,設置順序檢測的鏈路狀態(tài)等。8 bit CRC生成器在讀取溫度和寄存器數(shù)據(jù)時可協(xié)助主機檢驗數(shù)據(jù)的完整性。順序檢測鏈路狀態(tài)時,DSP的PIOB(XDO~XD7)作為輸入,而PIOA(XA0~XAl8)與下一個器件連接,DS28EA00數(shù)字溫度計的1-Wire總線接口與DSP的GPIO接口相連實現(xiàn)通信。DS28EA00測溫模塊電路如圖2所示。
3.2 USB接口模塊
USB接口模塊采用嵌入式USB接口器件SL811HST,該器件內(nèi)置USB主/從控制器,支持全速和低速數(shù)據(jù)傳輸,能自動識別低速或全速設備,SL811HST提供的接口可與微控制器、DSP相連。此外,SL811HST內(nèi)部有一個256字節(jié)的RAM,用于控制寄存器或數(shù)據(jù)緩沖器。該系統(tǒng)中USB設備映射TMS320F2812外擴1區(qū)域,USB接口模塊電路如圖3所示。
3.3 SD卡接口模塊
SD卡通過SPI口或并行(SD)接口與主機連接.另外DSP還提供額外引腳來檢測卡的存在和寫保護功能。SPI總線模式下,CS為主控制器向SD卡發(fā)送的片選信號,SCLK為主控制器向SD卡發(fā)送的時鐘信號,DI(Data In)為主控制器向SD卡發(fā)送的單向數(shù)據(jù)信號,DO(Data Out)為SD卡向主控制器發(fā)送的單向數(shù)據(jù)信號。選擇SD模式通信實現(xiàn)高速通信.采用GPIO接口滿足特定的SD規(guī)范協(xié)議。
4 系統(tǒng)軟件設計
系統(tǒng)軟件設計主要包括DSP與DS28EA00的通信、DSP與SD卡的通信,DSP與USB設備的通信。
4.1 DSP與DS28EA00的通信
DS28EA00的鏈路功能允許1一Wire主機檢索以線性網(wǎng)絡“鏈”方式連接的器件.找出其物理順序。鏈路功能需要輸入和輸出兩個引腳,其中,輸入引腳(EN)可使器件在檢測時能對檢測做出響應,而輸出引腳(DONE)用于通知鏈路中的下一個器件其相鄰器件的檢測已完成。復用DS28EA00的兩個通用端口實現(xiàn)鏈路功能,其中,PB作為EN輸入,PA產(chǎn)生DONE信號并與下一個器件的EN輸入相連,而第一個器件的EN輸入需接至GND,或者在順序檢測時對其施加邏輯‘0’信號。
4.2 數(shù)據(jù)存儲
4.2.1 U盤數(shù)據(jù)存儲
DSP主要通過軟件設計實現(xiàn)對USB移動存儲設備的操作,而USB軟件設計主要由通用的USB總線枚舉部分,USBMass Storage類協(xié)議軟件設計以及文件系統(tǒng)組成,U盤數(shù)據(jù)存儲流程如圖4所示。
4.2.2 SD卡數(shù)據(jù)存儲
SD卡數(shù)據(jù)存儲軟件設計主要包括SD卡上電初始化和SD卡的讀寫操作。其工作步驟如下:(1)配置TMS320F2812的SPI接口,檢測是否插入SD卡。為調(diào)試方便,將SD卡接口的Vse2引腳接地。(2)檢測到SD卡,系統(tǒng)連續(xù)發(fā)送10次0xFF00使SD卡的Data In引腳狀態(tài)保持至少74個時鐘周期,實現(xiàn)系統(tǒng)上電初始化。(3)SD卡初始化,注意此時SPI接口的通信速度應為100~400 kHz以滿足SD卡通信協(xié)議要求。(4)系統(tǒng)與SD卡通信,提高SPI接口的通信速率。圖5給出SD卡數(shù)據(jù)存儲流程圖。
4.3 文件系統(tǒng)
為了便于處理采集到的數(shù)據(jù),設計了一個兼容FATl6、FAT32文件格式的文件管理系統(tǒng)嘲,并將數(shù)據(jù)存儲到U盤或SD卡中。文件系統(tǒng)數(shù)據(jù)分為:MBR區(qū)、DBR區(qū)、FAT區(qū)、DIR區(qū)和DATA區(qū)。由于SD卡不要求啟動,因此文件系統(tǒng)可以只包含有DBR、FAT、DIR和DATlA區(qū)。這里以128 MB的U盤為例進行簡單介紹,其文件系統(tǒng)結構如表l所示。
5 結語
由于USB接口存儲設備和SD卡在數(shù)據(jù)采集系統(tǒng)中應用廣泛,嵌入式數(shù)據(jù)采集環(huán)境中采用USB存儲設備或SD卡可實現(xiàn)大容量數(shù)據(jù)存儲,滿足嵌入式技術發(fā)展要求。該系統(tǒng)設計經(jīng)過反復測試表明:工作穩(wěn)定,能快速讀寫U盤和SD卡中的存儲數(shù)據(jù),其速率約為300 KB/s。
評論