魏英歌
(浙江省杭州市士蘭微電子股份有限公司,浙江 杭州 310012)
本次設計主控芯片采用高性能低功耗微控制器MSP430F149,硬件部分主要分測量、輸出、電源三部分,其中,測量、輸出部分是互相獨立且隔離的。電源部分為測量、輸出、液晶背光部分提供電源,同時通過CPU控制電池充電。測量部分完成毫伏、電壓、電流、電阻(包括三線制),頻率這些基本量的測量。輸出部分完成毫伏、電壓、電流、電阻,頻率這些基本量的輸出。測量和輸出除頻率外能同時工作。通過CPU計算,能將這些基本量轉化成熱阻和熱偶的溫度信號,完成溫度信號的測量和輸出。人機界面部分采用了124*68的液晶模塊,按鍵采用4*4薄膜按鍵。采用6節1800mAH的NiMH電池供電,充電時用一個外部15伏穩壓電源插在電源插孔上,由CPU控制充電電流和時間,完成一次電池充電大約需要6小時,充電后,連續使用時間大于16小時。

此次設計結構上分測量、輸出、電源三部分,其中,測量、輸出部分是互相獨立且隔離的。
按下電源開關后,CPU接通輸入輸出部分的電源,對輸入輸出部分的A/D做初始化,然后轉入正常工作狀態,此時,CPU一方面命令測量板處于電壓測量模式,另一方面等待響應操作者的按鍵動作。
體現在軟件結構上,CPU對A/D做初始化后,啟動RTX實時操作系統,創建測量、輸出、顯示、鍵盤處理等任務,并進入任務流轉的正常工作狀態。當鍵盤處理任務檢測到按鍵后,向相關的測量或輸出任務發送消息,測量或輸出任務接到消息后,首先通過控制總線向相應板卡發送控制命令,切換好功能開關或量程開關。接著,如果是測量命令,則對選好的量程用內置的標準信號進行標定,然后,切換到測量狀態進行測量。如果是輸出命令,首先輸出一個初值,然后,用反饋回路測得的值對輸出進行微調直至到給定輸出精度。在這些任務的執行過程中,其他任務一直在被輪流執行著。
當外部充電電源插在多功能校準儀上時,CPU檢查到相應管腳上的高電平,于是創建充電任務,該任務首先啟動電池的快充過程,并同時檢測電池電壓(CPU的一個管腳可以測量電池電壓模擬量),判斷快充階段結束的依據是負增量和最大時間??斐浣Y束后,CPU控制電源板上的充電電路轉入慢充狀態,慢充時間一般定時為2小時。
當用戶按下電源按鍵時,CPU關閉測量和輸出部分的電源并轉入睡眠狀態以節省電源消耗。當用戶再次按下電源鍵時,CPU被喚醒并轉入本部分開始所述的工作狀態。
特別值得一提的是,整個系統的軟件部分主要是采用實時操作系統進行調度的,各任務采用時間片輪轉法與oswait()設定讓權等待時間進行切換與調度。操作系統采用TIMERA進行系統中斷,每1000us(用INT_CLOCK設定)中斷一次,控制各任務的調度與切換。每個任務即是一個死循環,通過設定TIMESHARING設定每個任務的最大運行時間。在每個任務中可用oswait()函數設置強制讓權時間,也可直接按系統設置的最大運行時間運行。
本系統共有以下幾個任務:實時電量檢測任務、充電任務、畫面顯示控制任務、鍵檢測任務、測量任務、輸出任務、睡眠任務(當儀表處于關機狀態時,進入睡眠減小功耗)、關機任務(在關機任務里掃描用戶有無對關機鍵進行操作。可對系統起保護作用。當程序萬一意外死機后用戶可按關機鍵重新啟動系統,使儀表能重新正常工作)。
本次產品化設計精度要求0.05%,經過長達兩年的艱苦工作,實測指標優于0.025%,溫漂優于每10度0.025%,24小時時漂優于0.01%。目前此產品已成功推向市場,并形成了一個系列產品,獲得了用戶的好評。
[1]劉魯新,權進國,林孝康.ARM9處理器與ARM7處理器比較[D].電子技術應用,2004-11-25.