paradoxfx

【原创】TI C2833x介绍---ePWM(6)

0
阅读(3326)

时间基准控制控制TBCTL寄存器的低六位是:



其含义分别为:

6:SWFSYNC,软件强制同步脉冲

0:写0无反应;读,将始终返回0

1:写1将强制产生一次同步脉冲信号

5~4:SYNCOSEL,同步信号输出选择,用于选择EPWMxSYNCO信号的输出源

00:EPWMxSYNC

01:CTR=ZERO,时间基准计数器TBCTR=0

10:CTR=CMPB,时间基准计数器TBCTR=CMPB

11:禁止输出EPWMxSYNCO信号

3:PRDLD,决定周期寄存器TBPRD映射单元何时向当前单元装载数据

0:使能映射寄存器;此时,对周期寄存器TBPRD的读写写直接表现为对映射寄存器的读写;然后当CTR=ZERO时,将映射寄存器中的数据装载到当前寄存器

1:使用立即模式(immediate mode),禁止使用映射寄存器

2:PHSEN,相位使能位

0:禁止TBCTR加载相位寄存器TBPHS中的值

1:当同步信号EPWMxSYNCI输入或当软件强制同步事件发生时,TBCTR加载

   相位寄存器TBPHS中的值

1~0:CTRMODE,计数模式选择

00:増计数

01:减计数

10:增减计数

11:停止计数器相关操作(默认)

 

在对TBCTL进行操作之后,看一下时基状态寄存器(TBSTS)的内容。比起CPU状态寄存器ST的复杂程度,TBSTS的内容在目前要简单的多,16个状态位中前13个全是保留位(后续升级可以使用):

15-3 保留位

2CTRMAX

1SYNCI

0CTRDIR

2:CTRMAX   用于判断TBCTR是否达到过最大值0xFFFF

0:读,返回0表明TBCTR从未到达过0xFFFF,写0无反应

1:读,返回1表明TBCTR到达过0xFFFF,写1将清除相应锁存事件

1:SYNCI        用于判断同步信号的输入锁存状态

0:读,返回0表明从未发生过同步事件,写0无反应

1:读,返回1表明发生过同步事件,写1将清除相应的锁存事件

0:CTRDIR     时间基准计数器方向判断位,在复位后由于计数器默认为禁止状态,所以此位无意义,当通过TBCTL[CTRMODE]设定好计数器模式后,此为才有意义

0:计数器正在减计数

1:计数器正在増计数