|
前面对串口间的通讯功能进行了测试,实现了 UART0发送 UART1接收的功能,但存在着UART1发送 UART0无回应的问题。 经再三的排查,才发现串口的回调函数仅对UART0进行了处理,却没有领会其它的串口的处理,这不能不说是一个小Bug,既然都可以对设备进行配置使用了,为什么不在检测后对所用到的其它串口添加相应的回调处理?只是插入一段代码而已的是事呀! 在drv_usart.c中需添加的内容以黄色标出以便识别,该程序如下:
在修改了回调函数后,即可解决前面所出现的问题,从而实现双向的通讯。
关闭UART1所占用的COM4,检测到由2个串口识别,见图1所示。
图1 显示串口识别 按图2所示,输入“thread_serial”,以向UART1发送字符串“helloRT-Thread!”,则可见到图3所示的接收内容。
图2输入指令
图3 接收信息 按图4所示由UART1向UART0发送字符串“AB32VG1”,则可见到图5所示的接收效果。 |