OpenEdv-开源电子网

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

不占用定时器(包括SysTick)实现精确延时又一方法

  [复制链接]

0

主题

416

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1002
金钱
1002
注册时间
2016-11-25
在线时间
181 小时
发表于 2017-1-10 08:21:53 | 显示全部楼层
正点原子逻辑分析仪DL16劲爆上市
回复 支持 1 反对 0

使用道具 举报

23

主题

323

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1010
金钱
1010
注册时间
2016-11-8
在线时间
233 小时
发表于 2017-1-10 08:34:00 | 显示全部楼层
回复 支持 反对

使用道具 举报

15

主题

866

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
7369
金钱
7369
注册时间
2016-11-30
在线时间
632 小时
发表于 2017-1-10 08:54:26 | 显示全部楼层
mark!很酷,学习了!
回复 支持 反对

使用道具 举报

6

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
341
金钱
341
注册时间
2015-9-22
在线时间
32 小时
发表于 2017-1-10 09:06:20 | 显示全部楼层
不错不错,很好啊,如果对系统其他性能是否有影响再给出深入的解读,那就更好了,如果时间允许,我或许可以测试下这个功能,验证下
嵌入式开发微信公众号:嵌入式STM32软硬件开发
STM32交流,加好友,Q707372788
STM32交流群:383260480
回复 支持 反对

使用道具 举报

4

主题

125

帖子

1

精华

高级会员

Rank: 4

积分
870
金钱
870
注册时间
2014-8-7
在线时间
49 小时
发表于 2017-1-10 10:32:44 | 显示全部楼层
回复 支持 反对

使用道具 举报

43

主题

481

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1352
金钱
1352
注册时间
2014-12-24
在线时间
321 小时
发表于 2017-1-10 13:02:48 | 显示全部楼层
mark
这个强大!
回复 支持 反对

使用道具 举报

13

主题

314

帖子

0

精华

高级会员

Rank: 4

积分
713
金钱
713
注册时间
2012-7-20
在线时间
102 小时
发表于 2017-1-10 14:02:54 | 显示全部楼层
很巧妙~!
回复 支持 反对

使用道具 举报

2

主题

9

帖子

0

精华

新手上路

积分
46
金钱
46
注册时间
2017-1-5
在线时间
8 小时
发表于 2017-1-16 16:57:25 | 显示全部楼层
请问楼主这个方法适用于哪个型号的板子,stm32f103怎么搞
回复 支持 反对

使用道具 举报

JonSnow 该用户已被删除
发表于 2017-1-17 11:10:40 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

5

主题

46

帖子

0

精华

初级会员

Rank: 2

积分
162
金钱
162
注册时间
2016-7-28
在线时间
41 小时
发表于 2017-2-13 11:32:12 | 显示全部楼层
强,高手!
回复 支持 反对

使用道具 举报

5

主题

62

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
368
金钱
368
注册时间
2015-9-7
在线时间
82 小时
发表于 2017-2-13 13:51:37 | 显示全部楼层
mark 以下  学习了
回复 支持 反对

使用道具 举报

5

主题

62

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
425
金钱
425
注册时间
2016-3-9
在线时间
74 小时
发表于 2017-2-24 23:16:28 | 显示全部楼层
ucos-iii中的时间戳就是用它来实现的
回复 支持 反对

使用道具 举报

8

主题

145

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
462
金钱
462
注册时间
2016-12-14
在线时间
75 小时
发表于 2017-2-25 14:21:35 | 显示全部楼层
先收藏下,以后会用到
书山有路勤为径,学海无涯苦作舟!
回复 支持 反对

使用道具 举报

0

主题

27

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
463
金钱
463
注册时间
2014-1-11
在线时间
95 小时
发表于 2017-3-8 09:38:08 | 显示全部楼层
不明觉厉啊,有点不明白
回复 支持 反对

使用道具 举报

7

主题

72

帖子

0

精华

高级会员

Rank: 4

积分
620
金钱
620
注册时间
2016-10-20
在线时间
74 小时
发表于 2017-3-10 22:11:10 | 显示全部楼层
cqzww 发表于 2013-9-27 11:10
回复【7楼】谷子木:
---------------------------------
要不影响调试可以在初始化函数打开CYCCNT计数器, ...

请问   楼主这个32里面  Systick 与delay  是不是调用一个就可以用来延时了。。还有这个systick(系统滴答定时器)使能后 会使板子上的蜂鸣器响的吧。。  
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2017-3-17
在线时间
47 小时
发表于 2018-9-6 22:41:20 | 显示全部楼层
非常不错的延时方法, 这么隐蔽的资源都挖掘出来了, 楼主很牛!
我在STM32F407(CM4核心)的板子上测试了这种延时方法, (使用了目前位置2楼whjambo网友提出的改进算法, 使用变量SystemCoreClock更具普适性, 还不需要定义额外的static u32 cpuclkfeq;变量)有效. 延时效果较原子原来使用SysClk的延时方法的延时精度有一定改善
(调试模式和正常运行模式下, 测试程序都能正常运行).  测试了10us, 20us, 1000us, 2000us的延时间隔, 逻辑分析仪2ns采样的结果分别为11.61us(这个值有点怪异, 误差有点大), 20.13us, 1001.38us, 2000.168us. 精度还是非常不错的!
回复 支持 反对

使用道具 举报

31

主题

1953

帖子

3

精华

论坛元老

Rank: 8Rank: 8

积分
4462
金钱
4462
注册时间
2018-5-11
在线时间
932 小时
发表于 2018-9-7 09:20:56 来自手机 | 显示全部楼层
it is a good idea
回复 支持 反对

使用道具 举报

31

主题

1953

帖子

3

精华

论坛元老

Rank: 8Rank: 8

积分
4462
金钱
4462
注册时间
2018-5-11
在线时间
932 小时
发表于 2018-9-7 19:44:55 | 显示全部楼层
这是一条新颖的思路,
值得探索。
不过,
所谓的不占用SYSTICK,
其实不存在,
SYSTICK只要开启,
它就在那里,
不用白不用。
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
189
金钱
189
注册时间
2017-3-17
在线时间
47 小时
发表于 2018-9-7 20:51:04 | 显示全部楼层
warship 发表于 2018-9-7 19:44
这是一条新颖的思路,
值得探索。
不过,

SysTick更多的用于操作系统的任务调度. 如果不用操作系统, 自然是没有多大影响的; 但如果用了操作系统, 再用SysTick做延时, 就需要考虑和操作系统的任务调度是否有冲突了; 不同操作系统还可能需要分别考虑.
回复 支持 反对

使用道具 举报

31

主题

1953

帖子

3

精华

论坛元老

Rank: 8Rank: 8

积分
4462
金钱
4462
注册时间
2018-5-11
在线时间
932 小时
发表于 2018-9-7 21:06:07 | 显示全部楼层
本帖最后由 warship 于 2018-9-7 21:09 编辑
houdw2006 发表于 2018-9-7 20:51
SysTick更多的用于操作系统的任务调度. 如果不用操作系统, 自然是没有多大影响的; 但如果用了操作系统,  ...

想点办法,
不对SysTick产生影响,
只读的话,还是可以做到的。
https://github.com/ShuifaHe/STM32/blob/delay/delay.c
我的开源链接 https://github.com/ShuifaHe/STM32.git  请关注,点赞支持哦。
回复 支持 反对

使用道具 举报

10

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
62
金钱
62
注册时间
2017-5-3
在线时间
44 小时
发表于 2018-9-14 16:15:50 | 显示全部楼层
mark。。
回复 支持 反对

使用道具 举报

0

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
140
金钱
140
注册时间
2019-5-21
在线时间
27 小时
发表于 2020-8-27 14:24:35 | 显示全部楼层
用了很久,发现一个问题,既然这里跟的是DEBUG有关,我发现我下载完程序之后,执行了第一条函数,就不再继续执行下去,必须要手动按RESET!!!
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

新手入门

积分
4
金钱
4
注册时间
2021-8-29
在线时间
0 小时
发表于 2021-8-29 08:22:17 | 显示全部楼层
来迟了,迷茫中。。。
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-2-26 04:35

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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