陳樹成,楊志勇,王科
(1.成都信息工程學院電子工程學院,成都610225;2.中國華云氣象科技集團公司)
隨著工業的發展和含碳燃料的長期使用,大氣中的二氧化碳含量日益增多,其產生的“溫室效應”已經一定程度地破壞了人們的生活環境,因此對于二氧化碳含量進行定量的測量與控制已成為一項極具實際意義的任務。此外,二氧化碳濃度的監控對于農業生產、醫療衛生等領域也有著重要的意義。以醫療衛生為例,世界各國都很重視對二氧化碳的監測和控制,這對于減少呼吸系統疾病、提高人們的生活水平有著無法估量的經濟效益和社會效益[1]。
采用單片機進行二氧化碳濃度檢測、實時顯示,能夠提高生產效率、節約能源。為此,設計一種利用MSP430F169作為主控芯片的二氧化碳采集系統,能夠實時顯示測量數據并對數據進行存儲,存儲的數據可以通過USB與上位機之間進行交互。
系統采用MSP430F169作為主控CPU,MG811傳感器輸出經放大的模擬信號,經A/D 轉換后計算對應的二氧化碳濃度值,將結果通過HT1621送段式LCD 顯示,并將數據通過M25P80進行存儲。需要時可通過USB對存儲數據進行讀取,完成與上位機之間的交互。系統采用鋰電池供電。系統的總體設計框圖如圖1所示。
圖1 系統總體設計框圖
MSP430系列單片機是TI公司推出的一種16 位超低功耗單片機。該系列單片機具有運算能力強、片內外設豐富、低電壓、超低功耗、速度快和效率高等特點。其電源電壓采用1.8~3.6V 低電壓,RAM 數據保持方式下耗電僅為0.1μA,活動模式,耗電為250μA/MIPS,I/O 輸入端口的最大漏電流僅為50nA。該單片機系統有一種活動模式和5種低功耗模式,并且各種模式間可以自由切換。其具備精簡指令集和較高的處理速度,大量的片內寄存器可以參加運算,有豐富的I/O 接口,支持JTAG 在線編程和調試[2]。設計的二氧化碳采集系統以MSP430F169為主控CPU,該芯片具備MSP430系列單片機幾乎所有的優點,同時其封裝為LQPF64,大大縮小了電路板的空間。設計的MSP430F169最小系統電路如圖2所示。該最小系統包括了低速晶振和高速晶振電路、上電復位電路、JTAG程序下載調試電路以及電源端和地端。
圖2 MSP430F169最小系統
二氧化碳傳感器采用鄭州煒盛電子公司的MG811。MG811為固體電解質傳感器,它的信號輸出阻抗非常高,因此不能直接用普通的電壓表或萬用表測量其輸出信號[3],也不能將輸出直接接到MSP430 的ADC 輸入端。設計時,在傳感器信號輸出后端接一級阻抗變換電路,將傳感器輸出阻抗降低到普通可測量級別,而阻抗變換運算放大器必須選用高輸入阻抗型,芯片選用美國無線電公司的CA3410放大芯片。MG811傳感器正常工作時內核溫度可以達到500 ℃以上,而內核和周圍空氣是直接接觸的,因此環境溫度變化會影響到傳感器的靈敏度,所以設計中采用溫度補償電路,補償電路由R1 溫感電阻和R2構成。
MG811二氧化碳傳感器電路如圖3所示。二氧化碳傳感器經CA3140放大后的輸出端與溫度補償輸出端分別接到MSP430F169的P6.4和P6.3引腳。由于在一定的溫度和濕度的條件下,傳感器輸出的電壓和測量環境中的二氧化碳濃度近似成正比關系,所以經過A/D 轉換后的電壓值可以通過該正比關系式轉換成為二氧化碳濃度值。如果環境的溫度變化較為明顯,就需要對二氧化碳傳感器進行人工標定。
段式LCD以其超低的功耗廣泛應 用 于 各 種 便 攜 式 設 備。MSP430F169電路本身不具有段式液晶驅動能力,由于系統采用鋰電池供電,才對功耗有著較高的要求,所以設計中采用HT1621 芯片驅動段式液晶顯示。HT1621 是128 點內存映像和多功能的LCD 驅動器,HT1621的軟件配置特性使它適用于多種LCD應用場合,包括LCD 模塊和顯示子系統。靜態顯示內存RAM 及32×4位的格式存儲所顯示的數據,RAM 的數據直接映像到LCD驅動器,可以用READ、WRITE和READ-MODIFY-WRITE 命令訪問[4]。HT1621驅動段式LCD 電路如圖4所示。
圖3 MG811傳感器電路
圖4 HT1621驅動段式LCD電路
由于設計的采集系統具有數據存儲功能,考慮到MSP430F169自身的存儲空間有限,所以外擴M25P80存儲芯片存儲數據。M25Pxx系列FLASH 是ST公司的高速SPI接口FLASH,讀寫時鐘最快可達到40 MHz,分為1 MB、2MB、4MB、8MB、16MB等多種容量,不同容量的芯片引腳和封裝完全相同[5]。該設計采用8MB 容量的M25P80,電路圖如圖5下半部分所示。M25P80FLASH 可以按頁、扇區和整片擦除,并提供按頁寫數據功能。MSP430F169有獨立的SPI控制器,可以直接控制M25P80 FLASH 的讀寫操作,自動生成讀寫SPI FLASH 控制時序。
存儲的數據需要與上位機之間進行交互,設計采用CP2102串口芯片,通過USB接口進行通信。CP2102是一種高度集成的USB轉UART 橋接器,提供一個使用最小化元件和PCB空間實現RS232轉USB的簡便解決方案。CP2102的USB功能控制器是一個符合USB2.0的全速電路,帶有收發器和片內上拉電阻,USB 功能控制器管理USB與UART間的所有數據傳輸,以及由USB主控制器發出的請求命令和用于控制UART 功能的命令[6]。設計的USB通信電路如圖5上半部分所示,圖中U_RXD、U_TXD分別接MSP430F169的P3.5、P3.4引腳。USB接口選用通用的Micro-USB,CP2102中的3.3V 電壓可以使用LM1117-3.3將USB端口的5V輸入轉換而來。
圖5 USB通信及存儲電路
綜合以上系統的便攜性考慮,系統采用鋰電池供電。由于本系統MSP430F169、HT1621和M25P80等芯片都使用標準3.3V 供電,二氧化碳傳感器MG811采用6V供電,而標準鋰電池充滿電時的輸出電壓為3.7V,所以需要對鋰電池進行升壓和降壓。降壓芯片選用TI公司的TPS62046,升壓芯片選用MAXIM 公司的MAX17112。降壓電路和升壓電路如圖6所示。其中左半部分為TPS62046降壓至3.3V 電路,右半部分為MAX17112升壓至6V 電路。實際測試表明,該升壓和降壓電路所得到的電壓能使電路穩定工作。
圖6 降壓電路和升壓電路
系統的軟件采用模塊化設計,軟件子功能程序分別與硬件模塊電路相對應。系統軟件主要包括主程序、數據采集子程序、數據處理子程序、段式LCD 顯示子程序、定時器中斷服務子程序、存儲子程序和串行通信子程序等。此處只給出系統的主程序流程圖,如圖7所示。
圖7 系統主程序流程圖
設計的二氧化碳采集系統利用MSP430F169控制傳感器MG811,能夠比較準確地對二氧化碳濃度值采樣測量,并能夠通過HT1621驅動段式LCD準確顯示,系統功耗較低、精度較高、集成化程度高。其便攜性使得系統可以應用于各種工農業二氧化碳濃度測量場合,應用前景廣闊。
[1]袁超,何保山,韓小賢,等.二氧化碳氣體監測研究進展[J].江西農業學報,2009(6):133-136.
[2]魏小龍.MSP430 系列單片機接口技術及系統設計實例[M].北京:北京航空航天大學出版社,2007.
[3]侯存峰,謝菊芳,胡東.基于ZigBee技術的CO2監測節點設計與實現[J].農業科技與裝備,2012,3:47-51.
[4]汪川,樊澤明.基于單片機的HT1621 液晶顯示系統設計[J].現代電子技術,2010(23):165-167.
[5]胥嘉佳,黃克平.一種基于FPGA 最小系統的PROM 擴展方法[J].電子科技,2013(4):126-128.
[6]黃燕妮,王少云.USB、RS232/UART 接口轉換電路的設計[J].電子設計工程,2012(22):27-29.