FFT变换之后数据都是幅值都是0,是咋回事
请问各位大佬,下面raw_FFTTEST_data是我每秒采集的512个数据,是int6_t类型的,但是变换之后输出的幅值都是0,是咋回事啊本帖最后由 toofree 于 2018-10-17 10:20 编辑
FFT是时域转频域,转换后需要找到频点,在对应频点上才有幅值。
那么问题来了,你找到的频点是多少?
自己产生个特定频率的正弦波数组,然后FFT一下,得到频率和幅值,先验证一下。
为什么一个*2,一个不*2呢?前面是8位,后面是16位吗?如果是这样的。他取值的时候只取低8位。 toofree 发表于 2018-10-17 10:18
FFT是时域转频域,转换后需要找到频点,在对应频点上才有幅值。
那么问题来了,你找到的频点是多少?
自己 ...
这个传感器是每秒发出512个数据,采样点我取的512,最后真实的频率点应该是0-511hz,中间间隔1,对吗 安 发表于 2018-10-17 10:22
为什么一个*2,一个不*2呢?前面是8位,后面是16位吗?如果是这样的。他取值的时候只取低8位。 ...
raw_input_512Hz和raw_FFTTEST_data都是int6_t类型的;raw_FFTTEST_data是要被输入的512个数据 从代码上看,奇数都是0,偶数是实际的数据,看一下处理数据时,处理的是奇数还是偶数。 toofree 发表于 2018-10-17 10:18
FFT是时域转频域,转换后需要找到频点,在对应频点上才有幅值。
那么问题来了,你找到的频点是多少?
自己 ...
用正弦函数正常。下面是MATLAB里面的
PS:为啥回复不能带图片 安 发表于 2018-10-17 11:03
从代码上看,奇数都是0,偶数是实际的数据,看一下处理数据时,处理的是奇数还是偶数。 ...
输入用正弦函数正常。
hu9977 发表于 2018-10-17 11:26
用正弦函数正常。下面是MATLAB里面的
PS:为啥回复不能带图片
右上角高级模式里可以上传图片 先用浮点API试试
页:
[1]
2