微机原理与嵌入式接口技术课件:定时器与计数器_第1页
微机原理与嵌入式接口技术课件:定时器与计数器_第2页
微机原理与嵌入式接口技术课件:定时器与计数器_第3页
微机原理与嵌入式接口技术课件:定时器与计数器_第4页
微机原理与嵌入式接口技术课件:定时器与计数器_第5页
已阅读5页,还剩140页未读 继续免费阅读

下载本文档

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

文档简介

定时器与计数器6.1STM32的时钟系统6.2定时器6.3STM32的通用定时器组习题6

本章要点

☆时钟系统的工作原理与结构,STM32降低处理器功耗和电磁干扰的时钟方法

☆STM32定时器的种类、特点及应用范围

☆STM32定时器进行定时、脉宽及周期测量、PWM输出等的工作原理和使用方法

6.1

STM32的时钟系统

时钟是所有计算机的脉搏。处理器在时钟驱动下完成指令读取、译码、执行以及状态变换等动作;外设在时钟驱动下完成串口数据收/

发、A/D或D/A转换、定时器计数等工作。

6.1.1

32

位处理器时钟系统

51

单片机采用石英晶体和振荡电路构成的时钟模块,来为系统提供时钟脉冲。此类时钟电路结构简单,输出时钟的频率取决于石英晶体的谐振频率,且只有单一频率时钟输出,常见的有6

MHz、8

MHz、12

MHz

和24

MHz

等。受加工工艺等因素影响,高频石英晶体成本较高,对需要频率为72

MHz(STM32F103xx系列)或高达168

MHz

时钟信号的处理器(如STM32F4x7

系列),常以锁相环(技术把低频时钟信号升频/

倍频到一个较高频率,基于PLL技术的时钟系统框图如图6.1

所示。图6.1

PLL系统组成框图

以此为基础,为满足低功耗、外设日益多样化的要求,现代处理器(如STM32F103xx)时钟系统框图如图6.2

所示,主要由振荡器(或信号源)、倍频用锁相环PLL以及分频器等组成。上电复位后,硬件电路在检测到振荡器工作稳定后输出时钟信号Ref_Clk,Ref_Clk经PLL被9

倍频到一个满足处理器运行需要的频率———Sys_Clk(72

MHz),供给处理器内核以及外设。针对外设不同的工作速度需求,可以通过合理的分频比设置,把Sys_Clk降低到一个合适的频率供外设使用。图6.2

STM32F103xx时钟系统框图

6.1.2

STM32处理器时钟系统框图

STM32片内除ARMCortex-M3

内核,还有众多用途各异的外设,既有需要高速时钟的外设,如48

MHz

全速USB2.0

模块,也有工作频率低至32

kHz

的RTC(实时时钟模块)以及部分闲置未用外设,对此STM32采用图6.3

所示时钟管理系统,说明见表6.1。

由图6.3

可见,STM32时钟系统采用多时钟源、多PLL、多分频器(预分频器AHB、APB1

和APB2

以及众多的外设分频器)和可门控时钟输出的结构,因而未被使用的功能、端口及外设模块的时钟可不使能,降低了系统动态功耗。图6.3

STM32时钟管理系统

其次,除USB、RTC、IWDG

等少数几个外设外,处理器内核及其他外设的时钟都是基于SysClk,主要有:

6.1.3

STM32时钟源

1.

高速外部时钟(HSE)

HSE有外接石英晶体/

陶瓷谐振器和信号源这两种获取时钟信号的模式,见表6.2。

外接信号源(又称HSE旁路模式):此模式下,由OSC_IN引脚接入外部时钟信号(频率最高50

MHz)。

外接石英晶体/

陶瓷谐振器(HSE晶体):OSC_IN

和OSC_OUT引脚接石英晶体或陶瓷谐振器(频率3~25

MHz)。

2.

高速内部时钟(HSI)

无需任何外部器件,HSI

时钟信号可由内部8

MHz

的RC振荡器生成。它的启动时间比HSE晶体振荡器短,但频率精度较差。

RC振荡器原理决定了即使在出厂时按1%(25℃)精度对RC振荡器的频率进行了校准,电压或环境温度变化仍将影响RC振荡器的频率。

3.

锁相环(PLL)

在使能每个PLL之前必须完成PLL的配置(选择时钟源、预分频系数和倍频系数等),并且应该在输入时钟稳定后才能将其使能。

在切换主PLL(PLLMUL)输入时钟源时,必须先确定新时钟源(即设置时钟配置寄存器RCC_CFGR相应的PLLSRC),之后才能关闭原来的时钟源。

4.

低速外部时钟(LSE)

LSE

时钟的产生方式类似于HSE时钟,参见表6.2。

外接信号源(LSE

旁路):OSC32_IN引脚外接一个32.768

kHz

的时钟源。备份域控制寄存器RCC_BDCR的LSEBYP和LSEON位来启用这个模式。

外接石英晶体/

陶瓷谐振器:OSC32_IN和OSC32_UOT引脚接32.768

kHz

石英晶体/

陶瓷谐振器。LSE

晶体振荡器经RCC_BDCR

的LSEON

位启动和关闭,LSERDY位指示晶体振荡器是否稳定。

5.

低速内部时钟(LSI)

LSI

时钟由片内RC振荡器(停机和待机模式下仍然运行)驱动,可作为独立看门狗和自动唤醒单元时钟。

LSI

时钟频率约40kHz(30~60kHz

范围内)。LSI

振荡器由时钟控制状态寄存器RCC_CSR的LSION位来启动或关闭,LSIRDY

位指示其是否稳定。

注意:只有大容量和互联型产品才可以进行LSI

校准。

6.1.4

SYSCLK时钟源切换

系统复位后,HSI

时钟被选为系统时钟。

SYSCLK时钟源切换:只有当被选用的目标时钟源准备就绪即已稳定,从一个时钟源到另一个时钟源的切换才会发生;当时钟源被直接或通过PLL间接作为系统时钟时,它将不能被停止。

6.1.5时钟安全系统(CSS)

时钟安全系统(CSS)被软件激活后,一旦HSE振荡器稳定则有一个监测HSE状态的时钟监视器被硬件使能,在监测到HSE失效后又被硬件关闭。

注意:必须在NMI中断函数中通过设置时钟中断寄存器RCC_CIR的CSSC位来清除CSS中断。否则,NMI将不断被执行。

6.1.6时钟输出

在对GPIO端口进行相应配置后,STM32处理器允许经MCO引脚输出时钟信号。SY⁃SCLK、HSI、HSE和PLLx(或PLLx/2)共四类时钟信号可被选作MCO输出时钟源,具体选择由时钟配置寄存器RCC_CFGR

中的MCO[2:0]控制。

6.1.7

STM32时钟初始化

由前述可知,STM32系统运行性能取决于内核时钟频率,其稳定性、可靠性、低功耗以及EMI

也取决于时钟系统,正确、合理地进行时钟系统初始化是保证整个系统成功运行的前提。

STM32时钟系统的初始化包括两部分的内容:

(1)确定SYSCLK

时钟源及频率:依据处理器系列确定SYSCLK最高频率,再结合性能、用户需求和功耗要求等进行选择,最后修改System_STM32f10x.c中的相关内容。

在此配置下,STM32F103xx时钟系统主要信号缺省频率见表6.3。

(2)开启外设时钟:结合外设和应用需求,合理设置分频比,在用户程序中使能时钟。

6.2定时器

嵌入式系统经常要为处理器和外设设定时间标记,执行与时间相关的控制或对外部事件进行计数,如分时系统周期性的任务切换、定时测量扫描、定时开关设备、记录外部事件的次数等。凡是跟时间有关的工作都要借助定时器(计数器)技术来实现。

6.2.1定(延)时基本方法

常用的定(延)时方法有以下三种:

(1)软件延时:对特定的处理器而言,每条指令都有固定的执行周期,因而可以令CPU

执行一段“空”程序来实现延时(等待)。

(2)硬件电路延时:采用附加的数字电路产生特定的延时,如555

单稳态延时电路。此方法的优点是电路简单,不占用CPU

时间,但改变延时时间需要调整电路参数,通用性和灵活性差;时间精度受电路参数影响,稳定性差。

(3)可编程定时器(计数器)产生延时(定时):以专用定时芯片(Intel

8253

等)或处理器中集成的定时器外设来进行定时。初始化完成后,定时器就以设定的方式独立于CPU

开始运行,或者产生高精度的定时间隔,或者对外部事件进行计数,用户视需要可以随时修改其运行参数甚至功能。

6.2.2定时器的一般工作原理

定时器(计数器)的核心是一个计数器,在计数脉冲每一次有效沿,计数器的数值将加1

或减1。当计数脉冲连接至处理器时钟时,由于其周期已知且稳定,脉冲数多少即代表时间的长短,因此称它为定时器。当计数的脉冲来自处理器外部(经引脚输入)时,由于其周期不确定,故被称为计数器。定时器(计数器)的应用多与时间相关,故一般简称为定时器。

1.

定时器的一般构成

定时器以标准时钟作为计数标准,可提供高精度的时间测量和作为高精度限时器。其一般原理如图6.4

所示。图6.4定时器的一般构成

2.

计数器的启动(触发)方式

计数器的触发方式是指确定“从什么时间开始计数”的方式。计数器有内触发和外触发两种触发方式。

内触发是一种软件触发方式。其计数开始时刻由软件决定,一般是用某种软件令触发计数器开始运行。可以在写时间常数的同时把计数器运行触发器置“1”,或者用软件触发命令使其运行。总之,内触发之后,计数器自动开始计数。

外触发是用外部信号触发计数器开始工作,以使计数器的工作与某种外部信号同步。或者利用该信号的上升沿,或者用其下降沿。这种触发方式又称硬件触发。

有的计数器还有门控(GATE)信号,比如,该信号为高电平时,计数器计数;为低电平时,停止计数(但不复位)。它也可用作计数器的外触发信号。

3.

定时器(计数器)在计算机中的应用

计时器在计算机中有广泛的用途,是计算机不可缺少的部件,其主要用途如下:

(1)用作硬件延时器,相比软件延时可节约大量CPU

工作时间,以用于其运算和处理。

(2)用作周期中断触发源,以进行DRAM

刷新、时钟管理、定时查询以及A/D及D/A变换的时间间隔控制等。

(3)用作波特率发生器、方波发生器等,以生成固定波形。

(4)用作可重复触发的单稳态电路,以用于事件间隔限时器。

如图6.5

所示,正常情况下,若触发间隔不超出计时间隔τ,单稳输出处于暂态;若超出τ,它将自动返回到稳态而产生中断。图6.5限时器的工作原理

6.2.3

STM32定时器概述

STM32F103xx系列片内除ARM

Cortex-M3

内核系统定时器SysTIck、1

个实时时钟(RTC)和2

个看门狗定时器外,随Flash

容量和引脚数不同最多可以有2

个高级控制定时器、4

个通用定时器、4

个简化定时器(

SysTIck、IWDG、WWDG和RTC)和2

个基本定时器(见表6.4)。

由表6.4

可知,STM32通用定时器除了通常意义上的可产生预定时间间隔的定时中断和对外部输入信号计数的功能外,它还能进行输入捕获、输出比较、脉宽调制输出和PWM输入等操作,满足大多数应用场合对定时器的要求。系统定时器、看门狗以及基本定时器可以看作通用定时器的简化版或专用版。而高级定时器则是通用定时器在PWM输出功能上的强化——为产生三相互补PWM信号提供硬件支持(如死区时间设置、刹车信号等),这为其在三相交流变频调速等相关领域的应用奠定了基础,故后续以通用定时器为代表来介绍STM32的定时器。

6.3

STM32的通用定时器

在STM32F103ZE中,TIM2~TIM5

皆为通用定时器,为便于叙述统称为TIMx。定时器输入、输出信号见表6.5。

图6.6

为通用定时器结构框图,从图中可以看出STM32的通用定时器分为时基单元、输入捕获单元和输出比较单元三大部分。图6.6通用定时器结构框图

6.3.1

STM32定时器工作原理分析

1.

影子寄存器

影子寄存器在处理器内对应2

个寄存器,一个是软件可以随时进行读/

写操作的寄存器——预加载寄存器另一个是对程序不可见,但在处理器运行过程中真正起作用的寄存器——影子寄存器。图6.6

中标有阴影的寄存器,如自动重加载寄存器ARR、计数器时钟预分频器PSC以及捕获/

比较寄存器CCRx等就属此类寄存器。

借助影子寄存器技术,可以保证相关的所有寄存器的值在同一个时刻(更新事件出现时)被更新,因此保证了定时器多通道操作在时间上严格同步。否则,首先因程序顺序执行的原因,各寄存器的更新势必有先后之分,就会造成各通道间时序的不同步,如果再加上其他因素(如中断),则多通道间的时序关系有可能是不可预知的。

2.

输入信号滤波

用定时器统计、测量外部信号的出现次数、持续时间等,都需要把外部信号经引脚引入定时器内部以供处理,但外部引入的信号往往含有偶发性的噪声,应采用技术手段消除。模拟量的偶发性噪声消除算法有算术平均滤波、中位值滤波、加权递推平均滤波、一阶滞后滤波和消抖滤波等。

STM32定时器在外部触发信号ETR和4

路输入捕获通道TIMx_CHx上皆设有基于多次采样表决法的硬件滤波器(输入滤波器),输入滤波器本质上是事件变化“计时器”,通过对输入信号按某一频率进行采样,当连续采样到N次“新”电平后,即信号“新”值保持超

过特定时长,是“永久”和“稳定”的,才认为是一次有效的输入变化,从而滤除了输入信号中的窄脉冲干扰。结合输入滤波器,可以由硬件实现类似软件去除按键抖动的功能,完全不需要软件干预,节省了CPU

时间。

3.

定时器时钟源

为实现外部事件计数、外部信号脉宽测量、定时范围扩展等功能,定时器除内部时钟脉冲CK_INT外,还有ETRF、ITRx和TIxx等时钟源(分频比1~65

536),ETR时钟还另外有1、2、4、8

四个分频比。

(2)外部时钟模式1:以触发输入TRGI

作为定时器时钟源,可供选择的时钟源有ITR0~ITR3(来自其他通用/

高级定时器的TRGO)、TI1F_ED(通道1

有效跳变)、TI1FP1(通道1

有效沿)、TI2FP2(通道2

有效沿)和ETRG(外部触发信号),如图6.7

所示。此模式下,ETRG作为时钟源时,还需考虑ETR信号本身预分频比的影响,除ETRG作为时钟源外:图6.7外部时钟模式1(TI1F_ED为时钟源)

(3)外部时钟模式2:即以外部触发ETR

作为计数时钟,如图6.8

所示。首先在TIMx_SMCR

中配置ETR的输入模式(ETP

有效沿检测、ETPS[1:0]预分频比、ETF[3:0]滤波),最后置ECE=1

选择ETRF

为计数时钟源。

提示:外部时钟模式2

与外部时钟模式1

下,将TRGI连到ETRF(TTS[2:0]=111、SMS[2:0]=111)实现的功能相同,皆是以ETRF

为计数时钟。

STM32众多可选的时钟源为满足定时器多种应用需求奠定了基础,时钟源的选用见表6.6。图6.8外部时钟模式2

6.3.2时基

图6.9

是对图6.6

时基部分的简化。以向上计数为例,定时器初始化完成后,被选作计数器时钟源的时钟信号CK_PSC

经预分频器分频后作为计数脉冲施加到计数器上,计数值随着时钟脉冲CK_CNT

开始从0

开始递增;当计数到自动重加载值(

TIMx_ARR值)后又重新从0

开始新一轮计数,同时产生计数器(向上)溢出事件。图6.9通用定时器时基单元

内部时钟源、预分频比=1

模式下,图6.10~图6.12

分别为计数器向上、向下和向上/向下计数时序图。图6.10向上计数时序图(TIMx_ARR=0x49)图6.11向下计数时序图(TIMx_ARR=0x49)图6.12向上/

向下计数时序图(TIMx_ARR=0x06)

1.

更新事件(UEV)

更新事件,顾名思义与寄存器值更新相关,准确地说是与影子寄存器的更新有关,具体情况见表6.7。

预加载控制、更新事件对影子寄存器写操作的影响如图6.13

所示。图6.13

TIMx_ARR赋值时序图图6.13

TIMx_ARR赋值时序图

2.

更新中断/

DMA请求

控制寄存器TIMx_CR1

的更新请求源URS=0

时,能够触发更新事件的事件都可产生更新中断/

DMA请求,而当URS=1

时,只有计数器溢出能够产生更新中断/

DMA请求。

6.3.3输出比较模式

对定时器(计数器)进行改进,使它能更精确地测量事件发生的时间,这就是输入捕获和输出比较功能。

1.

输出比较

输出比较原理如图6.14

所示,其电路由计数器、比较器、输出比较寄存器和输出逻辑组成。

计数器在给定标准时钟驱动下工作。比较寄存器给出比较值,当计数值达到比较值时,可以产生中断请求,并能驱动输出逻辑产生给定电平的输出信号。图6.14比较器输出原理

2.

STM32输出比较配置

输出比较功能由一个捕获/

比较寄存器TIMx_CCRx和计数器TIMx_CNT以及相应输出

部分(比较器和输出控制)组成,如图6.15

所示(以TIMx_CH1

通道为例)。图6.15定时器输出比较功能框图

其工作时序如图6.16

所示。图6.16定时器输出比较时序

图6.15

中,TIMx

计数运行时,计数值与TIMx_CCR1

事先设定值做对比,如果两者相等,则执行如下操作:

·设置通道输出值:输出比较模式OC1M[2:0](捕获/

比较模式寄存器TIMx_CCMR1中)决定中间信号OC1REF值(“高”有效),OC1REF

和输出有效极性选择位CC1P(捕获/比较使能寄存器TIMx_CCER

中)参照表6.8

决定OC1

输出值。

·设置状态寄存器TIMx_SR

的捕获/

比较CC1IF

标志位。

·如DMA/

中断使能寄存器TIMx_DIER

中CC1IE=1

则产生通道1

的捕获/

比较中断请求,CC1IE=1

且控制寄存器TIMx_CR2

的CCDS=0,则产生相应DMA

请求。

输出比较模式的配置:

(1)选择配置计数器时钟(内部或外部时钟,预分频器)。

(2)根据计数脉冲频率和输出信号参数,计算TIMx_ARR和TIMx_CCRx寄存器值。

(3)寄存器TIMx_CCMRx中OCxM[2:0]选择比较模式(参照表6.9),寄存器TIMx_CCMR中CCxP选择输出极性。

(4)如果要产生一个中断/

DMA请求,设置TIMx_DIER寄存器的CCxIE、CCxDE位,

清除TIMx_CR2

的CCDS位。

(5)设置输出比较使能寄存器TIMx_CCER中CCxE使能通道输出。

(6)设置TIMx_CR1

寄存器的CEN位启动计数器。

输出翻转是一旦计数值等于比较值,则翻转OCxREF

状态,从而使得相应输出通道引脚状态翻转,翻转频率为

【例6.2】

STM32运行频率72

MHz,APB1

时钟频率36MHz,TIM2

选用内部时钟,时钟预分频比=1。要求由PA0

引脚输出10

Hz

方波。

分析:PA0

引脚系定时器TIM2_CH1

复用引脚,因而能以定时器的输出比较翻转功能实现纯硬件支持方波输出,占用CPU

时间最少。由于硬件实现翻转,不需要软件参与,故较例6.1

除了占用CPU

时间少外,还有输出波形稳定、定时精度高的优点。

代码主要为:配置PA10

引脚复用模式、配置TIM2

时基和TIM2_CH1

通道等,初始化TIM2,使之产生20

Hz

的计数溢出(更新事件)中断。

6.3.4

PWM输出

1.

脉宽调制(PWM)

PWM是一种利用周期性脉冲信号的不同占空比表示不同信息的数字调制方式。通过调节波形的占空比和相位,利用PWM可以产生精确脉冲序列输出,能够用于交直流电动机调速、伺服电动机控制、D/A转换器等应用。例如,智能LED灯采用8

位PWM产生三基色幅值控制电压实现1600

万种颜色输出。图6.17直流电机PWM调速

2.

STM32PWM输出配置

STM32产生PWM信号的方法主要有两种:软件编程实现和利用定时器PWM输出模块实现。利用软件编程可以设定输出任意脉冲信号,但会占用CPU

时间,而且不易产生高精度的脉冲序列;而定时器PWM输出模块专门用于输出PWM信号,精度高,使用时极少占用CPU

时间。

3.

边沿对齐PWM

计数器采用向上或向下计数方式,其计数值和捕获/

比较寄存器TIMx_CCRx值比较就会产生占空比从计数值0

或自动加载值处开始计算的PWM脉冲,即边沿对齐PWM。图6.18

为边沿对齐(左对齐)PWM波形。

图6.19

为不同占空比下,左对齐PWM波形时序图。由图可见,STM32定时器的左对齐PWM能够输出占空比为0~100%的PWM脉冲。图6.19左对齐PWM占空比

计数器采用向下计数,在PWM1

模式下即可产生边沿右对齐PWM波形,如图6.20

所示。在此模式下,STM32定时器不能输出占空比=0%的PWM脉冲。图6.20右对齐PWM

4.

中央对齐PWM

中央对齐PWM是计数器采用向上/

向下计数方式所形成的PWM波形,如图6.21所示。图6.21中央对齐(居中对齐)PWM

左对齐PWM适用于大多数PWM使用场合。右对齐通常仅用于需要与左对齐PWM相反对齐方式的特殊场合。中心对齐PWM大多用于交流电机变频调速控制以保证三相相位对齐。边沿、中央对齐方式下,PWM输出技术指标见表6.10。

【例6.3】

STM32运行频率72

MHz(,APB1

时钟频率36MHz,TIM2

选用内部时钟,时钟预分频比=1。要求从TIM2_CH1(即PA0

引脚)输出频率为100

Hz,占空比10%、高电平有效的脉冲信号。

分析:信号从定时器复用引脚输出,故可以利用定时器PWM输出功能产生所需的脉冲信号。由于PWM输出涉及定时器时基和输出比较两大单元,因而需分别对时基和输出比较单元进行初始化,另外需配置PA0

为复用输出。主要代码如下:

6.3.5输入捕获

输入捕获是指通过对引脚输入信号电平变化的监测,在发现电平变化时,保存计数器值到输入捕捉寄存器中,同时设置输入捕获状态标志位;如果中断允许,则向CPU

发出中断请求,进而实现对事件发生间隔时间的测量以及对实时事件的响应。输入捕获功能业已应用于雷达测速、超声波测距、发动机转速以及车速等的测量上。

1.

信号周期测量

输入捕获功能由被捕获信号输入部分(数字滤波、边沿检测和预分频器),捕获/

比较寄存器TIMx_CCRx以及计数器CNT组成,如图6.22

所示(以TIMx_CH1

通道为例)。图6.22定时器输入捕获功能框图

图6.22

中,输入滤波器对TI1

输入信号采样滤波得到信号TI1F,经带极性选择的边沿检测器后获得有效沿信号TI1FP1,进而得到输入捕获信号IC1,此信号再经分频得到IC1PS。当一个有效的IC1PS来到后,即触发捕获事件,计数器当前值被锁存到捕获/

比较寄存器TIMx_CCR1

中,同时通道1

捕获/

比较标志CC1IF(TIMx_SR寄存器)被置1,如果使能了中断/

DMA请求,则将产生中断或DMA,相关时序图见图6.23。

注意:设置TIMx_EGR

寄存器中相应的CCxG

位,可以由软件产生输入捕获事件以及相应的中断/

DMA请求。图6.23输入捕获(信号周期)时序———TIMx_CH1

1)定时器配置

以测量TIMx_CH1

输入信号周期为例,参见图6.23,定时器配置步骤如下:

2)TIMx_CH1

信号周期测量软件编程

如图6.23

所示,在信号第一次有效边沿到来后,在中断函数中保存TIMx_CCR1

值,设保存值有效标志位,以标明已经读入一次输入捕获值,退出中断函数等待下一个有效边沿的到来。在下一次中断函数运行中,记录输入捕获寄存器的值,并与上次保存的值相减,将差值乘以计数时钟周期就是测量信号的周期:

2.

PWM输入模式

在周期测量基础上,借助输入ICx

重映射功能可以实现对信号周期、脉宽的同步测量———PWM输入模式(解调输入的PWM信号,得到输入脉冲的宽度和周期,是输入捕获的高级应用)。

以测量TIMx_CH1

输入信号脉宽、周期为例,配置操作需要在前述输入捕获(周期测量)配置基础上,添加以下操作:

·IC1

和IC2

都映射至TI1;IC1

为上升沿有效,IC2

为下降沿有效。

·以TI1FP信号为触发输入信号,且从模式控制器被配置成复位模式。

经以上配置,即将TI1

上下两个边沿跳变分别映射到了IC1

和IC2,上升沿时刻被保存在捕获/

比较寄存器TIMx_CCR1,并复位计数器;下降沿来到时,其到来时刻被保存到TIMx_CCR2,这样就可通过TIMx_CCR1

获取周期,TIMx_CCR2

得到脉宽时间,如图6.24所示。图6.24

PWM输入模式时序

信号周期为

信号脉宽为

注意:因TI1FP1

和TI2FP2

连接到从模式控制器,所以在STM32标准的PWM输入模式里,外部被测信号只能由TIMx_CH1

或TIMx_CH2

输入。

6.3.6单脉冲输出(OnePulseMide,OPM)

单脉冲工作模式是输入捕获与输出比较功能的组合,这种模式允许定时器在得到一个激励(外部事件)后,经过一段延时后输出一个脉冲作为响应,延时时间及脉冲持续时间(脉宽)可编

温馨提示

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

评论

0/150

提交评论