嵌入式基于FRAM的海水深度記錄儀電路設計
海洋的深度是海洋水體的一個(gè)重要參數。知道海洋的深度,就可防止海面航行的船只擱淺、觸礁。潛艇在海底活動(dòng)時(shí),測量海洋深度可利用海底地形作屏障以避免被搜索,可使對方的訊號接收儀器收不到潛艇發(fā)出的噪音。在筆者所做的一個(gè)課題中,直升飛機從空中投擲測量?jì)x器到海表面,儀器從海表面下沉至海底后,自動(dòng)上浮至海水表面。該項目要求研制一個(gè)海水深度記錄儀,記錄上述過(guò)程中測量?jì)x器在海水中的深度變化。測量?jì)x器自動(dòng)上浮至海面后,打撈并回放測量數據。深度數據要求每秒采樣100次,具有非易失性。測量數據通過(guò)串口向PC機回放。
本文引用地址:http://dyxdggzs.com/article/201710/369501.htm系統硬件設計
根據系統設計要求,海水的深度數據采集頻率要求至少100Hz,連續采集時(shí)間為5分鐘以上。以分辨率為12位的ADC計算,一次采集的數據量至少為2&TImes;100&TImes;5&TImes;60=60000B。針對系統數據采集量大、速度快、爆發(fā)性強的特點(diǎn),采用如下總體設計方案:主控制器采用了高性能微控制器C8051F020。它具有與8051完全兼容的CIP-51微控制器內核,采用高速流水線(xiàn)結構(25MIPS),大多數指令執行時(shí)間為1~2時(shí)鐘周期;具有64KB可在系統編程FLASH和大容量?jì)炔縎RAM,具有外部存儲器接口。非易失性存儲器采用美國Ramtron公司的FM20L08鐵電存儲器。與其它類(lèi)型的非易失性存儲器相比,FRAM鐵電存儲器具有讀寫(xiě)次數多、讀寫(xiě)速度快、功耗低、無(wú)延時(shí)和不用擦除寫(xiě)操作的特點(diǎn),在功能上可以完全替代SRAM。系統硬件框圖如圖1所示。
圖1系統硬件框圖
信號調理電路設計
信號調試電路如圖2所示。
圖2信號調理電路
雖然C8051F020內部有2.43V的基準電壓源。但是測試結果表明其輸出電壓隨溫度波動(dòng)較大,影響測量結果的準確性。為了提高測量精度,系統采用了Maxim公司的低溫漂電壓基準芯片 MAX6325,MAX6325是低溫度系數(1ppm/°C)、低噪聲(1.5mVp-p)的電壓基準,它具有±0.02%初始精度,是高精度數據采集系統的理想選擇。由于壓力傳感器的輸出電壓范圍是DC1~5V,而MAX6325輸出的電壓基準是2.50V。因而必須對壓力傳感器輸出電壓進(jìn)行衰減,以達到和基準電壓的匹配。實(shí)現這個(gè)功能最簡(jiǎn)單的方法是直接用兩個(gè)電阻進(jìn)行分壓,但是由于傳感器具有一定的輸出阻抗,直接匹配分壓電阻相當于將傳感器輸出阻抗與這兩個(gè)電阻并聯(lián),會(huì )造成輸入A/D的采樣電壓不準確。正確的方法是在壓力傳感器的輸出之后加一級運算放大器增加輸入阻抗,再在運放的輸出級并聯(lián)分壓電阻??紤]到系統只有5V電壓并且傳感器的輸出電壓在1~5V之間,同時(shí)也為了減少器件的數目,縮小占板面積,運算放大器選用了OPA340。 OPA340是單電源軌至軌輸入和輸出運算放大器。OPA340的工作電壓可低至2.5V,它允許的最低輸入為-500mV,最高輸入為可高于電源 500mV。
數據存儲電路設計
對于針對突發(fā)數據的記錄儀、高速存儲測試設備等,其數據的高速存儲和掉電不丟失成為系統設計的關(guān)鍵,Ramtron公司推出的FM20L08鐵電存儲器彌補了現有鐵電存儲器存儲量小的缺點(diǎn),其數據存儲量達1Mb(128KB),可完全代替標準異步靜態(tài)隨機存儲器(SRAM),具有可隨機讀寫(xiě)芯片內任何一字節的特性。FM20L08非易失性鐵電存儲器可無(wú)限次讀寫(xiě),掉電后數據可保存10年,工作電壓為3.3V。
最大功耗ftx電流為22mA,采用32引腳TSOP型封裝。FM20L08增加了軟件控制寫(xiě)保護功能,存儲序列按地址排成8個(gè)區域,每個(gè)區域都能通過(guò)軟件單獨設置寫(xiě)保護。在對海水深度進(jìn)行實(shí)時(shí)采集和記錄時(shí),為了更好地了解儀器在水中深度變化的過(guò)程,必須有高速的數據采集和大量的數據存儲作保證。鐵電存儲器的高速寫(xiě)入和掉電數據不丟失特性完全適合此類(lèi)情況,可以對物體在海水中的下降過(guò)程進(jìn)行完整地記錄。圖3示出C8051F020與FM20L08的接口電路。
圖3FM20L08與C8051F020的接口電路
C8051F020使用高位端口(P4~P7)與FM20L08進(jìn)行接口。FM20L08新增內部電壓監控器驅動(dòng) LVL(LowVoltageLockout)信號,它接至MCU的INT0,用于監控電源的供電情況,當電源電壓下降到臨界值以下時(shí),LVL引腳輸出低電壓信號,顯示電路處于寫(xiě)保護狀態(tài),在MCU的INT0中斷服務(wù)程序中復位MCU,這樣存儲器可以自動(dòng)阻止誤讀寫(xiě)和防止存儲頁(yè)面數據的破壞。 FM20L08的片選信號是由C8051F020的讀寫(xiě)信號相與來(lái)控制的,只要讀寫(xiě)信號任何一個(gè)變低,則片選信號有效。C8051F020的最大尋址空間為64K,而要求它能夠訪(fǎng)問(wèn)128KB的地址空間,最簡(jiǎn)單有效的方法就是使用一個(gè)I/O位控制FM20L08的地址線(xiàn)A16。當A16為0是選擇FRAM 的前半部分,當A16為1時(shí),選擇FRAM的后半部分。
在存儲程序設計中,程序應首先判斷儀器在下降時(shí)A/D的輸入信號值是否大于門(mén)限值,只有輸入信號值大于門(mén)限值才將數據存儲在存儲單元內,在測量?jì)x器由海底上浮至將要接近海面時(shí)關(guān)閉鐵電存儲器,停止數據存儲。
評論