STM32定时器的两个小难点

TIM1 TIM8 挂在APB2上 一般为72M 也即APB2分频系数为1
其余TIMER可以认为都挂在APB1上,一般为36M 也即APB1分频系数为2 或者更大 至少为2 APB1不能超过36M
定时器的时钟过一个倍频器,这个倍频器只看所挂总线的分频系数 若为1 就不变 若为其它倍频为2倍
也即 一般情况下,所有定时器的时钟都是72M
其中TIM1 TIM8 挂APB2 不倍频率 自然是72M
其它定时器 挂APB1 2倍频率 36*2=72

至于定时器里CR1的CDK位 表示几次频率 计数一次
比如01为2倍 也即2次节拍才计数一次 和时钟无关

时间: 2024-08-04 13:42:20

STM32定时器的两个小难点的相关文章

第八章:STM32定时器

时间:2014年8月15日 一.定时器种类:      1.四个可同步运行的通用定时器(TIM2~TIM5),每个均有一个16位的自动加载递增/递减计数器.一个16位预分频器和4个独立的通道.       2.两个16位高级控制定时器(TIM1和TIM8)         特点:由一个可编程预分频器驱动的16为自动装载 计数器组成,与通用定时器有共同处,但功能更强大.       3.两个基本定时器(TIM6和TIM7)        特点:主要用于产生DAC触发信号,也可以当作通用的16为时基

关于JavaScript定时器我的一些小理解

因为自己在平时工作中,有些功能需要用到定时器,但是定时器并不像我们表边上看到的那样,所以这周末我看看书查查资料,深入研究了一下JavaScript中的定时器,那么废话不多说,下面进入我们今天的正题. 大家都知道JavaScript是单线程的,所以不管是定时器还是用户的操作都是需要在线程队列中排队执行的. 一.定时器在执行线程队列里的分析 为了更好的理解我还是直接写个测试代码来看一下,这样分析起来更直观一些 1 <script type="text/javascript">

STM32定时器的预装载寄存器与影子寄存器之间的关系【转】

首先转载:   STM32定时器的预装载寄存器与影子寄存器之间的关系 本文的说明依据STM32参考手册(RM0008)第10版:英文:http://www.st.com/stonline/products/literature/rm/13902.pdf中译文:http://www.stmicroelectronics.com.cn/stonline/mcu/images/STM32_RM_CH_V10_1.pdf 在STM32参考手册的第13.14章中,都有一张定时器的框图,下面是第14章中定时

STM32 定时器用于外部脉冲计数(转)

源:STM32 定时器用于外部脉冲计数 STM32 定时器(一)——定时器时间的计算 STM32的定时器是灰常NB的,也是灰常让人头晕的(当然是对于白菜来说的). STM32中的定时器有很多用法: (一)系统时钟(SysTick) 设置非常简单,以下是产生1ms中断的设置,和产生10ms延时的函数: void RCC_Configuration(void) { RCC_ClocksTypeDef RCC_ClockFreq; SystemInit();//源自system_stm32f10x.c

[原创] STM32 定时器TIMx 编码器应用 函数 TIM_EncoderInterfaceConfig 分析

今天把STM32 定时器输入作为 编码器接口相关的 函数   TIM_EncoderInterfaceConfig ,好好分析了一遍 因为网上不少人对这个函数有问题 1 void TIM_EncoderInterfaceConfig(TIM_TypeDef* TIMx, uint16_t TIM_EncoderMode, 2 uint16_t TIM_IC1Polarity, uint16_t TIM_IC2Polarity) 3 { 4 uint16_t tmpsmcr = 0; 5 uint

用两个小例子来解释单例模式中的“双重锁定”

学习单例模式时,好多人都不太理解双重锁定.学完后突然想到一个很有趣的例子. 单例模式结构图: 代码: Singleton类 class Singleton { private static Singleton instance; private static readonly object syncRoot = new object(); //程序运行时创建一个静态只读的进程辅助对象 private Singleton() { } //用private修饰构造方法,防止外界利用new创建此类实例

ASP.NET MVC 开发中遇到的两个小问题

最近在做一个网站,用asp.net MVC4.0来开发,今天遇到了两个小问题,通过查找相关渠道解决了,在这里把这两个问题写出来,问题非常简单,不喜勿喷,mark之希望可以给遇到相同问题的初学者一点帮助. 问题一:我要实现文件的异步上传,前端提交的文件后台老是获取不到. 我前端是这样写的: @using (Ajax.BeginForm("UpdateNewInfo", "Home", new AjaxOptions() { HttpMethod = "pos

两个小案例

今天收获了两个小案例.其实对工作都很有启发,把案例和心得在这里记录下来,希望对别人也有帮助. 案例1: 测试人员在测试系统发现在系统A和系统B之间通过总线通讯,偶尔会出现timeout现象.反馈开发后,开发难以重现.根据简要分析后,认为是测试系统性能不行,拍胸脯保证在生产系统,用于系统通讯的总线不会出现这种问题.测试人员加强了性能测试强度,发现硬件提高后,的确性能测试场景中未能重现timeout.最终否决了缺陷.结果上到生产上后,timeout又出现了,而且对核心业务产生了一定影响(多亏有补救办

spring 定时器执行两次

spring错误笔记 spring定时器执行两次因为导入了两次 关于配置文件如下 <bean id="timeTaskService" class="xx.xxx.xxx.xxx.service.impl.na.TimeTaskService"/> <task:scheduled-tasks scheduler="myScheduler"><!--30秒执行一次 --> <task:scheduled r