晶振与定时时间的简单理解

本文详细介绍了9M晶振的工作原理,以及如何利用STM32F103ZET6芯片的72MHz时钟进行定时计算。通过举例解释了定时器TIM3的初始化设置,如何通过重装载值和时钟分频系数来实现特定时间的定时。内容涵盖了晶振振动次数与时间的关系,以及在实际编程中如何运用这些知识来配置定时器达到预期的定时效果。
摘要由CSDN通过智能技术生成

晶振的理解:

9M晶振就是1秒可以振动9 * 106次,所以每一次振动的时间为1/9 * 106

要计算1ms,就振动9 * 103次,就是9000次

要计算1us,就振动9 * 100次,就是9次
在这里插入图片描述
这样一来,对于常用的STM32F103ZET6芯片72MHz的时钟,就能照葫芦画瓢知道定时时间

72MHz = 72 * 106 Hz, 即晶振振动 72 * 106 次就计时1s
72 * 103,即晶振振动72 * 103次就定时1ms
72* 100,即晶振振动72次就定时1us

定时时间的计算

这些晶振振动次数与时间的关系对使用定时器定时想要的时间特别有帮助

TIM3_Int_Init(4999,7199);//10Khz的计数频率,计数到5000为500ms  

如这里的定时器3初始化,参数1是重装载值arr,参数2是时钟分频系数psc

psc = 7199,7199+1 = 7200,就表示晶振振动7200次,已经知道72 * 103 次是1ms,那7200次就是定时0.1ms,而0.1ms = 0.0001s,时间的倒数就是频率,所以1/0.0001s = 10000 = 10khz

既然知道经过分频后定时为0.1ms,所以重装载值arr+1 = 4999+1 = 5000,5000 * 0.1ms = 500ms

  • 5
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值