MC_StopMotor1()电机后,再也无法启动了
//使用串口中断控制***_it.c
extern uint8_t recivedatass;
void USART1_IRQHandler(void)
{
HAL_UART_IRQHandler(&huart1);
HAL_UART_Receive_IT(&huart1,&recivedatass,1);
printf("int:rcv=%d\r\n",recivedatass);
}
main.c
main()
{
...
while (1)
{
if(recivedatass==65)
{
MC_StopMotor1();
printf("exec stop motor \r\n");
recivedatass=0;
}
if(recivedatass==66)
{
printf("exec before start motor\r\n");
MC_StartMotor1();
printf("exec after start motor\r\n");
recivedatass=0;
}
}
}
先检查串口还能不能收到数据,收到的数据对不对,但不知道你外围电路是怎么样的,也不知道你标红的哪两个函数的具体定义,所以很难判断是什么问题 看我之前写的帖子吧,有做过反复启停实验的 可先先测试一下单独启停好不好使就是先启动几秒在停止几秒在启动几秒反复循环看一下启停函数有没有问题
在检测一下串口收发正常不 增加断点跟踪,观察下stop完了后会不会执行start
页:
[1]