Linux 2.6.35 自带的USB转UART芯片CH341T的驱动有问题

 Linux 2.6.35 自带的USB转UART芯片CH341T的驱动有问题

由于板子UART口不够用了,老wu打算用USB转换成UART口,选了国产的CH341T这款USB转UART芯片。板子的主控是ARM9的,原厂提供的Linux BSP 内核是 2.6.35。

为了让内核支持USB转UART口,需要Enable相关的内核模块。老wu看到有CH341T的驱动支持,很开森。直接选中然后开始make。然后就开森不起来了,从Debug Console打印的引导记录来看,USB 已经加载了,但是看布袋 ttyUSB 的加载,ls /dev/ttyUSB* 也没任何结果。

果断google一下,发现 linux 2.16 自带的CH341T的驱动是开源贡献的,不是正式版。从IC原厂江苏沁恒股份有限公司的官网(http://www.wch.cn/download/CH341PAR_LINUX_ZIP.html)下载对应的linux驱动,替换掉Linux 2.6.35 BSP 里头的ch341.c (./drivers/usb/serial/ch341.c), 重新编译内核下载到PCB,上电启动,成功发现/dev/ttuUSB0,通过程序通过 ttyUSB0 发送接收数据正常。

吴川斌

吴川斌

Leave a Reply