📄 pwm.c
字号:
/*
***********************************************************************
* For test BLDC
* 2008-1-7
***********************************************************************
*/
//=============================================//
#include "Spmc75f2313a.h"
#include "Spmc_typedef.h"
#include "unSPMACRO.h"
void BLDC_Test4_PU120FullPWM(unsigned int position)
{
switch(position&0x07)
{
case(1): //V1,V2
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_PWM | CW_TMR4_UOC_Mode2 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode0 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode1;
break;
case(3): //V2,V3
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode0 |\
CW_TMR4_VPWM_Out_PWM | CW_TMR4_VOC_Mode2 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode1;
break;
case(2): //V3,V4
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode1 |\
CW_TMR4_VPWM_Out_PWM | CW_TMR4_VOC_Mode2 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode0;
break;
case(6): //V4,V5
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode1 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode0 |\
CW_TMR4_WPWM_Out_PWM | CW_TMR4_WOC_Mode2;
break;
case(4): //V5,V6
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode0 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode1 |\
CW_TMR4_WPWM_Out_PWM | CW_TMR4_WOC_Mode2;
break;
case(5): //V6,V1
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_PWM | CW_TMR4_UOC_Mode2 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode1 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode0;
break;
default:
NOP();
break;
}
}
void BLDC_Test4_NU120FullPWM(unsigned int position)
{
switch(position&0x07)
{
case(6): //V1,V2
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_PWM | CW_TMR4_UOC_Mode2 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode0 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode1;
break;
case(4): //V2,V3
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode0 |\
CW_TMR4_VPWM_Out_PWM | CW_TMR4_VOC_Mode2 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode1;
break;
case(5): //V3,V4
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode1 |\
CW_TMR4_VPWM_Out_PWM | CW_TMR4_VOC_Mode2 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode0;
break;
case(1): //V4,V5
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode1 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode0 |\
CW_TMR4_WPWM_Out_PWM | CW_TMR4_WOC_Mode2;
break;
case(3): //V5,V6
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_HL | CW_TMR4_UOC_Mode0 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode1 |\
CW_TMR4_WPWM_Out_PWM | CW_TMR4_WOC_Mode2;
break;
case(2): //V6,V1
P_TMR4_OutputCtrl->W = CW_TMR4_POLP_Active_High | \
CW_TMR4_UPWM_Out_PWM | CW_TMR4_UOC_Mode2 |\
CW_TMR4_VPWM_Out_HL | CW_TMR4_VOC_Mode1 |\
CW_TMR4_WPWM_Out_HL | CW_TMR4_WOC_Mode0;
break;
default:
NOP();
break;
}
}
//=============================================//
// *END*
//=============================================//
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -