通过前面的学习,我们知道了,TIM6是挂载在APB1上的,而APB1通过前面的学习,我们知道最高是36M,而实际我我们写程序并不是36M计算的,而是72M,实际正确的答案也应该是72M,这个是为什么呢?
TIM6Init(10000, 7200); //初始化定时器 6,预装载值为 10000,预分频值为 7200,定时时间 10000/(72000000/7200)=1s
其实教程也给出了答案,仔细阅读的话也会初见端倪,从第三章第七页可看到,
那么对应到这个问题就是,当AHB为72M时,我们知道APB1此时最小预分频为2,所以APB1对应为36M,
然后我们再比照上面那段教程里的话,这个时候定时器会起倍频作用,所以TIM6的最大频率为72MHz!
摘一个从数据手册里看到的更详细的图,
关键字:KST-STM32 TIM6 时钟频率
引用地址:
KST-STM32学习之TIM6的时钟频率疑问
推荐阅读最新更新时间:2024-03-16 16:20
ADS中使用S3C2440的时钟源频率的声明方法
需要注意这个问题:如果不在程序的最顶端申请如下内容,将无法使用PCLK、UCLK等内嵌频率变量: #define GLOBAL_CLK 1 //后面的1需要研究 #include def.h ...... void Main() { int pinlv; pinlv=PCLK; //如果不在顶部声明GLOBAL_CLK,则无法直接使用PCLK这个内嵌变量。 ............... }
[单片机]
stm32时钟树以及修改系统时钟频率
前言:在学51的时候我们知道单片机想要工作必须要有时钟,在stm32中,外部时钟源不是必须的,因为内部就有时钟源,因此我们需要了解stm32的时钟树以方便以后我们设置自己所需要的时钟频率 时钟树 解读 1.首先我们找到最重要的系统时钟: 他的最高频率为168MHZ,他可以由三个提供,一个是HSI(内部高速时钟源,h=high,i=internal),可以在主图中找到这个HSI RC,还有一个是HSE(外部高速时钟源,e=external),最后一个是PLLCLK(pll为锁相环提供,也可以在主图中找到)。。但系统时钟主要还是由PLLCLK提供 注意: 是指这个东西可以由三个其中之一提供,而不是由三个组成。 2.
[单片机]
FPGA的时钟频率同步原理研究与设计实现
引 言 网络化运动控制是未来运动控制的发展趋势,随着高速加工技术的发展,对网络节点间的时间同步精度提出了更高的要求。如造纸机械,运行速度为1 500~1 800m/min,同步运行的电机之间1μs的时间同步误差将造成30 μm的运动误差。高速加工中心中加工速度为120 m/min时,伺服电机之间1μs的时间同步误差,将造成2 μm的加工误差,影响了加工精度的提高。 分布式网络中节点的时钟通常是采用晶振+计数器的方式来实现,由于晶振本身的精度以及稳定性问题,造成了时间运行的误差。时钟同步通常是选定一个节点时钟作为主时钟,其他节点时钟作为从时钟。主节点周期性地通过报文将主时钟时间发送给从节点,从节点接收到报文后,以主
[嵌入式]
KST-STM32学习之W25Q128
1、W25Q128 是华邦公司推出的一款 SPI 接口的 NOR Flash 芯片,其存储空间为 128Mbit,相当于 16M 字节。 W25Q128 可以支持 SPI 的模式 0 和模式 3,也就是 CPOL=0/CPHA=0 和CPOL=1/CPHA=1 这两种模式。 2、写入数据时,需要注意以下两个重要问题: ①、Flash 写入数据时和 EEPROM 类似,不能跨页写入,一次最多写入一页,W25Q128的一页是 256 字节。 写入数据一旦跨页,必须在写满上一页的时候,等待 Flash 将数据从缓存搬移到非易失区,重新再次往里写。 ②、Flash 有一个特点,就是可以将 1 写成 0,但是不能将 0
[单片机]