OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3455|回复: 8

STSTEM文件夹下延时delay函数的init问题

[复制链接]

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2015-11-20
在线时间
7 小时
发表于 2016-1-3 16:29:50 | 显示全部楼层 |阅读模式
1金钱
本帖最后由 菜鸟2012 于 2016-1-3 18:39 编辑

战舰板,delay_init函数中在库函数版本中,
fac_us=SystemCoreClock/8000000;
这个可以理解,系统时钟经倍频后再8分频后作为Systick的时钟。每计数SystemCoreClock/8次刚好为1s,计数SystemCoreClock/8000000次为1us。
但是在寄器版本中
fac_us=SYSCLK/8;这个就不明白了,每计数fac_us次不刚好是1s吗?求大神指教

最佳答案

查看完整内容[请看2#楼]

谁说是1s,你哪里看来的?我们定义的就是1us的计数值!!!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2016-1-3 16:29:51 | 显示全部楼层
谁说是1s,你哪里看来的?我们定义的就是1us的计数值!!!
回复

使用道具 举报

72

主题

2711

帖子

2

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3505
金钱
3505
注册时间
2014-8-4
在线时间
696 小时
发表于 2016-1-3 16:46:21 | 显示全部楼层
看程序要看上下文,不要断章取义,看传入参数是多少
以我资质之鲁钝,当尽平心静气、循序渐进、稳扎稳打之力。
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2015-11-20
在线时间
7 小时
 楼主| 发表于 2016-1-3 18:55:13 | 显示全部楼层
怎么我还没采纳就被设置了最佳答案
回复

使用道具 举报

15

主题

786

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3223
金钱
3223
注册时间
2015-7-26
在线时间
811 小时
发表于 2016-1-3 19:33:06 | 显示全部楼层
http://www.openedv.com/thread-62234-1-1.html
看下这个帖子的20楼,或者Ctrl+F搜索关键字“SysTick定时器”,也许对你有帮助
我的博客:http://blog.csdn.net/itdo_just
回复

使用道具 举报

354

主题

1475

帖子

12

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
8097
金钱
8097
注册时间
2015-10-15
在线时间
2919 小时
发表于 2016-1-3 21:19:41 | 显示全部楼层
比如系统时钟是72M,这里传入是72,那么72/8=9, 9代表是什么意思呢? 是1us要9个systick时钟周期。 所以你要延时nus,就需要9n,,,
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2015-11-20
在线时间
7 小时
 楼主| 发表于 2016-1-3 22:35:18 | 显示全部楼层
openedvadmin 发表于 2016-1-3 21:19
比如系统时钟是72M,这里传入是72,那么72/8=9, 9代表是什么意思呢? 是1us要9个systick时钟周期。 所以你要 ...

谢谢,明白了,传入的参数是72,我当成72M了
回复

使用道具 举报

3

主题

8

帖子

0

精华

初级会员

Rank: 2

积分
97
金钱
97
注册时间
2015-11-20
在线时间
7 小时
 楼主| 发表于 2016-1-3 22:38:01 | 显示全部楼层
229382777@qq.co 发表于 2016-1-3 19:33
http://www.openedv.com/thread-62234-1-1.html
看下这个帖子的20楼,或者Ctrl+F搜索关键字“SysTick定时 ...

我问的是除以8和除以8000000的问题,除以8000000我知道,除以8我就不明白了,数量级不对啊
回复

使用道具 举报

15

主题

786

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3223
金钱
3223
注册时间
2015-7-26
在线时间
811 小时
发表于 2016-1-4 08:06:56 | 显示全部楼层
本帖最后由 229382777@qq.com 于 2016-1-4 08:09 编辑
菜鸟2012 发表于 2016-1-3 22:38
我问的是除以8和除以8000000的问题,除以8000000我知道,除以8我就不明白了,数量级不对啊

我晕,不知道你有没仔细去看帖子,帖子上明明写的很清楚,我上面还标识的很清楚,用“9MHZ”和“72MHZ”,而没用9000000和72000000,传入的理论上本来就是72M,只是由于换算为us,所以直接用了72,1s=1000000us,这个知道不
我的博客:http://blog.csdn.net/itdo_just
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2025-6-21 23:24

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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