在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 这些定义在哪个文件里?为什么我在程序里没找到这些变量的恒定义?
TI中文支持网



