STM32输入捕获模式_第1页
STM32输入捕获模式_第2页
STM32输入捕获模式_第3页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、输入捕获模式 库函数例程位置: STM32F10x_StdPeriph_Lib_V3.3.0ProjectSTM32F10x_StdPeriph_ExamplesTIMI nputCapture在输入捕获模式下,当检测到 ICx 信号上相应的边沿后,计数器的当前值被锁存 到捕获 /比拟存放器 TIMx_CCRx 中。当捕获事件发生时,相应的CCxIF 标志TIMx_SR 存放器被置' 1,'如果使能了中断或者 DMA 操作,那么将产生中断或者 DMA 操作。 在捕获模式下,捕获发生在影子存放器上,然后再复制到预装载存放器中。PWM 输入模式库 函 数 例 程 位 置 : STM

2、32F10x_StdPeriph_Lib_V3.3.0ProjectSTM32F10x_StdPeriph_ExamplesTIMP WM_Input该模式是输入捕获模式的一个特例例如,你需要测量输入到TI1上的PWM信号的长度TIMx_CCR1存放器和占空比 TIMx_CCR2存放器,具体步骤如下取决于CK_INT的频率和预分频器的值选择TIMx_CCR1的有效输入:置TIMx_CCMR1存放器的CC1S=01选择TI1。选择TI仆P1的有效极性用来捕获数据到 TIMx_CCR1中和去除计数器:置 CC1P=0上升沿有效。选择TIMx_CCR2的有效输入:置TIMx_CCMR1存放器的CC2

3、S=10选择TI1。 选择TI仆P2的有效极性捕获数据到TIMx_CCR2:置CC2P=1下降沿有效。选择有效的触发输入信号:置 TIMx_SMCR存放器中的TS=101选择TI1FP1。 配置从模式控制器为复位模式:置 TIMx_SMCR 中的 SMS=100。使能捕获:置TIMx_CCER存放器中CC1E=1且CC2E=1。由于只有TI仆P1和TI2FP2连到了从模式控制器,所以 PWM输入模式只能使用TIMx_CH1 /TIMx_CH2 信号。强置输出模式在输出模式TIMx_CCMRx存放器中CCxS=00下,输出比拟信号OCxREF和相 应的OCx能够直接由软件强置为有效或无效状态,

4、而不依赖于输出比拟存放器和 计数器间的比拟结果。例如: CCxP=0OCx 高电平有效 ,那么 OCx 被强置为高电平。 置 TIMx_CCMRx 存放器中的OCxM=100,可强置OCxREF信号为低。输出比拟模式此项功能是用来控制一个输出波形,或者指示一段给定的的时间已经到时。 当计 数器与捕获 /比拟存放器的内容相同时,输出比拟功能做如下操作: 将输出比拟模式 TIMx_CCMRx 存放器中的 OCxM 位和输出极性 TIMx_CCER 存放器中的CCxP位定义的值输出到对应的引脚上。在比拟匹配时,输出引脚可以保持它的电平OCxM=000、被设置成有效电平OCxM=001、被设置成无效电

5、 平OCxM=010或进行翻转OCxM=011。 设置中断状态存放器中的标志位 TIMx_SR 存放器中的 CCxIF 位。假设设置了相应的中断屏蔽TIMx_DIER存放器中的CCxIE 位,那么产生一个中断。假设设置了相应的使能位TIMx_DIER存放器中的CCxDE位,TIMx_CR2存放器中的CCDS位选择DMA请求功能,那么产生一个DMA请求。 输出比拟模式的配置步骤:1. 选择计数器时钟内部,外部,预分频器2. 将相应的数据写入 TIMx_ARR和TIMx_CCRx存放器中3. 如果要产生一个中断请求和/或一个DMA请求,设置CCxIE位和/或 CCxDE 位。4. 选择输出模式,例

6、如当计数器CNT与CCRx匹配时翻转OCx的输出引脚,CCRx 预装载未用,开启OCx输出且高电平有效,那么必须设置OCxM'011'、OCxPE'0'、 CCxP= 0和 CCxE= 1、5. 设置TIMx_CR1存放器的CEN位启动计数器图127 输出比拟模式.翻转0C彳在CC1R存放器写入B201hTIM1TIM1在CCR1上比拟匹配如果使能了中新.那么产生中断PWM模式脉冲宽度调制模式可以产生一个由 TIMx_ARR存放器确定频率、由TIMx_CCRx 存放器确定占空比的信号。在TIMx_CCMRx存放器中的OCxM位写入、110' PW/模式1

7、或、111、PWM式2,能够独立地设置每个 OCx输出通道产生一路PWM。必须设置TIMx_CCMRx 存放器OCxPE位以使能相应的预装载存放器,最后还要设置TIMx_CR1存放器的 ARPE位,在向上计数或中心对称模式中使能自动重装载的预装载存放器。下面是一个 PWM 模式1的例子。当 TIMx_CNT<TIMx_CCRx 时PWM信号参考OCxREF为高,否那么为低。如果TIMx_CCRx中的比拟值大于自动重装载值(TIMx_ARR),那么OCxREF保持为1'如果比拟值为0,那么OCxREF保持为Q'下 图为TIMx ARR=8时边沿对齐的PWM波形实例。OCXR

8、EFCGflFOCXREFCCRit=6CCxiFOCXREF -TCCRioflCCxlF _OCXREF fCCfh=O 一CGdF单脉冲模式单脉冲模式(OPM)是前述众多模式的一个特例。这种模式允许计数器响应一个激励,并在一个程序可控的延时之后,产生一个脉宽可程序控制的脉冲。可以通过从模式控制器启动计数器,在输出比拟模式或者PWM模式下产生波形。 设置TIMx_CR1存放器中的OPM位将选择单脉冲模式,这样可以让计数器自动地 在产生下一个更新事件UEV时停止。仅当比拟值与计数器的初始值不同时,才 能产生一个脉冲。启动之前(当定时器正在等待触发),必须如下配置:向上计数方式:CNT <

9、; CCRx < ARR特别地,0 < CCRx),向下计数方式:CNT > CCRx o图130单脉冲模式的例rTI2OC1REF OC1计数器tpULBE编码器接口模式TH112两个输入TI1和TI2被用来作为增量编码器的接口。参看表77,假定计数器已经启动TIMx_CR1存放器中的CEN= 1',计数器由每次在 THFP1或TI2FP2上的有效 跳变驱动。TI1FP1和TI2FP2是TI1和TI2在通过输入滤波器和极性控制后的信号; 如果没有滤波和变相,那么THFP1=TI1 , TI2FP2=TI2。根据两个输入信号的跳变顺 序,产生了计数脉冲和方向信号。依据

10、两个输入信号的跳变顺序,计数器向上或 向下计数,同时硬件对TIMx_CR1存放器的DIR位进行相应的设置。不管计数器 是依靠TI1计数、依靠TI2计数或者同时依靠TI1和TI2计数。在任一输入端TI1 或者TI2的跳变都会重新计算DIR位。编码器接口模式根本上相当于使用了一 个带有方向选择的外部时钟。这意味着计数器只在0到TIMx_ARR存放器的自动装载值之间连续计数根据方向,或是0到 ARR计数,或是ARR到0计数。所以 在开始计数之前必须配置TIMx_ARR ;同样,捕获器、比拟器、预分频器、触发 输出特性等仍工作如常。在这个模式下,计数器依照增量编码器的速度和方向被 自动的修改,因此计数

11、器的内容始终指示着编码器的位置。计数方向与相连的传 感器旋转的方向对应。下表列出了所有可能的组合,假设TI1和TI2不同时变换。77计数方向与编码翠信号的关系有效边沿相对信号的电平THFF1 对应 T1Z T绘FP2对应TI1FP1信号TI上升下降上升仅在T1I计数向下计数向上计数不计数低向上计敬向下计数不计数仅在T12计数讥;不计数不计数向I .计變低不计数不计数向下计撤在TI1和了 12上计数冋向下计数向上计数向上计變向上计数向下计数向尸计蜀下列图是一个计数器操作的实例,显示了计数信号的产生和方向控制。它还显示了 中选择了双边沿时,输入抖动是如何被抑制的;抖动可能会在传感器的位置靠近 一个转换点时产生。在这个例子中,我们假定配置如下: CC1S=' 01' TIMx_CCM存放器,IC1FP1 映射到 TI1 CC2S=' 01' TIMx_CCMR存器,IC2FP2映射到 TI2 CC1P=' O' TIMx_CC存放器,IC1F

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论