当前位置:
文档之家› 第6讲 事件管理器模块(EVB)
第6讲 事件管理器模块(EVB)
(3)QEP电路受到input qualifier circuity的作用,因 而他的频率受到限制,(SCSR2V.7=1,0)。
11 QEP电路
注意以下几点: (1)只能用于定时器2和定时器4提供输入时钟和计数方向; (2)其输入信号的频率不受预定标电路的控制; (3)而且正交编码脉冲电路产生的时钟频率是每个正交编码脉冲输 入频率的4倍。 (4)其输入频率必须低于CPU时钟频率的1/4。 M法、T法、MT法
定时器的计数模式
定时器的计数模式分为以下几种,是由于 TxCON:12~11来设置。 00:保持/停止; 01: 连续增/减计数模式; 10: 连续增计数模式; 11: 定向增/定向减计数模式。
定时器的使能和禁止
大家注意定时器的使能和禁止和停止保持计数方 式的区别。 TXCON:6可以用来使能和禁止计数器操作。 定时器被禁止时,有以下动作: (1)计数操作停止; (2)预定标位被复位;
第6讲 事件管理器模块 (EVB)
本讲主要内容
1.通用定时器的计数模式 2.比较单元
定时器的比较输出
通用定时器的比较输出指的是,T1CMP, T2 CMP, T3 CMP,T4 CMP 引脚的高低电平; 由GPTCONA/B中的相应的位来配置。
GPTCONA.0-1:设置T1CMP的引脚; GPTCONA.3-2:设置T2CMP引脚;
• (b) 当TDIRA为低电平时--减计数 • 计数器从初始值减小--计数器的值为0--计 数器的载入周期寄存器的值-循环往复。 • 如果定时器的值大于周期定时器的值 • 计数器的值减小到周期寄存器的值--减小到0 --开始正常工作。
TDIRA的电平变化
问题一:假设TDIRA由高电平变化为低电 平,计数器的计数方向如何变化。
比较单元
EVA中有3个全比较单元分别称为比较单元 1、2、3,其时基由通用定时器1和通用定时器 3提供。
每个比较模块包括
1. 3个16位的比较寄存器(CMPR1~3),各带一个影 子寄存器。(T1CMPR-定时器1的比较寄存器)。 2. 比较控制寄存器CONCONA/B,GPTCONA/B(全局 定时器控制寄存器)。 3. 比较方式控制寄存器ACTRA,影子寄存器。 4. 6个PWM引脚。 5. 主要用来驱动电机。
产生的中断: (1)计数器和周期寄存器匹配后的两个周期,产生周期 中断(TxPINT); (2)通用定时器变成0后的两个周期,定时器的下溢中 断产生(TxUFINT) 。 (3)定时器的值达到FFFFH后的两个时钟周期后,产 生上溢中断(TxOFINT)。 (4)记周期寄存器的值为TXPR, 那么,除了定时器的 第一个周期外,定时器周期时间为_____倍的时钟周 期。
(1)产生下溢中断的时间是否等于产生周期中断的时间; (2)什么时候产生上溢中断。
连续增模式的计数方向
在该模式下,GPTCONA/B寄存器的定时 器计数器计数方向指示位为1,TDIRA/B引脚 输入将被通用定时器忽略。 注意:TDIRA/B引脚的状态和增减计数 是不同的。 GPTCONA:14~13位,R_1:1为增计数,0 为减计数(14位为T2STAT,13位为T1STAT) 应用:用于PWM脉冲,或者周期采样。
具有以下几种情况: (1) 为高有效时候:(10) 第一次比较匹配发生时, TXCMP引脚的电平由低到高; 第二次匹配发生时: 如果定时器处于增/减计数模式, TXCMP引脚 的的电平由高到低; 如果定时器处于增计数模式, TXCMP引脚的 的电平由高到低;
(2)如果为低有效时,(01)当第一次比较匹配发生时,----
(1)中断 在EVAIFRA/B中,每一个比较单元都有一 个中断标志使能位。 如果比较操作被使能,比较匹配后的一个 CPU周期后,比较单元的中断标志置位。 COMCONA中。 如果该中断没有被屏蔽,则产生中断请求。
复位
当任何一种复位事件发生时,所有和 比较单元相关的寄存器都被复位为0,并 且所有的输出引脚被置成高阻态。
对称波形和连续增/减计数 模式
假设GPTCONA:1~0=01为例,即T1CMP引 脚为低有效 (1)计数器开始工作时,T1CMP为高电平;
(2)计数器的值增加,产生比较匹配,T1CMP变为低电平;
(2)计数器的值继续增加,产生周期匹配,计数器的值减小,再次 产生比较匹配,T1CMP引脚发生跳变,由高电平变为低电平。
(2)计数器的值增加,产生比较匹配,T1CMP变为低电平;
(3)继续增加到周期寄存器的值,T1CNT变为 0,T1CMP变为高电平;(发生周期匹配)
思考:
1.如果T1PR的值小于T1CMPR的值, T1CMP引脚的电平能否产生跳变; 2.在低有效的情况下,低电平时间和整个 周期的比值是多少; 3.在高有效的情况下,低电平时间和整个 周期的比值是多少。
思考:
1.如果T1PR的值小于T1CMPR的值, T1CMP引脚的电平能否产生跳变; 2.在低有效的情况下,低电平时间和整个 周期的比值是多少; 3.在高有效的情况下,低电平时间和整个 周期的比值是多少。
通用定时器复位
(1)GPTCONA/B寄存器中,计数方向指示 位被复位为1,其他全部复位为0。 (2)所有的定时器中断标志位都被复位为0; (3)所有的定时器中断屏蔽位都被复位为0, 所有定时器的中断都被屏蔽; (4)所有的定时器的比较输出都被复位为高 阻态。
• 下图为定时器1的信号框图,外部时钟信 号由那个引脚输入,考虑预定标系数是 否对外部时钟信号起作用。
• 下图为定时器2的信号框图,考虑预定标 系数是否对QEP起作用。
注意:
(1)外部时钟信号的频率必须低于或等于CPU时钟频率 的1/4,而内部时钟频率可以等于CPU时钟频率; (2) 在定向增减模式下,通用定时器2、4可以用于 QEP电路,这时QEP电路既为定时器提供时钟,又提 供方向;
(5)计数器的变化方式 初始值--增计数--周期寄存器的值--减 计数--到0--增计数--
思考
在这种计数方式下,假设定时器的计 数周期为1s,周期寄存器的值为3。 (1)如果为定向增减计数模式,多长时间 发生一次下溢中断? (2)如果为连续增减计数模式,多长时 间发生一次下溢中断?
思考
TDIRA引脚的电平在什么条件下,会影响 定时器2中计数器的计数器方向?
(1)保持/停止计数模式
在这种计数模式下,通用定时器停止操作 并且保持当前状态,定时器的计数器、 比较输出TxCMP,和预定标计数器都保 持不变。 *T1CON=*T1CON&E7FFH;
连续增计数模式
• 工作模式:
对时钟脉冲进行计数,直到定时器计数器 的值和周期寄存器的值相等为止。 匹配后下一个时钟的上升沿,通用定时器 复位为0,并开始另外一个计数周期。
思考:结合以下波形变化,考虑中断发生 情况。
连续增/减计数模式
• (1)设置方法:Txcon:12~11=10时。
• (2)TDIRA不再影响定时器的计数方向。 • (3)定时器的计数方向,只有在计数器的值达到周期寄存 器的值时,才会由增计数变化为减计数。 • (4)计数器的值在什么情况下,能达到FFFFH呢?
定向增/定向减计数模式
(1)设置方法:Txcon:12~11=11时。
(2)特点:根据预定标和TDIRA/B的电平来确定计数 器的周期和计数方向。 (3)计数器工作过程: a 当TDIRA为高电平时--增计数 计数器从初始值增加--周期寄存器的值--计 数器清0--循环往复。 如果计数器的初始值大于周期寄存器的值--- 计数器的值增加--FFFFH--计数器清0--循环 往复。
动AD转换。 例子:GPTCONA:8~7:为11时,则可以利用比较标志 位来启动AD转换。 思考:如果利用比较标志位来启动A/D转换,是否需要 编写需要响应比较中断。
比较操作和计数模式之间的关系
1. 连续增计数模式和非对称波形
假设GPTCONA:1~0=01为例,即T1CMP引脚为低有效 (1)计数器开始工作时,T1CMP为高电平;
初始值问题
通用定时器的初始值可以是0000h~FFFFH中 的任意值。 (1)当初始值小于周期寄存器的值时,计数器 的值达到周期寄存器的值时,计数器清0; (2)当初始值大于周期寄存器的值时,计数器 的值达到FFFFh时,计数器的值清0。 当计数器的值达到FFFFh时,会产生_____ 中断。
连续增计数模式的图解
比较操作的工作模式
•
通用定时器1的计数器不断与比较寄存器的值进 行比较,当计数器的值和比较单元的值发生匹配时, 产生以下动作: • (1)比较单元的两个输出发生跳变。 • (2)中断标志寄存器被置位,产生中断。 CMPxINT:比较单元x中断; TXCMP:通用定时器的比较中断。
比较单元的中断和复位
TDIRA电平变化--当前计数周期计数后( 时间由预定标器和时钟频率决定)--再经过 两个时钟周期---计数器的计数方向发生变 化。
• 问题二:在程序中,如何判断计数器的 计数方向。GPTCONA的14位。
该位为1时,为增计数。 如果计数模式为,连续增是否可以判断 TDIRA引脚的状态。 思考: flag= GPTCONA&0100000000000000b; 如果flag!=0,则计数器的计数是增计数还 是减计数?
COMCONA.12 空间矢量PWM使能位 0 禁止空间矢量PWM模式 1 使能空间矢量PWM模式 COMCONA.11~10 比较方式控制寄存器ACTRA 重载条件 00 下溢;01 下溢或周期匹配;10 立即;11 保留
COMCONA.9 比较输出使能位 0 PWM1~6 为高阻态 1 使能。 COMCONA.8 PDPINTA 状态位 0 低电平; 1 高电平。 只读。R_PDPINTA. 其它为保留位。
通用定时器的比较操作
• (1)注意这里的操作不是全比较单元, 而是定时器比较单元。