TI中文支持网
TI专业的中文技术问题搜集分享网站

pwm波生成中TBCTL设置

在TI给的电机控制例程里,

  (*ePWM[ch1]).TBCTL.all = PWM_INIT_STATE;

 

#define PWM_INIT_STATE (

FREE_RUN_FLAG +         \                          

PRDLD_IMMEDIATE  +       \                         

TIMER_CNT_UPDN +         \                         

HSPCLKDIV_PRESCALE_X_1 + \                         

CLKDIV_PRESCALE_X_1  +   \                         

PHSDIR_CNT_UP    +       \                         

CNTLD_DISABLE )

 

#define FREE_RUN_FLAG               0x8000

#define PRDLD_IMMEDIATE             0x0008

。。。。。。依次还有很多

这是什么意思呢?为什么这么多控制符呢?程序是个什么逻辑呢?

 给CTL寄存器不是赋一个值就行了吗? 那么多是先赋一个 再赋下一个 还是什么意思呢?

yingjie he1:

回复 Terry Deng:

每一位是如何来整合的啊??例如每一位是0x0000;0x0000;0x0000;0x0030;0x0000;0x8000;0x88000,整合后是多少啊??

在TI给的电机控制例程里,

  (*ePWM[ch1]).TBCTL.all = PWM_INIT_STATE;

 

#define PWM_INIT_STATE (

FREE_RUN_FLAG +         \                          

PRDLD_IMMEDIATE  +       \                         

TIMER_CNT_UPDN +         \                         

HSPCLKDIV_PRESCALE_X_1 + \                         

CLKDIV_PRESCALE_X_1  +   \                         

PHSDIR_CNT_UP    +       \                         

CNTLD_DISABLE )

 

#define FREE_RUN_FLAG               0x8000

#define PRDLD_IMMEDIATE             0x0008

。。。。。。依次还有很多

这是什么意思呢?为什么这么多控制符呢?程序是个什么逻辑呢?

 给CTL寄存器不是赋一个值就行了吗? 那么多是先赋一个 再赋下一个 还是什么意思呢?

yingjie he1:

回复 yingjie he1:

已经解决,谢了

在TI给的电机控制例程里,

  (*ePWM[ch1]).TBCTL.all = PWM_INIT_STATE;

 

#define PWM_INIT_STATE (

FREE_RUN_FLAG +         \                          

PRDLD_IMMEDIATE  +       \                         

TIMER_CNT_UPDN +         \                         

HSPCLKDIV_PRESCALE_X_1 + \                         

CLKDIV_PRESCALE_X_1  +   \                         

PHSDIR_CNT_UP    +       \                         

CNTLD_DISABLE )

 

#define FREE_RUN_FLAG               0x8000

#define PRDLD_IMMEDIATE             0x0008

。。。。。。依次还有很多

这是什么意思呢?为什么这么多控制符呢?程序是个什么逻辑呢?

 给CTL寄存器不是赋一个值就行了吗? 那么多是先赋一个 再赋下一个 还是什么意思呢?

yibo zhang2:

回复 yingjie he1:

你好  可以指点我一下么  这个是什么意思呢  谢谢

在TI给的电机控制例程里,

  (*ePWM[ch1]).TBCTL.all = PWM_INIT_STATE;

 

#define PWM_INIT_STATE (

FREE_RUN_FLAG +         \                          

PRDLD_IMMEDIATE  +       \                         

TIMER_CNT_UPDN +         \                         

HSPCLKDIV_PRESCALE_X_1 + \                         

CLKDIV_PRESCALE_X_1  +   \                         

PHSDIR_CNT_UP    +       \                         

CNTLD_DISABLE )

 

#define FREE_RUN_FLAG               0x8000

#define PRDLD_IMMEDIATE             0x0008

。。。。。。依次还有很多

这是什么意思呢?为什么这么多控制符呢?程序是个什么逻辑呢?

 给CTL寄存器不是赋一个值就行了吗? 那么多是先赋一个 再赋下一个 还是什么意思呢?

cumt wuxiang:

回复 Terry Deng:

您好,请问#define FREE_RUN_FLAG               0x8000 这些定义在哪个文件里?为什么我在程序里没找到这些变量的恒定义?

赞(0)
未经允许不得转载:TI中文支持网 » pwm波生成中TBCTL设置
分享到: 更多 (0)