基于MSP430的低功耗儀表系統(tǒng)設(shè)計
1 引言
在科學(xué)技術(shù)與社會生產(chǎn)高度發(fā)達(dá)的今天,智能測試儀器與儀器儀表系統(tǒng)發(fā)展迅速,被測對象的跨度既廣泛又具有多樣性。計算機(jī)技術(shù)的迅猛發(fā)展使儀器儀表的發(fā)展上了一個新臺階,傳統(tǒng)的檢測設(shè)備被智能化儀器所取代。智能化儀表的兩個主要的發(fā)展方向是大型自動測試系統(tǒng)和便攜式低功耗智能儀表,功率問題也就成為電路設(shè)計所需考慮的重要因素之一。在本文中,我將提出一種基于MSP430的通用型低功耗儀表系統(tǒng)的設(shè)計方案。該低功耗系統(tǒng)與不同的傳感器相結(jié)合,能夠?qū)崿F(xiàn)數(shù)據(jù)的采集與處理,并具備鍵盤輸入與LCD顯示功能,能適合各種工作場合。
2 低功耗儀表系統(tǒng)硬件設(shè)計
2.1硬件系統(tǒng)總體設(shè)計
本儀表系中選用的是MSP430芯片。MSP430系列是一款具有精簡指令集的16位超低功耗混合型單片機(jī)。它包含馮諾依曼結(jié)構(gòu)尋址方式(MAB)和數(shù)據(jù)存儲方式(MDB)的靈活時鐘系統(tǒng),由于含有一個標(biāo)準(zhǔn)的地址映射和數(shù)字模擬外圍接口的CPU,MSP430為混合信號應(yīng)用需求提供了解決方案。
MSP430系列的主要特征有:超低能耗的體系結(jié)構(gòu)大大延長了電池壽命;適用于精密測量的理想高性能模擬特性;16位RISC CPU為每一時間片處理的代碼段容量提供新的特性,系統(tǒng)可編程的Flash存儲器可以反復(fù)擦寫代碼、分塊擦寫和數(shù)據(jù)載入。圖3-1給出了電能表的硬件框圖:
圖1 系統(tǒng)硬件框圖
圖1中的硬件按功能可分為數(shù)據(jù)采集、放大與濾波、單片機(jī)、鍵盤、LCD顯示、時鐘電路、數(shù)據(jù)存儲、DAC、報警、看門狗電路、RS485通信和電源管理等功能模塊。
2.2 模塊設(shè)計
2.2.1電源模塊設(shè)計
在整個系統(tǒng)中,我用到了±5V、±12V, 2.5V, 3V。對于±5V和±12V這兩組電壓是采用專門的電源模塊來供電的。由于MSP430型單片機(jī)是低功耗的單片機(jī),采用3V供電,要用專用的電源模塊來對單片機(jī)進(jìn)行供電。單片機(jī)的供電模塊是德州儀器公司的TPS76301,這個電源模塊是表面貼片式的,輸出電壓連續(xù)可調(diào),可以輸出1.6-5.0V的電壓。只有5個管腳。它可以提供l50mA的電流,輸出電壓的應(yīng)用電路如圖2所示。
圖2 TPS76301的應(yīng)用電路
電阻R1和R2上的電流必須是7μA左右。再低一點(diǎn)的電阻也可以用,但是浪費(fèi)了功率,太高的電阻也不能用,因?yàn)檫@樣會引起FB端的泄漏電流增加和引起電壓錯誤。推薦的電阻值就是選擇R2=169KΩ,并且讓流過R1和R2電阻的電流為7μA左右,由下式計算R1:
一些電阻和輸出電壓的典型值如表1所示:
表1 工輸出電壓和電阻的典型值
2.2.2 放大與濾波模塊
我在該低功耗系統(tǒng)的輸入通道中采用的前置放大器是TI公司的OPA349。輸入通道電路如圖3所示,該電路除了放大功能,還能具有濾波功能,消除無關(guān)的交流分量。
圖3 放大與濾波電路圖
2.2.3 RS-485通訊電路
通訊模塊是本系統(tǒng)的一個重要組成部分梁。控制器通過通訊模塊實(shí)現(xiàn)歷史運(yùn)行數(shù)據(jù)及有關(guān)信息的上傳和基本參數(shù)、控制命令等的接收,設(shè)計一個較成功的通信電路將直接影響到控制器的調(diào)試、功能發(fā)揮及其通用性。
圖4 RS-485串行通訊
圖4為RS-485通訊接口電路,單片機(jī)與上位機(jī)之間的數(shù)據(jù)傳送經(jīng)過RS485收發(fā)器NAX485,由單片機(jī)的USARTI發(fā)送和接收。通訊方式為半雙工,由單片機(jī)的P3.5口控制數(shù)據(jù)發(fā)送和接收。為了提高數(shù)據(jù)傳輸?shù)目垢蓴_性,RS-485為+5V單獨(dú)供電,采用高速光耦與其他電源完全隔離,不共地。由于傳輸線較長而且現(xiàn)場可能有電磁干擾,所以在傳輸線上并聯(lián)瞬變電壓抑制器TVSC,串聯(lián)熔斷器,并且傳輸線使用帶屏蔽層的電纜。
另外還有時鐘電路模塊, A/D轉(zhuǎn)換模塊, LCD顯示接口設(shè)計, 鍵盤接口模塊, 存儲擴(kuò)展模塊就不詳細(xì)介紹。
圖5智能終端主程序流程圖
3 低功耗系統(tǒng)軟件部分設(shè)計
單片機(jī)應(yīng)用系統(tǒng)的軟件設(shè)計和一般的程序設(shè)計不同,既有各種計算程序、控制策略程序的設(shè)計,還要結(jié)合具體的硬件電路進(jìn)行各種輸入輸出程序設(shè)計。本儀表系統(tǒng)軟件采用模塊化結(jié)構(gòu)設(shè)計,將各功能模塊設(shè)計為獨(dú)立的編程調(diào)試程序塊,這樣有利于今后實(shí)現(xiàn)功能擴(kuò)展,而且便于調(diào)試和連接,更有利于程序的移植和修改。
本系統(tǒng)的軟件設(shè)計使用的是適用于MSP430系列的C語言,這種C語言與標(biāo)準(zhǔn)C語言兼容程度很高。開發(fā)平臺使用的是IAR公司專為MSP430系列提供的集成調(diào)試環(huán)境Embedded Workbench和C語言調(diào)試器C-SPY。
3.1 基于時間觸發(fā)的混合式調(diào)度介紹
調(diào)度器就像是一個簡單的操作系統(tǒng),可以周期的或單次的調(diào)用任務(wù)。實(shí)際上,調(diào)度器就是一個許多不同任務(wù)共享的定時中斷服務(wù)程序,只要初始化一個定時器,就可以調(diào)度多個任務(wù)。任務(wù)的特征分為4部分:任務(wù)函數(shù)的指針,延遲時間,任務(wù)執(zhí)行周期和任務(wù)可否執(zhí)行標(biāo)記。調(diào)度器通過定時器產(chǎn)生一定的時間間隔,根據(jù)任務(wù)可否執(zhí)行標(biāo)記來判斷并調(diào)度要執(zhí)行的任務(wù)。
本通用智能終端中,任務(wù)AD轉(zhuǎn)換、開關(guān)量采集、LCD顯示、輸出控制等是合作式任務(wù),按照延遲時間和周期來順序執(zhí)行;鍵盤掃描分解成短任務(wù)處理;485通信為中斷式任務(wù),執(zhí)行上位機(jī)命令任務(wù),實(shí)際上大部分命令任務(wù)都是根據(jù)命令要求,改變某些變量或寄存器的內(nèi)容,執(zhí)行速度很快,可以每來一次命令執(zhí)行一次,屬于單次任務(wù)。由系統(tǒng)任務(wù)和調(diào)度器設(shè)計原則,給出調(diào)度器任務(wù)的屬性列表如表2所示。
表2 任務(wù)屬性表
3.2 主程序設(shè)計
本設(shè)計采用時間觸發(fā)的混合式調(diào)度器系統(tǒng),調(diào)度器根據(jù)任務(wù)的執(zhí)行周期和延遲時間來順序調(diào)度并執(zhí)行任務(wù),保證一次只處理一個事件,降低了CPU的負(fù)荷,減少了存儲器的使用量,從而增強(qiáng)了系統(tǒng)的可靠性和擴(kuò)展性,并使得系統(tǒng)低功耗設(shè)計易于實(shí)現(xiàn)。系統(tǒng)主程序主要包括系統(tǒng)初始化子程序和任務(wù)函數(shù)調(diào)度子程序。系統(tǒng)主程序流程如圖5所示
4 總結(jié)
通過對影響系統(tǒng)功耗的各種因素的分析,確定了要從硬件選擇和軟件設(shè)計兩方面同時考慮、軟硬結(jié)合來最大限度的降低功耗。本文研究的多用途低功耗儀表系統(tǒng), 可作為我國的水表、燃?xì)獗?、熱量表、電能表以及各種檢測儀、監(jiān)控器等急需電子智能化的實(shí)現(xiàn)方案。
本文作者創(chuàng)新點(diǎn): 本文以降低功耗作為主要目標(biāo),所研究的多用途低功耗儀表系統(tǒng),是便攜式、低功耗設(shè)備的一個比較具體的通用型實(shí)現(xiàn)方案。只要根據(jù)實(shí)際需要加上相應(yīng)的傳感器和修改一下具體軟件,該系統(tǒng)能夠方便的應(yīng)用于需要電池供電的多種檢測設(shè)備。