STC8H4K64TL的ADC,用作傅里叶变换
请教各位大神,关于STC8H4K64TL的ADC,用作傅里叶变换的例程有没有啊?帮忙讲讲原理也不胜感激:P:P:P你要计算什么?DFT?FFT?还是别的什么? 应用场景:通过PWM控制红外发射管的导通频率;然后再通过光电二极管(即硅光电池)接收红外管发出的红外光;光电二极管把红外光转换成电流,电流再经过电阻转换成电压,电压进入MCU自带的ADC进行采集。这里只采集采集PWM固定频率的电压值。我自己理解是先经过傅里叶变换,提取出固定频率的电压值,电压值再经过ADC进行转换。我应用的速度不是很快,不清楚该用DFT还是FFT?谢谢,麻烦您指教!
你这是DFT就可以了,只关注一个频率,更好的方法是,ADC后先数字带通滤波,比如4阶带通滤波,滤波结果再送DFT处理,数字滤波和DFT都是每个采样点就计算一次,实时处理的,用STC8系列跑30多M能计算到5KHz~10KHz采样。建议使用STC32G,速度快好几倍, 我的PWM频率为1khz,上面这个STC8H4K64TL就能满足我的应用,成本也合适。您有STC8H4K64TL它的DFT例程吗?麻烦您提供一下吧?我是STC的8位单片机的老用户了,谢谢啊 观照ZU 发表于 2023-2-25 14:15
我的PWM频率为1khz,上面这个STC8H4K64TL就能满足我的应用,成本也合适。您有STC8H4K64TL它的DFT例程吗?麻 ...
我没有现成的DFT代码,网上搜一搜,很容易拿到,相对FFT,其计算简单得多。 ADC后先数字带通滤波,比如4阶带通滤波。这个您指的是软件滤波还是硬件滤波啊? 观照ZU 发表于 2023-2-25 21:18
ADC后先数字带通滤波,比如4阶带通滤波。这个您指的是软件滤波还是硬件滤波啊? ...
数字滤波,当然是软件滤波。 您有对应的,4阶带通数字滤波在STC8H4K64TL上跑的C语言例程吗?
另外您知道单片机C语言,实现滤波算法和傅里叶变换相关书籍有哪几本吗?越基础越好,谢谢!!!
页:
[1]
2