Linux 串口与MCU通信问题
硬件平台:飞思卡尔 imx35 LInux 2.6内核
实现功能:Linux 通过 UART3 与 板子 上的 MCU 进行通信
现在的情况:
1、因为 UART3管脚是复用的,所以写了个驱动(ko),把管脚复用成了 UART3
2、RX 和 TX 管脚 都可以和 Linux 应用程序通信,但是有异常。
问题:
正常来说MCU 会每30秒,会发送数据出去;但是我的Linux 应用程序, 在 read 阻塞的情况下,要等8分钟一次性收到16 个MCU发送过来的数据包(也就是30秒一次的数据包,8分钟后一次性收到了全部;而不是每30秒一次)。
我的疑问:
1、是不是 UART3的I/O复用没写好?(驱动没写好?)
2、应用程序的问题,串口初始化有问题?
3、MCU问题?
我最大疑惑是,这个问题是不是出在驱动(ko没写好?)??请问各位大侠??
小弟是学纯软件的,对硬件这块很不懂,今年才毕业
实现功能:Linux 通过 UART3 与 板子 上的 MCU 进行通信
现在的情况:
1、因为 UART3管脚是复用的,所以写了个驱动(ko),把管脚复用成了 UART3
2、RX 和 TX 管脚 都可以和 Linux 应用程序通信,但是有异常。
问题:
正常来说MCU 会每30秒,会发送数据出去;但是我的Linux 应用程序, 在 read 阻塞的情况下,要等8分钟一次性收到16 个MCU发送过来的数据包(也就是30秒一次的数据包,8分钟后一次性收到了全部;而不是每30秒一次)。
我的疑问:
1、是不是 UART3的I/O复用没写好?(驱动没写好?)
2、应用程序的问题,串口初始化有问题?
3、MCU问题?
我最大疑惑是,这个问题是不是出在驱动(ko没写好?)??请问各位大侠??
小弟是学纯软件的,对硬件这块很不懂,今年才毕业

...全文
相关推荐
Linux平台下的串口通信类的实现
如果在多线程环境中,可能需要使用互斥锁(mutex)来保护对串口的访问,防止数据竞争。总的来说,这个串口通信类为在Linux环境下与MCU或其他设备进行串行通信提供了一个简洁且易用的接口。
USB转串口波特率匹配UART的详细操作指南
深入讲解USB转串口时如何准确设置波特率,确保与UART通信稳定。涵盖常见问题排查与实际操作步骤,提升串口调试效率。
串口调试助手(丁丁)
作为串口上位机,丁丁串口调试助手是连接MCU与用户之间的桥梁,通过串口通信,实现对MCU的控制和数据交换。无论是进行硬件调试、程序验证还是教学演示,它都能提供强大的支持。
MiniComm WIN版 绿色
MiniComm是一款轻量级的串口通信软件,专为Linux、Windows系统设计,同时对MCU等硬件设备的串口开发提供了便利。它的绿色版本无需安装,解压即用,大大简化了用户的操作流程。
026、PC与串口通信.7z
对于嵌入式设备,串口通信可能需要更底层的编程,比如在MCU(微控制器)中配置UART寄存器,设置波特率、数据位、停止位和校验方式。


驱动开发/核心开发
