基于凌陽SP-CEA061A單片機(jī)的頻率計(jì)設(shè)計(jì)方案
FIQ有3個(gè)中斷源,除FIQ_TMA和FIQ_TMB外,還有FIQ_PWM,若產(chǎn)生中斷,壓棧后采用查詢的方式確定中斷源。為FIQ_TMA中斷,表明計(jì)數(shù)值大于216-1,肯定超量程,設(shè)置1個(gè)超量程值50000作為計(jì)數(shù)結(jié)果,并停止計(jì)數(shù)器計(jì)數(shù)。為FIQ_TMB中斷,為頻率測量定時(shí)時(shí)間到,停止計(jì)數(shù)器計(jì)數(shù)。最后讀出測量結(jié)果,解除中斷出棧返回。圖4為動(dòng)態(tài)掃描顯示IRQ4中斷處理程序流程圖。
IRQ4有3個(gè)4實(shí)時(shí)時(shí)基中斷源:4069Hz,2048Hz和1024Hz,選用1024Hz作為動(dòng)態(tài)掃描頻率。中斷響應(yīng)后,首先壓棧保護(hù),再判斷是否為1024Hz時(shí)基中斷,否則,清除中斷出棧返回。若為1024Hz時(shí)基中斷,先對顯示數(shù)據(jù)刷新計(jì)數(shù)寄存器累加1,完成0.5s的定時(shí)計(jì)數(shù)。取出當(dāng)前顯示碼輸出緩沖區(qū)首地址,修改循環(huán)顯示位計(jì)數(shù)器。輸出顯示碼和顯示位碼。為了數(shù)碼顯示清晰,IOA口數(shù)據(jù)修改分三步完成:先清除IOA口數(shù)據(jù),使數(shù)碼管熄滅,再輸出顯示碼,最后輸出顯示位碼。
4 結(jié) 語
該頻率計(jì)的硬件電路簡單,容易制作。對SPCE061A加上必要的典型外圍電路就可工作,需要接入的電路有:32768的晶體振蕩電路、鎖相環(huán)濾波電路、復(fù)位電路和必要的濾波電路。電路可用3V供電。在對SPCE061A進(jìn)行初始化時(shí),把不用的端口設(shè)置為懸浮輸入方式,并注意屏蔽其功能。SPCE061A內(nèi)含看門狗計(jì)數(shù)器(Watch Dog),WatchDog的清除時(shí)間為0.75s,在主程序的循環(huán)內(nèi)必須清除。
評論