基于ARM的過采樣技術(shù)
2 過采樣滿足條件及操作步驟
對(duì)于過采樣,理論上需要信號(hào)有一定噪聲,并且必須近似白噪聲,幅度足夠大。若噪聲信號(hào)不能滿足前面講述的理論要求,就需要引入噪聲激勵(lì)。因此,選用周期性噪聲作為激勵(lì)信號(hào)。同時(shí)對(duì)激勵(lì)噪聲有一定要求:激勵(lì)噪聲幅度≥1 LSB;噪聲均值在添加激勵(lì)噪聲時(shí)必須是0.
在理解過采樣理論及需要滿足的條件后,出于對(duì)具體應(yīng)用的考慮,設(shè)計(jì)了過采樣的操作步驟,概括如下:
?。?)判斷被采樣信號(hào)是否有噪聲,如果沒有噪聲,則疊加周期性激勵(lì)噪聲。
?。?)對(duì)信號(hào)進(jìn)行4n次過采樣(n為希望增加的分辨率位數(shù))。如果使用片內(nèi)10位ADC,希望得到14位的ADC精度,則需要44即256次10位的過采樣。
?。?)抽取數(shù)字序列,對(duì)各個(gè)采樣值進(jìn)行累加。
?。?)對(duì)累加后的采樣數(shù)據(jù),若提高n位精度則右移n位,最終得到過采樣值。
3 LM3S8962實(shí)現(xiàn)ADC過采樣
3.1 Cortex-M3內(nèi)核特點(diǎn)介紹
(1)采用ARMv7M架構(gòu),在ARMv4T架構(gòu)基礎(chǔ)上擴(kuò)展了36條指令。
?。?)基于哈佛結(jié)構(gòu),數(shù)據(jù)與指令可同時(shí)從存儲(chǔ)器讀取,并行執(zhí)行多個(gè)操作,加快程序執(zhí)行速度。與ARM7TDMI-S相比,比ARM指令每兆赫效率提高了35%,比Thumh指令效率提高了70%.
?。?)帶有多種睡眠和喚醒模式,實(shí)現(xiàn)產(chǎn)品的低功耗。
?。?)單周期乘法、乘-加、硬件除法指令,實(shí)現(xiàn)快速運(yùn)算。
?。?)低延遲中斷處理:支持8層硬件中斷嵌套,末尾連鎖功能,高優(yōu)先級(jí)中斷遲來處理。
3.2 過采樣的軟件實(shí)現(xiàn)
?。?)外設(shè)初始化。
在軟件實(shí)現(xiàn)過采樣之前,必然要對(duì)各個(gè)模塊進(jìn)行初始化和配置。初始化定時(shí)器、ADC、UART等模塊,定時(shí)器模塊用來提供系統(tǒng)時(shí)鐘周期,配置ADC的觸發(fā)模式和采樣速率,利用UART將測量值傳遞給PC,方便查驗(yàn)是否正確。
?。?)產(chǎn)生PWM信號(hào),作為噪聲。
為了保證過采樣原理應(yīng)用的可靠性,引入噪聲激勵(lì)信號(hào)。而為了避免激勵(lì)噪聲出現(xiàn)的誤差,使用內(nèi)部的PWM信號(hào)發(fā)生器產(chǎn)生周期性和對(duì)稱性很好的PWM波,作為激勵(lì)噪聲。產(chǎn)生噪聲步驟如圖1所示。
?。?)數(shù)據(jù)的采集、濾波及抽取。
在過采樣中所做的數(shù)字平均濾波僅提高了平滑度,精度卻并沒有增加,抽取過程才是真正意義上的提高精度。額外的K次采樣,按照常規(guī)平均那樣進(jìn)行累加,但并不是直接將結(jié)果除以M,而是右移N位(N是期待所增加的額外精度),得到更精確的采樣結(jié)果。
過采樣算法如圖2所示。對(duì)TI的LM3S8962芯片,將10位AD值的精度提高到12位的方法,直接調(diào)用寄存器讀取函數(shù)HWREG訪問FIFO緩存區(qū),經(jīng)過兩次循環(huán),將從FIFO中收集到的16個(gè)10位轉(zhuǎn)換值相加,產(chǎn)生一個(gè)14位結(jié)果,右移2位后就得到所希望的12位AD值。
評(píng)論