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