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