gHall_State_delta = gHall_PwmIndex[gHall_State] - gHall_PwmIndex[gHall_PrevState];
if((gHall_State_delta == -1) || (gHall_State_delta == 5))
{
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
}
{
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
}
这是lab11e中的一段程序,上面是变量地址的计算,目前是正转,我修改了gHall_State_delta = gHall_PwmIndex[gHall_PrevState] - gHall_PwmIndex[gHall_State];按照程序可以实现反转,但是还是正转,为什么呢?