如何做网站子页做淘宝优惠劵网站服务器配置

当前位置: 首页 > news >正文

如何做网站子页,做淘宝优惠劵网站服务器配置,东莞建站模板,网站开发中职教材目录 通用定时器#xff08;TIM2~5#xff09;框图 1、 输入时钟源选择 2、 时基单元 3 、输入捕获#xff1a;#xff08;IC—Input Capture#xff09; 3.1 输入捕获通道框图#xff08;TI1为例#xff09; 3.1.1 滤波器#xff1a; 3.1.2 边沿检测器#xf…目录 通用定时器TIM2~5框图 1、 输入时钟源选择 2、 时基单元 3 、输入捕获IC—Input Capture 3.1 输入捕获通道框图TI1为例 3.1.1 滤波器 3.1.2 边沿检测器 3.1.3 捕获通道 3.2 PWM输入模式 4、 输出比较OC—Output Compare 4.1 PWM 4.2 PWM模式 4.3 PWM参数计算 4.4 相关寄存器 5、 GPIO配置 在前一章节我们介绍了STM32的基本定时器STM之四TIM定时器1-基本定时器本节介绍通用定时器通用定时器包含基本定时器的所有功能除此之外其还能有输入捕获、输出比较、编码器接口、主从触发模式等功能。 通用定时器TIM2~5框图 可以将通用定时器框图分为4部分其中第一部分为输入时钟源选择第二部分为时基单元第三部分为输入捕获第四部分为输出比较。 1、 输入时钟源选择 有4种选择方式 内部时钟(CK_INT)时钟信号来自于芯片内部等于72M一般情况下都是使用内部时钟。外部时钟模式1时钟信号来自于定时器的输入通道即TI1/2/3/4。外部时钟模式2时钟信号来自于定时器的特定输入通道TIMx_ETR。内部触发输入ITRx使用一个定时器作为另一个定时器的预分频器用来实现定时器同步或级联主模式的定时器可以对从模式定时器执行复位、启动、停止或提供时钟。 2、 时基单元 这部分可参考STM之四TIM定时器1-基本定时器2.2.3章节部分。此处讲解与基本定时器不同的部分。基本定时器的计数器只能向上计数但是通用定时器的计数器有三种模式分别是向上计数向下计数中心对齐模式。 向上计数计数器从0开始计数CK_CNT每来一个脉冲计数器就1直到计数器的值与自动重装载寄存器ARR的值相等。此时计数器从0开始重新计数并生成计数器上溢事件。向下计数计数器初始值自动重装载寄存器ARR的值CK_CNT每来一个脉冲计数器CNT的值就减1直到计数器的值为0。此时计数器从ARR的值开始重新计数并生成计数器下溢事件。中心对齐模式计数器从0开始向上计数直到CNT的值等于(ARR-1)时生成计数器上溢事件然后从ARR的值开始向下计数直到CNT的值等于1时生成计数器下溢事件。 3 、输入捕获IC—Input Capture 输入捕获可以用来测量脉冲宽度或者测量频率。在输入捕获模式下当检测到TIMx_CHx上的边沿信号发生跳变的时候将当前定时器的值TIMx_CNT存放到对应的通道的捕获/比较寄存器TIMx_CCRx里面完成一次捕获。 例如通过输入捕获来捕获高电平脉宽。常用的做法可以先设置TIMx_CHx为上升沿检测记录发生上升沿的时候TIMx_CNT的值。然后配置捕获信号为下降沿捕获当下降沿到来时发生捕获并记录此时的TIMx_CNT的值。这样前后两次TIMx_CNT之差就是高电平的脉宽。 3.1 输入捕获通道框图TI1为例 观看框图我们可以发现输入通道TI1首先进入到滤波器输出为TI1F滤波器还有另外两个输入项fDTS和ICF[3:0]之后TI1F经过边沿检测器后输出为TI1FP1之后将输入通道的信号(TI1FP1/TI2FP2)映射到捕获通道IC1上经分频器后输入IC1PS中接入到输入/捕获寄存器。TI1FP1另外还有一个输出至从模式控制器从模式控制器可以在捕获之后自动完成CNT的清零工作一般常用于PWM模式下下文4.1章节有介绍PWM。下面我们分别介绍这几个阶段。 3.1.1 滤波器 滤波器的作用是对高频信号进行滤波重新采样。根据采样定律采样的频率必须大于等于两倍的输入信号。滤波器的配置由CR1寄存器的CKD位和CCMR寄存器的ICxF位来控制。 这个看的时候很难理解看到正点原子这里解释的易懂可参考下。 输入捕获1滤波器IC1F[3:0]用来设置输入采样频率和数字滤波器长度见下图。其中是定时器的输入频率(TIMxCLK这个不了解可以看前面基本定时器章节的框图)一般是72MHz而则是根据TIMxCR1寄存器的CKD[1:0]位来设置的如果CKD[1:0]00则N值是滤波长度。 举个例子假设IC1F[3:0]0011并设置IC1映射到通道1上且为上升沿触发那么在捕获到上升沿的时候再以的频率连续采样到8次通道1的电平如果都是高电平则说明是一个有效的触发就会触发输入捕获中断如果开启了的话。这样可以滤掉那些高电平脉宽低于8个采样周期的脉冲信号从而达到滤波的效果。 CKD[1:0]是时钟分频因子决定是经过分频后得到的频率其关系见下图CKD位描述。  3.1.2 边沿检测器 边沿检测器用来设置捕获什么边沿的信号可以是上升沿、下降沿、或者是双边沿可通过配置捕获/比较使能寄存器TIMx_CCER的CCxP位决定CCxP0是上升沿捕获。 3.1.3 捕获通道 共有4个捕获通道即IC1/2/3/4每个捕获通道都有相对应的捕获寄存器CCR1/2/3/4当发生捕获的时候计数器CNT的值就会被锁存到捕获寄存器CCR中。 这里要搞清楚输入通道和捕获通道4个输入通道分别为TI1/2/3/4是为了输入信号的而捕获通道是用来捕获输入通道的信号的。输入通道并不是一一对应捕获通道的一个输入通道的信号可以同时输入给两个捕获通道。         看下图输入通道TI1可以占用捕获通道IC1和IC2输入通道TI2可以占用捕获通道IC1和IC2输入通道TI3可以占用捕获通道IC3和IC4输入通道TI4可以占用捕获通道IC3和IC4。这样进行交叉连接的目的是两个 1.一个输入通道灵活切换两个捕获通道可以灵活切换后续捕获电路的输入 2.两个通道同时捕获一个引脚可以把一个引脚的输入同时映射到两个捕获单元这也是PWM输入捕获的经典结构实现两个通道IC对一个引脚TI进行捕获就可以同时测量频率和占空比具体可详见下面3.2章节PWM输入模式。 输入通道和捕获通道来源 辰哥单片机设计 STM32-定时器详解侵删。这个图比较清晰一目了然 通过TIMxCMMRx寄存器的CCxS位可以配置捕获通道映射在那个输入通道上详看下图 看完上面的说明在读下参考手册的输入捕获模式的介绍应该就会有一个全面的了解了。 B站江协科技up主对于输入捕获总结的很详细此处引用其总结框图 3.2 PWM输入模式 PWM模式是输入捕获的一个特殊情况在该模式下同一个输入通道(例如TI1)占用两个捕获通道(IC1和IC2)两个通道的捕获边沿极性相反因为PWM输入捕获模式下其中一个捕获通道测量周期另外一个捕获通道测量占空比周期需要捕获两个连续的相同边沿例如两个上升沿来进行测量但是测量占空比需要捕获一个上升沿之后紧接着捕获一个下降沿来测量高电平脉宽因此两个捕获边沿极性相反。 CCR对CNT进行捕获之后需要对CNT进行一次清0操作这样每次捕获得到的值才是两个上升沿下降沿之间的时间间隔。这个清零操作可以使用主从模式通过硬件自动完成。由输入捕获输入部分框图来看TI1FP1信号可以通向从模式控制器从模式控制器可以通过硬件电路自动完成CNT清零操作。 下面我们看下主模式、从模式、触发源这三个概念。 主模式可以将定时器内部的信号映射到TRGO引脚用于触发其他外设的操作从模式可以接收其他外设或自身外设的一些信号用于触发自己的一些操作定时器的运行触发源选择即选择从模式的触发信号源功能也可以认为它是从模式的一部分。 主从触发模式(来源B站江协科技) 主从模式可以使用TIMx_CR2寄存器的MMS位进行配置。 从模式控制寄存器TIMx_SMCR的SMS位可以进行从模式选择TS位进行触发选择。  同样参考手册中对于PWM输入模式说明的也很详细可参考理解。 同样引入B站江协科技UP的总结框图有利于记忆和理解。 首先TI1FP1配置上升沿触发触发捕获和清零CNT正常的捕获周期再来一个TI1FP2配置为下降沿触发通过交叉通道去触发通道2的捕获单元最开始上升沿CCR1捕获同时清零CNT之后CNT一直加然后在下降沿时刻触发CCR2捕获这时CCR2的值就是CNT从上升沿到下降沿的计数值也就是高电平期间的计数值CCR2捕获并不触发CNT清零所以CNT继续加直到下一次上升沿CCR1捕获周期并CNT清零这样执行之后CCR1就是一整个周期的计数值CCR2就是高电平期间的计数值用CCR2/CCR1就是占空比以上就是PWMI模式使用两个通道来捕获频率和占空比的思路 4、 输出比较OC—Output Compare 输出比较功能是用来控制一个输出波形就是通过定时器的外部引脚对外输出控制信号可输出八种模式具体哪种模式可由捕获/比较模式寄存器TIMx_CCMRx的OCxM[2:0]位配置。 输出比较模式[来源B站江协科技-PPT] 其中使用最常见的是PWM模式。 4.1 PWM PWMPulse Width Modulation简称脉宽调制是一种利用微处理器的数字输出来对模拟电路进行控制的一种技术。 4.2 PWM模式 定时器输出比较的PWM模式可以产生一个由TIMx_ARR寄存器确定频率、由TIMx_CCRx寄存器确定占空比的信号。在PWM模式下TIMx_CNT和TIMx_CCRx始终在进行比较根据比较值对输出进行置1、置0或者翻转的操作。 以CCR1为例CNT和CCR1经过比较将比较值输入到输出模式控制器中输出模式控制器共有8种模式即为上图输出比较模式的8种PWM下可以选择PWM1和PWM2模式这两种模式不同之处在于输出的极性相反。输出模式控制器输出一个oc1ref信号该信号为输出参考信号该信号后续有两路输出其中一路输出至主模式控制器PWM模式下不关注这个。另外一路输出至一个选择器该选择器由TIMx_CCER寄存器CCxP控制若oc1ref为0则直接接入到输出使能电路。若oc1ref为1则该信号通过非门跳转信号接入至输出使能电路。输出使能电路由TIMx_CCER寄存器TIMx_CCxE位控制后续经过OC1通道输出信号。 4.3 PWM参数计算 4.4 相关寄存器 主要有3个寄存器来控制PWM分别是捕获/比较模式寄存器TIMx_CCMR1/2、捕获/比较使能寄存器TIMx_CCER、捕获/比较寄存器TIMx_CCR1~4。 捕获/比较模式寄存器共有两个TIMx_CCMR1/2共有2个TIMx_CCMR1控制CH1和CH2TIMx_CCMR2控制CH3和CH4。其中通过配置OCxM[2:0]位为110、111即PWM1和PWM2模式。 捕获/比较使能寄存器主要用到了CCxE位改位为输入捕获/输出比较使能位。要想PWM从I/O口输出则该位必须置1。 在输出模式下捕获/比较寄存器TIMx_CCRx的值与CNT的值比较根据比较结果产生相应动作所以利用这点通过修改CCRx寄存器的值可以调整PWM输出的脉宽。 最后看下参考手册中对于PWM输出模式的介绍加深下了解。 5、 GPIO配置 此处在注意下各种不同模式下GPIO口的配置