ADC內核完成將模擬信號轉換成12位數據并存入轉換存儲寄存器中,輸入模擬電壓的最終結果滿足公式:
本論文要求有pH值信號和溫度信號兩路模擬信號進行A/D轉換,為了減少誤差,可采用多次取值然后取平均值的方法,故采用序列通道多次轉換模式。
在應用ADC轉換模塊時MSP430系列的微處理器都可以使用中斷函數,只要用一條命令就可以進入到A/D轉換中斷,在低功耗模式下進行轉換,轉換完成后叫醒CPU就可以回到主程序繼續執行其他命令,簡單、方便。
由于直接進入微處理器的是傳感器電極輸出的模擬電信號,而模擬信號在轉換成數字信號以后才可以被單片機接受和處理,MSP430F149內部集成的12位精度的A/D轉換模塊內置參考電平發生器和采樣保持電路,具有較強的抗干擾能力,能夠滿足控制器對八路外部信號進行采樣,流程圖中的A0和A1為用于pH信號和溫度信號轉換的兩個通道,將最后的均值用于數據處理,分別為MSP430F149端口P1.0和P1.1.
3,4 按鍵工作方式設計
按鍵的工作方式決定這相應的子程序如何獲得按鍵的鍵值以確定程序的流程。在單片機系統中,按鍵工作方式有兩種,即查詢掃描方式和中斷方式。
查詢掃描方式是指承訓一旦進入按鍵掃描方式,就反復不停或利用單片機內部定時器產生的中斷每隔一定時間對按鍵進行掃描,如有鍵按下則轉去執行相應子程序,如沒有鍵按下則繼續掃描按鍵狀態。
中斷方式是指CPU不主動對按鍵掃描,當有鍵按下時,按鍵閉合,鍵盤板產生一個信號,通過可屏蔽中斷告知CPU,若此時CPU允許中斷則進入中斷處理子程序。
在智能pH計設計中,由于儀器的控制板上除開關機按鍵外只有一個按鍵用于進入校正子程序,如選用查詢掃描方式,無異會造成CPU的浪費,故本實驗中按鍵工作方式采用中斷方式,可有效提高軟件的執行效率。
程序相對來說比較簡單,一個按鍵對應著一個端口的一位,將需要使用的端口設置為讀入狀態,在確定鍵被按下前,要經過一段時間的延時,起到去抖和防止誤按的作用。如經軟件判斷確有鍵按下,則進入校正子程序,否則直接進入檢測狀態。
3.5FLASH存儲的讀寫
FLASH技術結合了OTP存儲器的成本優勢和EEPROM的可再編程性能,可以使用盡可能小的開銷來發揮EEPROM的最大靈活性。MSP430F149的嵌入式FLASH存儲器同EEPROM一樣是可電擦除并且可編程存儲器,主要特點如下:
- 編程可以使用位、字節和字操作
- 可以通過JTAG、BSL和ISP進行編程。
- 1.8V-3.6V工作電壓,2.7V-3.6V編程電壓。
- 擦除/編程次數可達100000次。
- 數據保持時間從10年到100年不等。
- 60KB空間編程時間<5秒
- 保密熔絲燒斷后不可恢復,不能再對JTAG進行任何訪問。
- FLASH編程/擦除時間由內部硬件控制,無需軟件干預。
FLASH存儲器具有如下優點:調電后數據不丟失、數據存儲速度快、電可擦除、容量大、在線可編程、足夠多的擦寫次數、價格低廉、高可靠性。FLASH基本可以取代EEPROM,只是擦除操作不能一個字節一個字節擦除,只能一段一段進行。
MSP430F149的FLASH存儲器模塊是由128段主存儲器與2段信息存儲器組成。信息存儲器為每段128字節,地址為1000H-10FFH,分別為信息存儲器A和B。主存儲器每段為512字節,其地址范圍為1100H-FFFFH。
對FLSAH模塊有3種操作:讀、寫及擦除。讀很簡單,可使用各種尋址方式,借助指令就可以輕松完成。擦除與寫入需要按其固有的操作過程,通過控制FLASH模塊的3個控制字中的相應位來完成,只有控制位的唯一組合才能實現相應的功能。
MSP430F149的Flash模塊的讀寫程序,在編寫程序時可以將讀和寫分別用一個函數來完成,當需要使用時直接調用函數即可,如果寫入的數據是在一段時間里不被擦除的,可以在寫入后鎖定,當然改寫時要先解鎖。本實驗中主要使用它來存儲電極傳感器經過校正后的一些數據,這些數據在進行pH值計算和溫度補償時要被調用出來,保證輸出的數值在此溫度下,電極此時老化情況下正確。
|