<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></title> 
<link>http://jackxiang.com/index.php</link> 
<description><![CDATA[赢在IT，Playin' with IT,Focus on Killer Application,Marketing Meets Technology.]]></description> 
<language>zh-cn</language> 
<copyright><![CDATA[向东博客 专注WEB应用 构架之美 --- 构架之美，在于尽态极妍 | 应用之美，在于药到病除]]></copyright>
<item>
<link>http://jackxiang.com/post//</link>
<title><![CDATA[  ubuntu8.04 USB转串口问题解决－－USB转串口线－－－－HL340]]></title> 
<author>jack &lt;xdy108@126.com&gt;</author>
<category><![CDATA[WEB2.0]]></category>
<pubDate>Sun, 23 May 2010 11:17:54 +0000</pubDate> 
<guid>http://jackxiang.com/post//</guid> 
<description>
<![CDATA[ 
	&nbsp;&nbsp;&nbsp;&nbsp;最近装了个硬盘版的ubuntu 8.04,准备作为以后的嵌入式开发环境，其他一切基本弄好准备连接开发板启动时，出了问题。串口工具用的是minicom，但是连线开发板（FS2410）之后没有任何打印信息。因为所有的开发环境可以确认没有问题，所以初步判定为串口配置的问题。<br/>在网上查找得知minicom串口设置，需设为 /dev/ttyUSB0, 但是我设只好之后之后，发现找不到/dev/ttyUSB0,然后自己在/dev下面也没找到ttyUSB0。于是lsusb查看可以确定系统可以检测到我的usb转串口线，<br/>Bus 006 Device 001: ID 0000:0000<br/>Bus 004 Device 003: ID 1a86:7523 USB转串口线<br/>Bus 004 Device 001: ID 0000:0000<br/>但是驱动无法识别，应该是驱动的问题。<br/><br/>于是在网上查找我的USB转串口线所用的IC，及其驱动。<br/>先按照HL－340,搜到一些信息，其转换芯片应该是ch340或者ch341，但是目前大部分用的是ch341.于是我先查看自己的系统驱动模块，发现有ch341.ko，用modprobe ch341<br/>加在之后，仍然无法在dmesg之下看到ttyUSB0相关信息<br/>又在网上搜ch341之类的信息，终于找到一些有用的信息，发现起根本原因是原来的驱动程序中没有添加供应商ID和产品ID: &quot;idVendor=1a86, idProduct=7523&quot;,所以需要在驱动源代码 ch341.c 中添加一行代码如下：<br/>static struct usb_device_id id_table [] = &#123;<br/>&#123; USB_DEVICE(0x4348, 0x5523) &#125;,<br/>&#123; USB_DEVICE(0x1a86, 0x7523) &#125;, //新增代码 1a86,7523就是上文lsusb检测到的ID信息<br/>&#123; &#125;,<br/>&#125;;<br/>具体的解决步骤总结如下：<br/>（1）下载ch341驱动源码（系统里我没找到）；<br/>（2）在任意目录下解压源码；<br/>（3）进入ch341源码根目录，用编辑器（比如： vi ）打开ch341.c；<br/>（4）在line29行找到上述结构体，并在其中添加 &#123; USB_DEVICE(0x1a86, 0x7523) &#125;, 保存并退出；<br/>（5）在ch341源码根目录下执行make，即会生成ch341.ko<br/>（6）进入到系统驱动模块存放目录将原来的ch341.ko删掉或者改为其他名字，比如改为：ch341.ko.old等（我的目录为： /lib/modules/2.6.24-19-generic/kernel/drivers/usb/serial/）;<br/>（7）将新编译好的ch341.ko复制到上述驱动模块的目录；<br/>（8）加在驱动模块modprobe ch341；<br/>（9）dmesg &#124;grep usb,即可看到如下信息，表示usb转串口驱动成功；<br/>[ 517.906465] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for generic<br/>[ 517.906969] usbcore: registered new interface driver usbserial_generic<br/>[ 517.906976] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial Driver core<br/>[ 517.909771] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial support registered for ch341-uart<br/>[ 517.929627] usb 3-1: ch341-uart converter now attached to ttyUSB0<br/>[ 517.929661] usbcore: registered new interface driver ch341<br/>[ 1418.663675] usb 3-1: USB disconnect, address 5<br/>[ 1486.350914] usb 4-1: new full speed USB device using uhci_hcd and address 3<br/>[ 1486.385089] usb 4-1: configuration #1 chosen from 1 choice<br/>[ 1486.404914] usb 4-1: ch341-uart converter now attached to ttyUSB0<br/>[ 1608.650842] usbcore: deregistering interface driver ch341<br/>[ 1608.653215] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial deregistering driver ch341-uart<br/>[ 1608.658300] usbcore: deregistering interface driver usbserial_generic<br/>[ 1608.658348] /build/buildd/linux-2.6.24/drivers/usb/serial/usb-serial.c: USB Serial deregistering driver generic<br/>（10）在/dev/目录下就可以找到ttyUSB0了，然后设置minicom串口为/dev/ttyUSB0，保存并退出。启动串口，上电开发板，顺利打印出串口信息。<br/>http://linux.chinaunix.net/bbs/thread-1146827-1-1.html<br/>http://blog.crox.net/archives/34-Using-the-HL-340-USB-serial-adapter-with-Linux-1a867523,-driver-ch341.html<br/><br/>驱动的代码下载地址：http://download.chinaprj.cn/link.php?key=iEDiriqb&amp;url=http%3A%2F%2Fdlwt.csdn.net%2Ffd.php%3Fi%3D873519160285244%26s%3D8d11d8ef56e8d5fbe431448e8a6d7877<br/><br/>http://blog.chinaunix.net/u1/39518/showart_2081711.html<br/><br/>首先感谢如下链接的作者，你们解决问题的方法给了我个很大的帮助<br/><br/>CH340/CH341，USB转串口驱动模块<br/><br/>http://forum.ubuntu.org.cn/viewtopic.php?t=104478&amp;sid=d8508d7fca76641dbac927c44a2d820d<br/><br/>增加新的设备ID &#123; USB_DEVICE(0x1a86, 0x7523) &#125;<br/><br/>https://bugs.launchpad.net/ubuntu/+source/linux/+bug/235459<br/><br/>再次感谢一下。<br/><br/>1、确认安装了linux-headers<br/><br/>2、进入ch341并编译文件，ch341在我的附件中<br/><br/>3、 modprobe usbserial &amp;&amp; insmod ch341.ko<br/><br/>如果还有什么问题，请对应上文两个连接仔细研究一下<br/><br/>下载包：http://www.cublog.cn/u1/39518/showart_2081711.html
]]>
</description>
</item><item>
<link>http://jackxiang.com/post//#blogcomment</link>
<title><![CDATA[[评论]   ubuntu8.04 USB转串口问题解决－－USB转串口线－－－－HL340]]></title> 
<author> &lt;user@domain.com&gt;</author>
<category><![CDATA[评论]]></category>
<pubDate>Thu, 01 Jan 1970 00:00:00 +0000</pubDate> 
<guid>http://jackxiang.com/post//#blogcomment</guid> 
<description>
<![CDATA[ 
	
]]>
</description>
</item>
</channel>
</rss>