C8051F的示波器監(jiān)控程序設(shè)計
由于單片機的工作量并不大,所以軟件設(shè)計時采用查詢的方式。單片機不斷地查詢鍵盤、編碼開關(guān)以及電位器的狀態(tài),如果有變化時,單片機將動作信息傳遞給 ARM主MCU,等待主MCU的處理。由于單片機模數(shù)轉(zhuǎn)換的速度非??欤虼嗽诔绦蛑屑友訒r,以便觀察到模數(shù)轉(zhuǎn)換的變化量。另外,硬件設(shè)計時沒有考慮濾波,故用軟件實現(xiàn)濾波。一般的濾波的方法有限幅濾波法、中位置濾波法、算術(shù)平均濾波法等,現(xiàn)在提出一種新的濾波方法。由于使用12位A/D,但只要8位就可以達到所要的精度,所以可以采用去掉低4位的方法來實現(xiàn)濾波的目的。由于篇幅有限,下面只給出程序的一部分,以AIN0為例:

結(jié)語
本文介紹的一鍵多義的按鍵管理程序,對多按鍵的智能儀表可以通用。編碼開關(guān)的編程方法簡單易懂。在A/D轉(zhuǎn)換部分,提出的去掉低4位的軟件濾波方法可靠可行,對精度要求不高的場合非常適用。這3部分構(gòu)成了一個完整的監(jiān)控程序,當單片機監(jiān)控到某一部分有變化時,就將其動作信息傳遞給ARM主CPU,主CPU 進行相應(yīng)的處理。
評論