串口遥控器控制电机,
Key_Value_Rst == 0 的时候,串口向遥控器发送一个指令
遥控器通过判断这个指令来,清除Key_Ture_Value的值
主要实现功能:控制翻身电机
如果腿部两马达处于放平位置(腿部1处于最小行程,腿部2处于最大行程),
腿部两马达不动作,如果腿部两马达未处于放平位置,则腿部两马达先动作至放平
位置;其次,如果背部处于平躺位置(背部马达处于最小行程),则背部马达不动
作,如果背部没有处于平躺位置,则背部马达先放平。这时再次双击按键翻身马达
开始动作,中途按压任意按键或松开按键,马达停止。
/*
* 描述: 翻身电机控制
* 参数: 1 Up 2Down
* 返回: 无*/
void Motor_Turn_Run(u8 dir)
{
if(Motor_Head_Position == 1)
{
Motor_Head_Stop();
if((Motor_Foot1_Position == 1)&&(Motor_Foot2_Position == 5))
{
Motor_Foot1_Stop();
Motor_Foot2_Stop();
if(motor_turn_run_flag == 1)
{
Key_Value_Rst = 0;
}
else
{
if(dir == KEY_LEFT_RUN)
{
Turn_Check_Position(MOTOR_DIR_UP);
}
else if(dir == KEY_RIGHT_RUN)
{
Turn_Check_Position(MOTOR_DIR_DOWN);
}
}
}
else
{
motor_turn_run_flag = 1;
Foot2_Check_Position(MOTOR_DIR_UP);
Foot1_Check_Position(MOTOR_DIR_DOWN);
}
}
else
{
motor_turn_run_flag = 1;
Head_Check_Position(MOTOR_DIR_DOWN);
}
}