我看上去问题比较奇怪,有四个usb接口,其中一个是鼠标。随便选了一个连接到开发版上的。
然后dmesg得到消息说那个玩意已经被附加到/dev/ttyUSB0上,该文件也确实存在,做了一些设置,但是测试时minicom没有任何输
出。
用虚拟机的windows串口映射到/dev/ttyUSB0.保存超级终端设置时提示“无法设置ttyUSB0”。查看log得到一大堆Input/
Output Error。
然后更郁闷。重启电脑后就找不到usb串口了,dmesg得到一堆:hub 5-0:1.0: unable to enumerate USB
device on port 2
晕死,今天几个usb接口都能正常工作了,就是说,/dev/ttyUSB0存在是稳定的“可插拔”的。
而且,在启动minicom确实会有些输出,
但是很奇怪,看不出来这写输出有什么价值。而且大多数情况都只出现一行,除此之外所有按键都没反应(除了minicom自己的组合快捷键)
常见的输出有:
7BCD;>等单个字母重复直到一行结束。
行如ozo、#+$#这样的序列重复出现直到一行结束。
乱码,无论LC_CTYPE是zh_CN.utf-8还是en_US.utf-8都是如此,这个输出可能超过1行但不会多余3行
这些输出往往出现在启动minicom并且开发版复位后
偶尔关开发版电源会导致minicom多输出一些乱码。
求教上述问题的解决方案,或者提供思路。
谢谢
不放可以考虑下。我的是三星的2440。
在淘宝买了个openjtag(usb <-> jtag, usb <-> serial)
调试是使用openjtag + openocd,windowls/linux(ubuntu)都没问题,一切正常。
不放可以考虑下。我的是三星的2440。
----------------------------------------------------------------------------------
Yours Sincerely
Kun
www.forwind.cn
http://twitter.com/lk_517
2009/3/19 居振梁 <juzhe...@gmail.com>:
2. 你的开发板(target)和工作站之间的连接方式,能不能再具体些?开发板连接
到工作站之前和之后,查看/dev/ttyUSBx和/dev/ttyACM设备是否存在,把结果贴
上来。
3. 连接前和连接后的lsusb 把结果贴上来
--
Adam
1. 你的minicom的设置是?
串口设备端口:?
串口设备速度:?
hard flow control: ?
soft flow control: ?
2. 你的开发板(target)和工作站之间的连接方式,能不能再具体些?开发板连接
到工作站之前和之后,查看/dev/ttyUSBx和/dev/ttyACM设备是否存在,把结果贴
上来。
3. 连接前和连接后的lsusb 把结果贴上来
>
> 设备速率,我得到的资料上说是115200 8N1
> 我自己每个都试了,并没有发现明显的不同。
>
> hard flow control和soft flow control也都试了Yes和No的情况,也没有明显的不同。
> 都是那些看起来很无里头的输出。
>
> 还有一个细节,除了这些输出只在reset开发版的时候出现外。
> 如果开发板重置后,我再关掉它的电源,再打开minicom,仍然会有类似的输出。
>
> 不断的关闭打开minicom,这些输出总是在前几次发生,以后就没反应了。
有输出是正常的,这些应该都和你遇到的问题没有关系了,忽略之。
>
>
>
> > 2. 你的开发板(target)和工作站之间的连接方式,能不能再具体些?开发板连接
> > 到工作站之前和之后,查看/dev/ttyUSBx和/dev/ttyACM设备是否存在,把结果贴
> > 上来。
>
>
> 连接很简单,就是开发板的串口和usb转串口线连接,在与我的电脑连接。
> 这个连接方式也在装有windows台式机上测试过,超级终端输出一堆乱码(看上去像“胡子连着辫子的繁体字”那种),虚拟机的rh9没反应。那机子不是我的,那人也是刚开发学嵌入式,他之前也没接触过linux,就没做太多尝试来打扰他。(开发板的操作手册建议用rh9做主机)。
>
> 连接前,ls -s /dev | grep tty 只有
>
> 连接后多了个
> crw-rw---- 1 root uucp 188, 0 2009-03-20 14:22 ttyUSB0
> (偶尔会多出个ttyUSB1)
>
> 还有个小插曲,就是昨天不管接在哪个usb接口上,都有两种情况:
> 1. ttyUSB0只存在一小会,能打开minicom,紧接着关闭它,ttyUSB0就没了。
> 2. ttyUSB0干脆就不出现,即使 mknod /dev/ttyUSB0 c 188 [0-3]出现了,minicom也提示没有这个设备
在这里mknod是没有用的,因为这个node是驱动自动创建的,前面的消息里已经看
到驱动模块没有被正确地load。而且还有被unload的现象。
> >
> > 3. 连接前和连接后的lsusb 把结果贴上来
> >
> >
> 连接前:
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 004 Device 002: ID 0461:4d15 Primax Electronics, Ltd Dell Optical Mouse
> Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
>
> 连接后:
> Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
> Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> *Bus 004 Device 007: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial
> Port*
> Bus 004 Device 002: ID 0461:4d15 Primax Electronics, Ltd Dell Optical Mouse
> Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
> Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
>
> (lsmod | grep pl2303输出)
> pl2303 18564 1
> usbserial 30124 3 pl2303
usb上已经正确的识别你的设备了。这个应该没有问题。忽略之。
现在问题是,fedora的驱动模块似乎不能正确认识你的开发板。从USB的信息搜索
了一下,我得到这个。
http://www.prolific.com.tw/eng/downloads.asp?ID=31
是否跟你的设备有关?是否对你的设备有用?
--
Adam
这里的msg看,kernel中与你的开发板连接设备的驱动模块似乎有问题了。在此之
前,你有没有成功连接过?能不能说一下你的开发板的型号?
现在问题是,fedora的驱动模块似乎不能正确认识你的开发板。从USB的信息搜索
了一下,我得到这个。
http://www.prolific.com.tw/eng/downloads.asp?ID=31
是否跟你的设备有关?是否对你的设备有用?
不客气。hehe,TopLanguage的那个也是我。:)
The world is small.
开发版在没有启动或者没有初始化其他的连接设备,比如以太网卡这些东西,之前
,如果它的firmware没有提供其他的借口,可也说串口连接几乎是唯一的方法。
要增加其他连接方法也是可以的,但代价是更大的firmware或者更负责更容易出错
的连接状况出现。
相反,更新一个在工作站上的内核模块比较简单。
其实,相比其他的连接方法,串口连接是比较容易实现而且也很直接的方法。串口
设备的驱动比较容易写,而且通讯的质量和稳定性都是可以达到保障的。所以,很
多调试设备的接口都是用了RS232。内核的kgdb等等,也是串口通讯为出发点的,
虽然后来添加进去了以太网上的调试途径,但是串口还是有其天然优势。
开发版在没有启动或者没有初始化其他的连接设备,比如以太网卡这些东西,之前
,如果它的firmware没有提供其他的借口,可也说串口连接几乎是唯一的方法。
要增加其他连接方法也是可以的,但代价是更大的firmware或者更负责更容易出错
的连接状况出现。
相反,更新一个在工作站上的内核模块比较简单。
openocd是软件。相对来说功能很是强大的,结合openjtag使用还是很不错
通过openjtag + openocd,可以调试内核(源码级,这个很是不错)
另,用于分析、调查硬件或固件问题,也很是灵活
On 3月20日, 下午1时27分, 居振梁 <juzhenli...@gmail.com> wrote:
> 谢谢你的分享!
> openocd是软件吗?
>
> 2009/3/20 exodus <gxue...@gmail.com>
不好意思,家里的本本摔了,还在电脑城。也只上班时间在。
另外由于各种原因,还无法订阅maillist。
openocd是软件。相对来说功能很是强大的,结合openjtag使用还是很不错
通过openjtag + openocd,可以调试内核(源码级,这个很是不错)
另,用于分析、调查硬件或固件问题,也很是灵活