Part Number: TMS320F28069M
Other Parts Discussed in Thread: CONTROLSUITE
Tool/software: Code Composer Studio
Hello,everyone.I don't understand the procedure.Please help me!
{
// Hall_A, Hall_B, Hall_C
gHall_GpioData = (~HAL_readGpio(halHandle, (GPIO_Number_e)HAL_HallGpio_C) & 0x1) << 2; //CAP1->J10/J4_1->green
gHall_GpioData += (~HAL_readGpio(halHandle, (GPIO_Number_e)HAL_HallGpio_B) & 0x1) << 1; //CAP2->J10/J4_2->green&white
gHall_GpioData += (~HAL_readGpio(halHandle, (GPIO_Number_e)HAL_HallGpio_A) & 0x1); //CAP3->J10/J4_3->gray&white
{
gHall_timer_now = HAL_readTimerCnt(halHandle,2);
gHall_time_delta_now = gHall_timer_prev - gHall_timer_now;
gHall_timer_prev = gHall_timer_now;
gHall_time_delta_prev = gHall_time_delta_now;
gHall_speed_fdb_pu = gHall_speed_fdb_0p01Hz*gHall_Speed_0p01hz_to_pu_sf;
// {
// gHall_speed_fdb_pu = -gHall_speed_fdb_pu;
// }
gHall_State_delta = gHall_PwmIndex[gHall_State] - gHall_PwmIndex[gHall_PrevState];
{
gHall_dir = 1; // positive direction
}
else if((gHall_State_delta == 1) || (gHall_State_delta == -5))
{
gHall_dir = 2; // negative direction
gHall_speed_fdb_pu = -gHall_speed_fdb_pu;
}
else
{
gHall_dir = 0; // direction change
}
//if direction is changed, speed feedback is reset.
if(gHall_dir != gHall_dir_prev)
{
gHall_speed_fdb_pu = _IQ(0.0);
gHall_dir_change = 1;
}
gHall_PrevState = gHall_State;
gHall_dir_prev = gHall_dir;
gHall_PwmCnt = 0;
}
else
{
gHall_PwmCnt++;
if(gHall_PwmCnt > gHall_PwmCntMax)
{
gHall_speed_fdb_pu = _IQ(0.0);
gHall_PwmCnt = 0;
}
}
}