<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于凌陽(yáng)SP-CEA061A單片機的頻率計方案設計

基于凌陽(yáng)SP-CEA061A單片機的頻率計方案設計

作者: 時(shí)間:2012-02-18 來(lái)源:網(wǎng)絡(luò ) 收藏

1 引言

是反映信號特性的基本參量之一,測量在應用電子技術(shù)領(lǐng)域有著(zhù)重要的地位,數字化處理技術(shù)使得測量?jì)x器設備功能完美,但數字處理的實(shí)時(shí)性受到處理速度的限制,實(shí)時(shí)測量對電路的處理速度要求越來(lái)越高,目前的微控處理芯片發(fā)展速度,出現諸如DSP,FPJA等不同領(lǐng)域的應用芯片。

本文引用地址:http://dyxdggzs.com/article/172060.htm

作為主要應用于數字語(yǔ)音領(lǐng)域的,有著(zhù)豐富的硬件資源、可低于3V的工作電壓、較低的功耗和高達約50MHz的時(shí)鐘工作,相對于通用的51系列、96系列等,無(wú)疑有更佳的性能。特別是SPCE061A內置32k字FLASH存儲器、多時(shí)基選擇定時(shí)器、兩路D/A轉換器和一路A/D轉換器,使他在便攜式測量?jì)x器中應用更有前景。

2 硬件資源配置

該頻率計能測量1Hz-20MHz以上頻率的脈沖信號,具有較寬的測量范圍,最高輸出4位有效顯示值,采用4位BCD七段顯示碼動(dòng)態(tài)掃描輸出。其工作框圖見(jiàn)圖1。圖中顯示部分采用數碼管需增加驅動(dòng)電路擴大驅動(dòng)電流,用以保護SPCEA061A。



設置SPCEA061A的工作時(shí)鐘頻率fCPU=fOC=24.576MHz為。利用定時(shí)器B(TimerB)定時(shí)時(shí)間作為頻率測量的時(shí)基,定時(shí)1S,100ms,10ms,1ms,0.1ms五檔的脈沖計數時(shí)間,定時(shí)器B的時(shí)鐘源和預置寄存器載入數據見(jiàn)標表1,考慮程序工作存在延時(shí)存在計數誤差,高檔位的預置寄存器數據應根據實(shí)際情況適當調整校準。定時(shí)器A(TimerA)10ms、作為頻率測量計數器,被測信號從SPCEA061A的I/O端口B口的IOB2輸入。TimerA和TimerB采用FIQ中斷工作模式。

設置I/O端口A(yíng)口的低7位IOA0-IOA6輸出BCD七段顯示碼,IOA7輸出小數點(diǎn)。IOA8-IOA10分別輸出Hz,kHz,MHz測量單位指示。IOA12-IOA15為動(dòng)態(tài)掃描輸出端口,循環(huán)選擇4位數碼管,此時(shí)A口的低8位IOA0-IOA7輸出對應數字的BCD七段顯示碼。顯示碼輸出采用中斷



3 測量處理流程

頻率測量的控制和數據處理由SPCE061A通過(guò)程序完成,圖2為主程序的流程圖。



進(jìn)行初始化開(kāi)始頻率測量,首先對測量結果進(jìn)行判斷當前的測量量程是否合適;4位顯示數據范圍是1000-9999,大于9999判斷為超量程,而小于1000為欠量程;根據測量結果的判斷依次增加(超量程)和減少(欠量程)測量時(shí)間檔位,并設置數據相應的小數點(diǎn)位置和單位。對量程合適(1000-9999范圍)的結果進(jìn)行二進(jìn)制到十進(jìn)制的轉換并譯碼成七段顯示碼,加入小數點(diǎn)顯示位和單位指示位形成顯示碼。

顯示數據刷新時(shí)間是顯示結果更新的時(shí)間間隔。為了能較好地觀(guān)測到穩定的顯示數據,一般設為0.5s左右更新顯示數據。通過(guò)對IRQ4的1024Hz中斷響應進(jìn)行計數5000次可獲得約0.5s的顯示數據刷新時(shí)間。在內部RAM中開(kāi)辟兩個(gè)顯示碼存儲緩沖區,一個(gè)用于存儲當前正在譯碼的顯示碼,一個(gè)用于存儲正在輸出的顯示碼。查詢(xún)顯示數據刷新時(shí)間寄存計數器,當刷新時(shí)間到時(shí),只要互換2個(gè)顯示碼存儲緩沖區的首地址就能達到1個(gè)指令就能更換多個(gè)數據的目的,避免由于中斷而造成顯示數據出現不一致的狀況。更換完顯示數據后接著(zhù)啟動(dòng)計數器TimerA和TimerB進(jìn)行下一次的測量,頻率計每約0.5s測量一次,避免在高頻測量時(shí)由于測量時(shí)間短而造成TimerA和TimerB頻率中斷占用系統資源。TimerA和TimerB在FIQ中斷處理程序中,自動(dòng)設置停止計數,等待啟動(dòng)狀態(tài)。

SPCE061A有豐富的中斷源,本系統使用了3個(gè)中斷源:FIQ_TMA,FIQ_TMB和_IRQ4。FIQ用于頻率測量,_IRQ4用于動(dòng)態(tài)掃描顯示。

圖3所示為頻率計數測量FIQ中斷處理程序流程圖。


上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>