HCL136 串口通信,只能收发一个字节,多的收发不了
串口只能发送一个字节,然后demo板子,返回你发送的一个字节取反。如何修改才能够发送多个字节,并在串口调试助手上面回显?有没有做过这方面的,麻烦提供一个DEMO程序
///<LPUART1 中断服务函数
void LpUart1_IRQHandler(void)
{
if(LPUart_GetStatus(M0P_LPUART1, LPUartTC))
{
LPUart_ClrStatus(M0P_LPUART1, LPUartTC); ///<清发送中断请求
LPUart_DisableIrq(M0P_LPUART1,LPUartTxIrq);///<禁止发送中断
LPUart_EnableIrq(M0P_LPUART1,LPUartRxIrq); ///<使能接收中断
}
if(LPUart_GetStatus(M0P_LPUART1, LPUartRC)) ///接收数据
{
LPUart_ClrStatus(M0P_LPUART1, LPUartRC); ///<清接收中断请求
u8RxData = LPUart_ReceiveData(M0P_LPUART1);///读取数据
LPUart_DisableIrq(M0P_LPUART1,LPUartRxIrq);///<禁止接收中断
LPUart_EnableIrq(M0P_LPUART1,LPUartTxIrq); ///<使能发送中断
LPUart_SendDataIt(M0P_LPUART1, ~u8RxData); ///把接收数据取反,并发送
}
} 你不取反就可以了啊 一个一个收嘛 一个一个的不就是一串了。 一个一个收啊 解决?一个个收我发现经常丢数据,尴尬,没有规律的丢,不知道咋回事 qianyue1996 发表于 2021-4-27 17:06
解决?一个个收我发现经常丢数据,尴尬,没有规律的丢,不知道咋回事
这个代码是乒乓方式,如果单片机发送的时候来数据,因为接收中断是关闭的,自然会丢。 HTCL 发表于 2021-4-27 17:22
这个代码是乒乓方式,如果单片机发送的时候来数据,因为接收中断是关闭的,自然会丢。 ...
对的,想要收发一串,就得改样例
页:
[1]