FM33LG025低功耗串口问题
if((FL_ENABLE == FL_LPUART_IsEnabledIT_RXBuffFull(LPUART2))&& (FL_SET == FL_LPUART_IsActiveFlag_RXBuffFull(LPUART2))) //接收数据中断
{
temp = FL_LPUART_ReadRXBuff(LPUART2); //接收数据
// FL_LPUART_WriteTXBuff(LPUART2, temp);
FL_LPUART_WriteTXBuff(LPUART2, 0x30);
FL_LPUART_WriteTXBuff(LPUART2, 0x31);
FL_LPUART_WriteTXBuff(LPUART2, 0x32);
FL_LPUART_WriteTXBuff(LPUART2, 0x33);
FL_LPUART_WriteTXBuff(LPUART2, 0x0d);
FL_LPUART_WriteTXBuff(LPUART2, 0x0a);
FL_LPUART_ClearFlag_RXBuffFull(LPUART2);
}收到什么就发什么可以正常发,但是像代码那样发其他的数据就会有问题
这里应该收到的是“0123\r\n”的但只发出来了第一个数据,
后面的数据都丢了,看波形也是只有第一个字节有波形,发完第一个字节后就一直是高电平了
直接把这一段代码放main函数的死循环里发能全发出来但是数据顺序是乱的
这样能发啥回啥,不丢数据
你往buf里面写,单片机去发送,单片机还没发送完,你又去写,直接导致没法送完就被覆盖。 请参考查询发送例程
页:
[1]