123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104 |
- #include "sys_ctrl.h"
- //#include "api.h"
- #include "CodePara.h"
- #define FALSE (0U)
- #define TRUE (1U)
- SysCtrl_PwmHandle sysctrl_stPwmState;
- void sysctrl_voPwmInit(void)
- {
- // /* Set 50% duty */
- // UWORD prd = iPwm_GetCountMax(0);
- // iPwm_SetCompareValue(0, 0, prd >> 1);
- // iPwm_SetCompareValue(0, 1, prd >> 1);
- // iPwm_SetCompareValue(0, 2, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 0, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 1, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 2, prd >> 1);
- //
- // /* PWM off */
- // sysctrl_voPwmOff();
- //
- // /* Charge init */
- // sysctrl_stPwmState.uwChargeCnt = 0;
- // sysctrl_stPwmState.blChargeOvrFlg = FALSE;
- }
- void sysctrl_voPwmOn(void)
- {
- // if (sysctrl_stPwmState.blPwmOnflg == FALSE)
- // {
- // iPwm_SetCompareMode(0, API_PWM_CH(0), ApiPwm_HigherSet);
- // iPwm_SetCompareMode(0, API_PWM_CH(1), ApiPwm_HigherSet);
- // iPwm_SetCompareMode(0, API_PWM_CH(2), ApiPwm_HigherSet);
- // iPwm_SetCompareMode(0, API_PWM_CH(3), ApiPwm_HigherSet);
- //
- // iPwm_EnableChannelOutput(0, API_PWM_CH(0));
- // iPwm_EnableChannelOutput(0, API_PWM_CH(1));
- // iPwm_EnableChannelOutput(0, API_PWM_CH(2));
- // iPwm_EnableChannelOutput(0, API_PWM_CH(3));
- //
- // iPwm_EnableChannelOutput(0, API_PWM_CHN(0));
- // iPwm_EnableChannelOutput(0, API_PWM_CHN(1));
- // iPwm_EnableChannelOutput(0, API_PWM_CHN(2));
- // iPwm_EnableChannelOutput(0, API_PWM_CHN(3));
- //
- // sysctrl_stPwmState.blPwmOnflg = TRUE;
- // }
- }
- void sysctrl_voPwmOff(void)
- {
- // if (sysctrl_stPwmState.blPwmOnflg == TRUE)
- // {
- // iPwm_SetCompareMode(0, API_PWM_CH(0), ApiPwm_ForceClear);
- // iPwm_SetCompareMode(0, API_PWM_CH(1), ApiPwm_ForceClear);
- // iPwm_SetCompareMode(0, API_PWM_CH(2), ApiPwm_ForceClear);
- // iPwm_SetCompareMode(0, API_PWM_CH(3), ApiPwm_ForceClear);
- //
- // iPwm_DisableChannelOutput(0, API_PWM_CHN(0));
- // iPwm_DisableChannelOutput(0, API_PWM_CHN(1));
- // iPwm_DisableChannelOutput(0, API_PWM_CHN(2));
- // iPwm_DisableChannelOutput(0, API_PWM_CHN(3));
- //
- // sysctrl_stPwmState.blPwmOnflg = FALSE;
- // }
- }
- void sysctrl_voCharge(void)
- {
- /* Set 50% duty */
- // UWORD prd = iPwm_GetCountMax(0);
- // iPwm_SetCompareValue(0, 0, prd >> 1);
- // iPwm_SetCompareValue(0, 1, prd >> 1);
- // iPwm_SetCompareValue(0, 2, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 0, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 1, prd >> 1);
- // iPwm_SetCompareValueDelay(0, 2, prd >> 1);
- sysctrl_voPwmOn();
- sysctrl_stPwmState.uwChargeCnt ++;
- if (sysctrl_stPwmState.uwChargeCnt > cp_stControlPara.swIPMHvicChrgMs)
- {
- sysctrl_stPwmState.uwChargeCnt = 0;
- sysctrl_stPwmState.blChargeOvrFlg = TRUE;
- }
- }
- void sysctrl_voThrPhsShrt(void)
- {
- /* Set 0% duty */
- // iPwm_SetCompareValue(0, 0, 0);
- // iPwm_SetCompareValue(0, 1, 0);
- // iPwm_SetCompareValue(0, 2, 0);
- // iPwm_SetCompareValueDelay(0, 2, 0);
- // iPwm_SetCompareValueDelay(0, 2, 0);
- // iPwm_SetCompareValueDelay(0, 2, 0);
- // iPwm_SetCompareValueImmediate(0, 2, 0);
- // iPwm_SetCompareValueImmediate(0, 2, 0);
- // iPwm_SetCompareValueImmediate(0, 2, 0);
- sysctrl_voPwmOn();
- }
|