OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
12
返回列表 发新帖
楼主: yyx112358

【教程】使用STM32测量频率和占空比的几种方法(申请置酷!)

  [复制链接]

2

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2017-4-15
在线时间
27 小时
发表于 2017-4-24 14:40:26 | 显示全部楼层
感谢楼主,刚刚好最近学习涉及到这一块
正点原子逻辑分析仪DL16劲爆上市
回复 支持 反对

使用道具 举报

2

主题

47

帖子

0

精华

初级会员

Rank: 2

积分
187
金钱
187
注册时间
2017-4-15
在线时间
27 小时
发表于 2017-4-26 21:29:08 | 显示全部楼层
回复 支持 反对

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2017-4-20
在线时间
5 小时
发表于 2017-5-8 14:49:58 | 显示全部楼层
可以给个完整的测频率的电路图的连接吗?拜托了,1270248309@qq.com
回复 支持 反对

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2017-4-20
在线时间
5 小时
发表于 2017-5-8 14:51:14 | 显示全部楼层
白夔草 发表于 2017-2-16 19:08
请问有没有相关例子或资料?QQ748550631.我还是不太明白整个过程(Ps:初学者)

有没有要到例子   chenkds@163.com  发一份  谢谢
回复 支持 反对

使用道具 举报

2

主题

6

帖子

0

精华

新手上路

积分
27
金钱
27
注册时间
2017-4-20
在线时间
7 小时
发表于 2017-5-9 08:40:23 | 显示全部楼层
值得学习
回复 支持 反对

使用道具 举报

4

主题

197

帖子

0

精华

高级会员

Rank: 4

积分
977
金钱
977
注册时间
2017-3-11
在线时间
78 小时
发表于 2017-5-12 19:55:08 | 显示全部楼层
我想知道思路四的原理是什么?计数跟测量频率有什么关系?请指教
回复 支持 反对

使用道具 举报

4

主题

197

帖子

0

精华

高级会员

Rank: 4

积分
977
金钱
977
注册时间
2017-3-11
在线时间
78 小时
发表于 2017-5-16 12:35:19 | 显示全部楼层
测量出来的频率怎么进行数据处理 有什么方法?
回复 支持 反对

使用道具 举报

4

主题

197

帖子

0

精华

高级会员

Rank: 4

积分
977
金钱
977
注册时间
2017-3-11
在线时间
78 小时
发表于 2017-5-23 21:30:10 | 显示全部楼层
老哥 求 当年的电赛文档?
回复 支持 反对

使用道具 举报

8

主题

22

帖子

0

精华

初级会员

Rank: 2

积分
79
金钱
79
注册时间
2017-1-24
在线时间
27 小时
发表于 2017-7-9 10:51:29 | 显示全部楼层
楼主~你的第四个思路的代码,也就是外部计数的代码能用吗?我这里感觉这段代码缺东西哇~
回复 支持 反对

使用道具 举报

8

主题

45

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
441
金钱
441
注册时间
2016-9-2
在线时间
59 小时
发表于 2017-7-13 20:10:26 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

初级会员

Rank: 2

积分
60
金钱
60
注册时间
2017-5-23
在线时间
14 小时
发表于 2017-7-14 11:02:02 | 显示全部楼层
看完觉得有两个问题:
(1)进入中断时间太频繁导致不准(2)使用硬件测量不准
是否考虑直接轮询加通讯?
轮询就是简单判断IO高低值进而记录上升时间和下降时间记录数据。(轮训时间误差应该可以计算出来)
通讯是解决除了轮训任务外的任何时间影响,两个芯片解决这问题。
回复 支持 0 反对 1

使用道具 举报

0

主题

1

帖子

0

精华

新手上路

积分
30
金钱
30
注册时间
2017-7-9
在线时间
8 小时
发表于 2017-7-18 21:04:29 | 显示全部楼层
本帖最后由 游哉 于 2017-7-18 21:10 编辑

请教一下具体怎样用线性补偿修正呀?我测到1M的时候误差就差不多50Hz,5M的时候差不多250Hz…不知道该怎么修正
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2017-7-26
在线时间
3 小时
发表于 2017-7-26 15:55:47 | 显示全部楼层
测量3.5mhz方波信号的占空比,ADC_POOLSIZE设为多大合适呢,用F1的板子,多通道采样ADC其他通道采集的数据也是ADC_POOLSIZE个吗?
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
61
金钱
61
注册时间
2015-5-21
在线时间
8 小时
发表于 2017-7-28 16:51:13 | 显示全部楼层
那个中断函数里面有RETURN,我想请教下 后面的TIMx-SR =0 ,这句还能执行到吗?
回复 支持 反对

使用道具 举报

3

主题

53

帖子

0

精华

初级会员

Rank: 2

积分
145
金钱
145
注册时间
2017-7-29
在线时间
18 小时
发表于 2017-7-29 11:12:36 | 显示全部楼层
强,学习了, 不错
回复 支持 反对

使用道具 举报

0

主题

48

帖子

0

精华

初级会员

Rank: 2

积分
161
金钱
161
注册时间
2016-11-25
在线时间
28 小时
发表于 2017-8-7 22:19:19 | 显示全部楼层
mark、、、、、
回复 支持 反对

使用道具 举报

头像被屏蔽

50

主题

178

帖子

0

精华

禁止访问

积分
344
金钱
344
注册时间
2016-12-22
在线时间
19 小时
发表于 2017-8-9 15:34:50 | 显示全部楼层
学习了
回复 支持 反对

使用道具 举报

1

主题

49

帖子

0

精华

初级会员

Rank: 2

积分
123
金钱
123
注册时间
2017-8-21
在线时间
32 小时
发表于 2017-8-21 11:31:13 | 显示全部楼层
真的很不错
回复 支持 反对

使用道具 举报

0

主题

13

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2017-8-23
在线时间
2 小时
发表于 2017-8-23 14:57:16 | 显示全部楼层
很详细,很有钻研精神!
回复 支持 反对

使用道具 举报

23

主题

94

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1113
金钱
1113
注册时间
2016-8-26
在线时间
256 小时
发表于 2018-3-21 09:51:46 | 显示全部楼层
请教楼主,使用外部时钟计数方式来统计脉冲个数,如果脉冲比较稳定(波形规则)、但是不连续(有时脉冲个数多、有时个数少),这种情况怎么解决?
回复 支持 反对

使用道具 举报

15

主题

93

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1761
金钱
1761
注册时间
2013-8-22
在线时间
128 小时
发表于 2018-3-21 11:01:17 | 显示全部楼层
不错的主题,学习一下了。
我用IO中断做了个步进电机的脉冲计数器,单轴最高频率到230KHz,再高就不行了,接下来我要试一下楼主的方案了
我不理财,财就不理我。
回复 支持 反对

使用道具 举报

20

主题

138

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
339
金钱
339
注册时间
2012-10-11
在线时间
134 小时
发表于 2018-3-23 17:19:27 | 显示全部楼层
谢谢楼主分享!
回复 支持 反对

使用道具 举报

3

主题

144

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
498
金钱
498
注册时间
2018-3-5
在线时间
59 小时
发表于 2018-3-23 17:32:07 | 显示全部楼层
谢谢分享,不愧是一等奖,赞!
回复 支持 反对

使用道具 举报

9

主题

63

帖子

0

精华

高级会员

Rank: 4

积分
567
金钱
567
注册时间
2017-7-27
在线时间
99 小时
发表于 2018-4-9 20:32:52 | 显示全部楼层
大神,按照用两个通道分别侧上升沿和下降沿,那么在接线的时候,那两个引脚该怎么与信号发生器的正输出端连?是两个引脚同时和正输出端连吗?
回复 支持 反对

使用道具 举报

41

主题

242

帖子

0

精华

高级会员

Rank: 4

积分
523
金钱
523
注册时间
2016-1-11
在线时间
132 小时
发表于 2018-5-17 19:32:53 | 显示全部楼层
 if(edge==RESET)//上升沿
                {
                       [b] rising=TIM5->CCR1-rising_last;
                        rising_last=TIM5->CCR1;
                        TIM_OC1PolarityConfig(TIM5,TIM_ICPolarity_Falling); //CC1P=0 设置为上升沿捕获
                        edge=SET;
                }
                else
                {
                        falling=TIM5->CCR1-rising_last;
                        TIM_OC1PolarityConfig(TIM5,TIM_ICPolarity_Rising); //CC1P=0 设置为上升沿捕获
                        edge=RESET;
               }

                sprintf(str,"Freq:%.2f Hz\nDuty:%.3f\n",90000000.0/rising,(float)falling/(float)rising);//频率、占空比???????????  道友,在下请教。 你这个好像只能获取占空比吧?你用主频/rising 干嘛?/rising不是CCR1的前一个脉冲和后一个脉冲计数(cnt)的差值吗?
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手上路

积分
42
金钱
42
注册时间
2018-4-21
在线时间
5 小时
发表于 2018-5-20 23:03:25 | 显示全部楼层
牛逼啊老哥666
回复 支持 反对

使用道具 举报

0

主题

5

帖子

0

精华

新手上路

积分
21
金钱
21
注册时间
2018-7-4
在线时间
2 小时
发表于 2018-7-5 15:12:10 | 显示全部楼层
大神,你这个源代码能够发我学习吗?非常感谢
回复 支持 反对

使用道具 举报

17

主题

170

帖子

0

精华

高级会员

Rank: 4

积分
562
金钱
562
注册时间
2018-7-8
在线时间
118 小时
发表于 2018-8-7 12:18:35 | 显示全部楼层
楼主你好,请问您有完整的“使用KEIL C51实现的简单合作式多任务操作系统内核”的代码吗?
回复 支持 反对

使用道具 举报

2

主题

56

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1394
金钱
1394
注册时间
2014-12-31
在线时间
187 小时
发表于 2018-8-9 08:18:13 | 显示全部楼层
yyx112358 发表于 2016-8-29 19:37
一个上升,一个下降,这不是只能够获得一次高电平或者低电平时间吗?频率没法测啊

当前上升沿和下一个上升沿之间就是频率。
回复 支持 反对

使用道具 举报

23

主题

151

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1459
金钱
1459
注册时间
2015-8-11
在线时间
204 小时
发表于 2018-8-9 08:35:55 | 显示全部楼层
学习!
回复 支持 反对

使用道具 举报

20

主题

227

帖子

0

精华

高级会员

Rank: 4

积分
605
金钱
605
注册时间
2017-7-14
在线时间
116 小时
发表于 2018-8-9 15:53:00 | 显示全部楼层
不错不错
回复 支持 反对

使用道具 举报

1

主题

232

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3312
金钱
3312
注册时间
2015-4-19
在线时间
364 小时
发表于 2020-11-27 13:30:52 | 显示全部楼层
谢谢大侠分享!
回复 支持 反对

使用道具 举报

3

主题

22

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
206
金钱
206
注册时间
2018-6-13
在线时间
43 小时
发表于 2021-2-7 09:39:48 | 显示全部楼层
厉害了!
回复 支持 反对

使用道具 举报

3

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
128
金钱
128
注册时间
2021-3-4
在线时间
28 小时
发表于 2021-12-8 10:44:52 | 显示全部楼层
你好你好,我根据你的     思路四:使用外部时钟计数器     把代码移植到stm32f103rct6上了,但 显示结果一直是一个很大的数,且数值不变
回复 支持 反对

使用道具 举报

3

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
154
金钱
154
注册时间
2021-3-19
在线时间
51 小时
发表于 2022-1-13 11:44:19 | 显示全部楼层
不错不错  mark
回复 支持 反对

使用道具 举报

14

主题

821

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2033
金钱
2033
注册时间
2021-7-17
在线时间
635 小时
发表于 2022-2-28 16:35:45 | 显示全部楼层
学习   
回复 支持 反对

使用道具 举报

2

主题

3

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2020-1-3
在线时间
16 小时
发表于 2023-2-18 15:27:26 | 显示全部楼层
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
9
金钱
9
注册时间
2023-7-23
在线时间
2 小时
发表于 2023-8-8 16:54:25 | 显示全部楼层
踩下眼
回复 支持 反对

使用道具 举报

0

主题

4

帖子

0

精华

新手上路

积分
33
金钱
33
注册时间
2019-3-4
在线时间
6 小时
发表于 2024-5-27 09:42:05 | 显示全部楼层
相当有用~我想挨个试一下~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 10:16

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表