jinglixixi 发表于 2021-9-10 22:02

【AB32VG1开发板测评】串口间通讯的收发异常问题及解决

本帖最后由 jinglixixi 于 2021-9-10 22:13 编辑

<p style="text-align:justify">前面对串口间的通讯功能进行了测试,实现了 UART0发送 UART1接收的功能,但存在着UART1发送 UART0无回应的问题。</p>

<p>经再三的排查,才发现串口的回调函数仅对UART0进行了处理,却没有领会其它的串口的处理,这不能不说是一个小Bug,既然都可以对设备进行配置使用了,为什么不在检测后对所用到的其它串口添加相应的回调处理?只是插入一段代码而已的是事呀!</p>

<p>在drv_usart.c中需添加的内容以黄色标出以便识别,该程序如下:</p>

<p> &nbsp;</p>

<p> &nbsp;</p>

<p>在修改了回调函数后,即可解决前面所出现的问题,从而实现双向的通讯。</p>

<p>关闭UART1所占用的COM4,检测到由2个串口识别,见图1所示。</p>

<p>图1 显示串口识别</p>

<p>按图2所示,输入&ldquo;thread_serial&rdquo;,以向UART1发送字符串&ldquo;hello RT-Thread!&rdquo;,则可见到图3所示的接收内容。</p>

<p>图2输入指令</p>

<p>图3 接收信息</p>

<p>按图4所示由UART1向UART0发送字符串&ldquo;AB32VG1&rdquo;,则可见到图5所示的接收效果。</p>

<p>图4发送字符串</p>

<p></p>

<p>图5接收字符串</p>

Jacktang 发表于 2021-9-12 09:38

<p>修改了回调函数后,就可实现双向通讯了,赞</p>

jinglixixi 发表于 2021-9-12 11:26

Jacktang 发表于 2021-9-12 09:38
修改了回调函数后,就可实现双向通讯了,赞

<p><img height="48" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/handshake.gif" width="48" /></p>
页: [1]
查看完整版本: 【AB32VG1开发板测评】串口间通讯的收发异常问题及解决