完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
STM32-通用定时器学习笔记
一、通用定时器学习 stm32f103ze定时器(16位)分类高级定时器:TIN1,TIM8通用定时器:TIM2-TIM5基本定时器:TIM6-7 通用定时器的功能和特点自动装载计数器:比如16的定时器是可以从0计数到65535(向上计数),但是我设置一个一个值,当计数器计到我设定的值得时候,计数器的当前值就会变成0。预分频器:将定时器的时钟来源进行分频,这样时钟的周期就会变大,我们计数相同的数那么所用的时间就会变长。每个定时器都有四个独立的通道,通道的作用有如下: 输入捕获 输出比较 PWM生成 单脉冲输出 通过外部信号(TIMx_ETR) 控制定时器和定时器互连(用一个定时器控制另一个定时器) 关于中断以及DMA的请求: 关于定时器的工作原理: 定时器的工作原理可以分为四个部分: 1,时钟部分2.时基单元3.输入捕获4.输出比较 时钟来源: 内部时钟(APB1)倍频 外部引脚(ETR):ETR引脚可以从数据手册中找到,用于TIM2-4 内部触发(来源于内部其他的定时器):ITR 定时器的通道 但是用的最多的时钟是内部时钟:即APB1倍频 时基单元: 时钟来源经过预分频用来计数(CNT)计数计到预装载值然后清零(向上计数)2. 输入捕获:在定时器的通道引脚(在数据手册上可以找到)输入脉冲,经过两个操作:1.输入滤波2.边沿检测。例如脉冲到了上升沿的时候计数器记录当前的计数值,当脉冲到了下降沿的时候再次记录计数器的当前计数值,这样上升一个计数值,下降一个计数值,就可以计算输入脉冲的占空比了。 输出比较: 比如我们设置向上计数,从0计数到100(预装载值),接下来,我们在捕获比较寄存器中设置一个比较值(50)那么计数过程中,计数器的当前值比设定值小的话那么输出低电平,比计数值大的时候输出高电平。 二、定时器中断学习: 1. 时钟的计算方法: 正点原子程序中没有设置时钟来源,其实是使用的默认时钟来源,即APB1时钟,根据APB1的预分频系数来计算CK_INT的系统时钟是72M,在正点原子的代码里设置的APB1的预分频系数是2,所以CK_INT得乘2,但是最后的计数时钟还是要配置预分频系数的。 2. 需要配置的寄存器: 计数器当前值寄存器(CNT):(16位), 储存当前值。预分频寄存器(PSC):Fck_psc/(PSC[15:0]+1)括号里的值就是上图中的N。自动重装载寄存器(arr):控制寄存器(cr1):位4和位0:配置计数模式和使能计数器中断使能寄存器(dier): 溢出时间: 三、PWM学习: 工作原理: 设置一个比较值,用计数器的当前值和这个比较值相比,然后根据他们的关系输出周期性的高低电平 这里有一个部分重映射和完全重映射的一个概念: 部分重映射就是指例如上图只有TIM3的通道1和通道2由原来的PA6和PA7重映射为PB4和PB5了。 注:上面的AFIO是用于重映射的而不是复用。预装载的知识在这个博客中有说明:有影子寄存器的寄存器实际上对应了两个寄存器:一个是用户可以写入或读出数据的寄存器,称为preload register(预装载寄存器),另一个是用户看不见的、但在操作中真正起作用的寄存器称为shadow register(影子寄存器)。我们修改的定时器周期、预分频系数、通道的比较值等都是修改的表面那个预装载寄存器,要让这个修改起作用,就还要把预装载寄存器的值赋给影子寄存器才行。 从ARR预装载寄存器传送到影子寄存器,有两种方式,一种是立刻更新,一种是等触发事件之后更新;这两种方式主要取决于寄存器TIMx-》CR1中的“APRE”位:APRE=0,当ARR值被修改时,同时马上更新影子寄存器的值; APRE=1,当ARR值被修改时,必须在下一次事件UEV发生后才能更新影子寄存器的值。 |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1609 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1540 浏览 1 评论
970 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
681 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1587 浏览 2 评论
1861浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
643浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
515浏览 3评论
528浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
503浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-20 17:15 , Processed in 0.750124 second(s), Total 48, Slave 42 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号