·上一文章:基于MSP430单片机及USB总线的便携式血压计的设计
·下一文章:UOC-TOP-80系列芯片在CRT电视上的应用
2 软件设计
音频系统主循环如图3所示。
(1)经过采样、A/D转换完成后,清除A/D使能标志,得到离散化的数字信号。
(2)调用周期判定函数,实现对信号周期性的分析。
(3)调用FFT变换函数,对离散信号的快速傅里叶变换,实现时域到频域的变换。
(4)显示输入信号的频谱。
(5)计算信号的功率谱及计算最大功率。
(6)显示信号的功率谱及最大功率。
2.1 A/D采样
理论分析:因12位的A/D模块,故量化单位为1/212,因频率分辨率△f=100 Hz、FFT的子样本点数N=512,故采样频率fs=51 200 Hz(fs≤N△f)、采样周期Ts=1/51 200 s(采样周期一采样时间+转换时间)。因振荡频率为7.37 MHz,故指令周期TCY=(1/7.37)×4=O.5μs。
实际控制:转换时间为14个TAD(为正确A/D转换,TAD=333.33 ns)。所以,配置A/D自动采样时间为6个TAD,A/D转换时钟为16TCY,则A/D转换总时间为0.092 ms,采样频率为10.87 kHz。
A/D模块工作在系统时钟源、自动转换模式,每完成一次转换进入一次中断。在程序中应该定义一个采样点数的结构体,用于存放A/D采集到的数据,每个结构体内包括一个实部和一个虚部。在中断服务子程序中,由A/D模块采集到的数字量存储到结构体的实部,共进行采样点数次转换,中断服务子程序的流程如图4所示。