[STM32F1] 检测出正弦波相邻的峰谷点个数乘于转换时间结果并不是zh

[复制链接]
1058|18
 楼主| houcs 发表于 2018-11-8 16:47 | 显示全部楼层 |阅读模式
给入正弦波频率2Hz 500ms,计算出波峰波谷半个周期共有313点。AD频率12M,239.5采样时间计算出21u采集转换一次,10点一个平均值。313*2*21u*10=131.46ms,这个数据严重小于500ms是哪里出错了呢。或者说这种方法根本就不能用,再或者说还有个读取时间???
xxrs 发表于 2018-11-8 16:51 | 显示全部楼层

313*2*21u*10=131.46ms
你这个公式不对吧,0.021MS吧;
liuzaiy 发表于 2018-11-8 16:57 | 显示全部楼层
可能主要时间差别在这个0.021ms吧,至于读取时间差多少,要看你具体程序怎么写的了;
 楼主| houcs 发表于 2018-11-8 17:01 | 显示全部楼层
12M 239.5+12.5=252,就是21us也就是0.021ms。我是用采集的点数乘0.021ms得到周期。请问这种方法本身就不对吗??
yinxiangh 发表于 2018-11-8 17:05 | 显示全部楼层
方法没问题的,不知道你程序怎么处理的;

还有你说的时钟12M,真正是不是12M,你都要查
yiy 发表于 2018-11-8 17:07 | 显示全部楼层
不要看AD频率要看转换一次时间。
 楼主| houcs 发表于 2018-11-8 17:08 | 显示全部楼层
我也感觉没问题因为只要转换了这个数就实实在在的存在。用的正点原子的F103开发板ADC例子,APB2倍频72M
6分屏给ADC。我自己仔细查找一下到底哪里丢失了数据。
pangb 发表于 2018-11-8 17:11 | 显示全部楼层
嗯,ADC什么模式呢?ADC+DMA
chenjunt 发表于 2018-11-8 17:18 | 显示全部楼层
还是再加中断触发?
ousj 发表于 2018-11-8 17:23 | 显示全部楼层
我一顿饭要吃半个小时,一个星期吃了21顿饭
21x0.5=10.5小时
而一个星期有24x7=168小时
为什么我一个星期只过了10.5个小时,这个数据严重小于168小时
或者说还有睡觉时间,一天10个小时一共70小时,加起来80.5小时,也不够啊
 楼主| houcs 发表于 2018-11-8 17:29 | 显示全部楼层
ADC是软件触发,没有DMA也没用到中断。我的目的是检测到峰值点谷值点立即从另一个IO口输出一个单次脉冲,实时性很强。做了个阈值法确实能检测到峰值点位置,但是问题来了:必须要对一段数据处理才能知道有没有峰谷值点,甚至一个或者多个,那么这样的话就错过峰谷值点了,再加上处理更加延迟了。所以根本达不到实时的目的,而且信号有噪声也没法用中间一个数和两边的数比较,有毛刺一定会误判。我的解决方法是计算出峰值点和零点的时间并记下这个时间t,下个零点过来时立即开启定时器定时时间t,时间一到立马输出脉冲波。然后再次计算零点和谷值点时间t1,依次递推。把峰值到零点时间给零点到谷值点用。
 楼主| houcs 发表于 2018-11-8 17:32 | 显示全部楼层
说的有道理,对MCU的功能理解不深,往兄台赐教。
 楼主| houcs 发表于 2018-11-8 17:38 | 显示全部楼层
zyf部长 发表于 2018-11-8 17:42 | 显示全部楼层
那时间可能还是花在你软件处理上吧
 楼主| houcs 发表于 2018-11-8 17:45 | 显示全部楼层
可能是采集转换时间不对,如果对的话乘于点数绝对是时间。
xxmmi 发表于 2018-11-8 17:48 | 显示全部楼层
ADC你不用DMA的话,怎么保证连续采样?这样你的实际采样间隔时间肯定是大于理论计算的21us的
 楼主| houcs 发表于 2018-11-8 17:53 | 显示全部楼层
DMA不是做数据搬运的吗。是不是说时间就花在cpu数据存储上?兄台可否赐教,让我死了这条心。我一直觉得峰值点和零点的点数乘时间等于四分之一个周期。我不用过零点是因为这个是类正弦信号,每四分之一周期也不一定相等,虽然差距不大但是为了提高精度。我很想这么做。请赐教
kangzj 发表于 2018-11-8 17:56 | 显示全部楼层
你要在250ms采集313个点
也就是你要以250/313=0.8ms的间隔采样
我们可以设置一个以0.8ms为周期的中断,在中断中采样
没次采样要取10点平均
可以设置10个rank,每个rank通道相同
在一次采样中转换10个rank的值
800us采集10次,设置好每次采样转换时间小于80us就行了
如果你理解了中断的方式,再换成dma也就不难了
 楼主| houcs 发表于 2018-11-8 18:02 | 显示全部楼层

哦,那我就知道怎么回事了,多谢大家,结贴了哈
您需要登录后才可以回帖 登录 | 注册

本版积分规则

743

主题

8382

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部