程可知:(1)定時器每次溢出中斷時,WAIT語句必須執(zhí)行完才能響應(yīng),該條指令的執(zhí)行時間為2μs,我們?nèi)∑淦骄舆t時間為1μs;(2)CPU響應(yīng)中斷到執(zhí)行中斷服務(wù)程序首條指令至少需3個完整的機(jī)器周期,即延時3μs;(3)中斷服務(wù)程序中實(shí)際的定時時間是在執(zhí)行完時間常數(shù)的裝載指令后才開始,兩條裝載指令占用4μs。根據(jù)以上分析。每次中斷后,將延遲約8μs后才開始定時。實(shí)際獲得的定時時間必須考慮到8μs的延遲,該頻率計(jì)采用軟件補(bǔ)償?shù)奶幚矸椒▉斫档推溆绊憽S捎谲浖拚喈?dāng)方便在儀器調(diào)試中可作進(jìn)一步的調(diào)整,因此基本上可消除軟件誤差。
頻率計(jì)根據(jù)被測信號頻率的大小,軟件控制自動切換頻率檢測時間,或自動轉(zhuǎn)換為周期測量,其軟件設(shè)計(jì)采用模塊化結(jié)構(gòu)設(shè)計(jì),程序設(shè)計(jì)與調(diào)試都很方便,功能擴(kuò)充也很靈活。單片機(jī)上電復(fù)位后,首先執(zhí)行主程序,完成有關(guān)芯片和定時器的初始化,設(shè)置數(shù)據(jù)緩沖區(qū)、顯示方式、數(shù)據(jù)計(jì)數(shù)器初值及頻率初測方式等。開中斷后,隨時檢測外部中斷和定時器所發(fā)出的中斷請求信號,一旦有則轉(zhuǎn)入相應(yīng)的中斷服務(wù)程序,否則返回顯示程序,顯示所測的頻率值。
5. 結(jié)束語
本文通過比較以往電子計(jì)數(shù)測頻原理、電子計(jì)數(shù)測周期原理的分析,結(jié)合單片機(jī)定時/計(jì)數(shù)器的工作原理,給出了等精度測量原理以及軟件誤差的消除方法。實(shí)現(xiàn)起來簡單可靠且性能穩(wěn)定、精度高、性價比低等優(yōu)點(diǎn)。





