打印
[技术问答]

HC32L110C6PA串口接收问题

[复制链接]
3157|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
gghhz|  楼主 | 2021-10-11 15:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教一下,如题,HC32L110C6PA串口发送数据没问题,接收数据时,一次只能接收一个字节。接收多个字节,只有第一个字节正确,其他的乱码。这是什么问题呢?

使用特权

评论回复
沙发
guijial511| | 2021-10-11 18:58 | 只看该作者
那多半是你程序设计有问题

使用特权

评论回复
板凳
gghhz|  楼主 | 2021-10-12 11:25 | 只看该作者
guijial511 发表于 2021-10-11 18:58
那多半是你程序设计有问题

你好,很感谢你的回答。我用官网自带的历程测试,也是只有一个字节是正确的。我用的是中断接收。如果我在发送端(串口助手)加一个延时,比如1ms,就没问题。正常发送的话就不行

使用特权

评论回复
地板
waaini| | 2021-10-12 14:17 | 只看该作者
官方例程?主程序是这样吗?
while(1)
        {
                Check** = 0;
                if(u8Rx**)
                {
                        u8Rx** = 0;
                        if(Uart_CheckEvenOrOdd(UARTCH1,Even,u8RxData[1])!=Ok)
                        {
                                Check** = 1;//奇偶校验出错
                        }
                        else
                        {
                                Uart_SetTb8(UARTCH1,Even,u8RxData[0]);
                                Uart_SendData(UARTCH1,u8RxData[0]);                               
                                Uart_SetTb8(UARTCH1,Even,u8RxData[1]);
                                Uart_SendData(UARTCH1,u8RxData[1]);
                        }
                }
        }

是的话,看起来就是只接收一个字节啊

使用特权

评论回复
5
gghhz|  楼主 | 2021-10-13 10:48 | 只看该作者
问题已解决,的确是我程序的问题。在选择UART工作模式的时候,忽略了奇偶校验位。2、3工作模式是有奇偶校验位的。把这个加上就好了。非常感谢大佬们的回答。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

70

帖子

2

粉丝