STM32串口收发要点
中断使能;优先级;
中断函数
USATR1_IRQHandler(void)//已经被声明,未被定义
{
判断是否收到数据;
是,判断是否结束;
否,数据放到缓存中;
状态机++;
是,结束
否,结束
};
While(1)
{
判断是否结束;
是,执行命令;
for{};
While(状态机发送结束)
状态机置零;
};
res = USART -> DR;
USART_RX_BUF[USART_RX_STA] = res;
//接收每一位
USART -> DR = USART_RX_BUF[t];
//发送每一位
状态标记?状态机,用于表明现在数据收发的状态;
u8 USART_RX_STA = 0;
缓存,用于存放数据;
u8 USART_RX_BUF[63];