首先,我们可以看到这个图大概有两个不分,一个部分是时钟源,另一个部分则是输入输出

时钟源计数,到CNT计数器,然后根据捕获比较寄存器进行记录或比较。记录或比较有不同的配置。

首先是TI信号
TI1 TI2 TI3 TI4:这个信号就是外部信号,是直接与管脚相连的信号,图中还有一个问题就是TI1是可以是第一通道的外部信号进行触发,
也可以设置为,第一通道,第二通道,第三通道异或进行触发。外部信号送往滤波器和边沿检测器。

TIxFP触发有效信号。  
TI1FP1 TI1FP2 TI2FP1 TI2FP2 TI3FP3 TI3FP4 TI4FP3 TI4FP4:这个就是一个触发有效信号,由于与管脚直连的信号可以被设置为高低边沿触发,
所以通过设置后,TIxFP就是对应这个信号是否有效的标致。

ICx映射信号
IC1 IC2 IC3 IC4:通道有效信号,在他的前面是TIxFP和TRC信号,可以看出,TI1FP与TI2FP可以互相对应IC1和IC2,TI3FP和TI4FP可以互相对应IC3和IC4,
这样的话,就可以使一个TIxFP信号对应两个ICx也就是对应两个通道。
这样的话,就可以实现PWM输入了,可以由1个来计算周期,另一个来计算占空比。ICx信号被送入预分频器

通道中断和DMA输出信号
CC1I CC2I CC3I CC4I:ICx信号经过预分频器后即可通过配置产生中断或DMA输出。

预分频计数信号
IC1PS IC2PS IC3PS IC4PS::ICx信号经过预分频器后即可以进入CCRx计数寄存器了,此时可配合中断对CCR读取。

OC1REF输出有效信号
OC1REF OC2REF OC3REF OC4REF:当比较输出或PWM输出时第一个输出的信号。
这个信号经过配置高低电平,才能变成输出到管脚的有效电平的。

比较输出PWM输出电平
OC1 OC1N OC2 OC2N OC3 OC3N OC4:输出到管脚的信号

刹车输入管脚信号
BRK刹车输入管脚信号,引脚输入后进入极性选择。

刹车信号
BI:刹车信号,通过极性选择的信号与时钟失效信号相或后,得出刹车有效信号。来驱动刹车。

更新时间
u更新事件信号,由软件事件寄存器或计数器溢出产生。

事件更新中断
UI:事件更新中断信号

外部ETR触发脚信号
ETR:与外部管脚相连的触发定时器专用触发脚

边沿预分频后ETR信号
ETRP:边沿预分频后ETR信号

经过滤波后的ETR有效信号
ETRF:ETRP经过滤波,极性,边沿后的有效信号

内部触发ITRx通道信号
ITR0 ITR1 ITR2 ITR3 :触发可由内部其他定时器产生信号,且定时器1和定时器8的定时器触发不同。在数据手册中的定时器章表74有体现

ITR触发信号
ITRx经过设置,产生触发信号。进入下一个环节。

TI1的边沿检测器
TI1F_ED:TI1的边沿检信号,在霍尔传感器模式下,会检测TI1的变化,从输入是TI1F_ED。
每当3个输入之一变化时,计数器从新从0开始计数。这样产生一个由霍尔输入端的任何变化而触发的时间基准。

TRC:通过选择器选择TI1边沿与内部触发后,发出的触发信号。

TRGI:最终的触发输入。

TGI:触发输入中断位

TRGO:触发输出。作为主模式去发出控制其他定时器的触发信号,应该与其他定时器的ITRx相连。

关于STM32数据手册中的定时器信号的更多相关文章

  1. stm32之Cortex系统定时器(SysTick)

    转载自:http://www.21ic.com/app/mcu/201811/781135.htm   SysTick时钟,俗称“嘀嗒定时器”,它能按设定的时间产生一次中断.控制工程代码中随处可见形如 ...

  2. pyqt4:在线程Qthread中使用定时器Qtimer

    GUI main 部分,主app类中的__init__初始化方法中添加 实例化线程 self.s2_thread=Worker2() 初始化一个定时器 self.log_get=QtCore.QTim ...

  3. Qt中使用定时器(可使用QObject::timerEvent定时执行,QTimer::singleShot可只触发一次)

    在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器:一种是使用QTimer类.定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度 1.QObject类的定时器 QObje ...

  4. 让你提前认识软件开发(21):C程序中的定时器

    版权声明:本文为博主原创文章.对文章内容有不论什么意见或建议.欢迎与作者单独交流.作者QQ(微信):245924426. https://blog.csdn.net/zhouzxi/article/d ...

  5. linux中的常用信号

    linux中的常用信号,见如下列表: 信号名 值 标注 解释 ------------------------------------------------------------------ HU ...

  6. 浅谈JavaScript中的定时器

    引言 使用setTimeout()和setInterval()创建的定时器可以实现很多有意思的功能.很多人认为定时器是一个单独的线程(之前我也是),但是JavaScript是运行在单线程环境中的,而定 ...

  7. 第十四篇:在SOUI中使用定时器

    前言 定时器是win32编程中常用的制作动画效果的手段.在Win32编程中,可以使用::SetTimer来创建定时器,定时器消息会被会发到调用SetTimer时指定的HWND. 在SOUI中一般来说只 ...

  8. cocos2dx中的定时器及其分类

    cocos2dx中的定时器分三大类: 1.帧循环定时器 2.一次性定时器 3.自定义定时器 一.帧循环定时器,顾名思义,每一帧都会执行一次,用于实时性要求比较高的场合,如碰撞检测 void sched ...

  9. C++控制台程序中使用定时器

    转自博客:http://www.cnblogs.com/phinecos/archive/2008/03/08/1096691.html 作者:洞庭散人 “我现在项目是一个控制台程序,用到的Win32 ...

随机推荐

  1. Java笔记之java.lang.String#trim

    String的trim()方法是使用频率频率很高的一个方法,直到不久前我不确定trim去除两端的空白符时对换行符是怎么处理的点进去看了下源码的实现,才发现String#trim的实现跟我想像的完全不一 ...

  2. Python 入门基础9 --函数基础2 实参与形参

    今日内容: 一.函数参数 1.形参与实参定义 2.实参分类 3.形参分类 4.可变参数的整体使用 一.形参与实参定义 def fn(参数们): pass 1.1 形参 定义函数,在括号内声明的变量名, ...

  3. python之celery使用详解(二)

    前言 前面我们了解了celery的基本使用后,现在对其常用的对象和方法进行分析. Celery对象 核心的对象就是Celery了,初始化方法: class Celery(object): def __ ...

  4. innobackupex做MySQL增量备份及恢复【转】

    创建备份用户 mysql> grant process,reload,lock tables,replication client on *.* to 'backup'@'localhost' ...

  5. springboot自定义SpringApplication启动类

    如果默认的SpringApplication不符合你的口味,你可以创建一个本地的实例并自定义它.例如,关闭banner你可以这样写: public static void main(String[] ...

  6. spring mvc file upload

    文件上传 1.需要导入两个jar包 2.在SpringMVC配置文件中加入 1 2 3 4 <!-- upload settings --> <bean id="multi ...

  7. php ++测试

    2014年4月27日 12:17:47 结论暂时没有组织语言去表述,但是看看测试结果大家都会明白的 $x = 1; $y = empty($x) ? 3 : $x++; var_dump($x,$y) ...

  8. 开启@EnableRedisHttpSession

    sessionId=569662ce-c6d5-42a9-a94b-c9df826df716 1800秒后失效 sessionId=23913542-9b5f-4699-8a87-1023b57f5f ...

  9. http://blog.csdn.net/u011001723/article/details/45621027

    http://blog.csdn.net/u011001723/article/details/45621027 scp  + 脚本 config 外置 http://www.cnblogs.com/ ...

  10. java 异常的限制

    一. 1.) 在覆盖方法的时候,只能抛出在基类方法的异常说明里列出的那些异常 2.) 在基类构造器声明的异常,在子类必须抛出,子类的构造器可以抛出任何异常,但是必须抛出基类构造器的异常 3.) 在基类 ...