博文

目前显示的是标签为“uart”的博文

Android UART触摸框调试

  在Android系统里调试UART口触摸框时,需要使用到Linux内核的SERIO框架,涉及的配置项为CONFIG_SERIO=y和CONFIG_SERIO_SERPORT=y,而我们需要的驱动里会包含module_serio_driver()宏注册的驱动接口,可以在内核源码drivers/input/touchscreen目录下搜索上述的这个宏就可以搜索到相关的驱动,我们可以找最相近的作为参考来修改,有了这个驱动后,我们还需要有一个上层应用程序inputattach,该程序用于将实际使用的串口设备与这个驱动关联上,实际上该程序里面最重要的是ioctl(fd, SPIOCSTYPE, &devt)这一操作,就是实现关联操作。如在init*.rc里有如下服务:   service irtouch /system/bin/inputattach --baud 9600 --boray /dev/ttyS1     class main     oneshot   上述提及相关资料可以参考如下网址:   http://lwn.net/Articles/122577/   http://sourceforge.net/p/linuxwacom/input-wacom/ci/master/tree/inputattach/

Android系统调试串口变着玩

图片
    在Android设备整机,调试时经常会用到USB接线进行ADB调试,但对于机顶盒或其他不支持USB OTG(或device)接口的Android设备,此时就得用网络ADB来调试整机,非常不方便,而我们想绕着玩,变个玩法来利用设备上的USB Host接口,实现USB转UART转接线在接入机顶盒的USB Host口时,Android系统的调试终端也能通过该路UART口来进行调试,于是,我们按着这思路有了如下的设想:     1.机顶盒与电脑间的硬件连接      机顶盒端:USB转串口线(可能是DB9接口的串口线,也可能是4PIN的连接线);      电脑端:可将上述的DB9接口直接连接到电脑后面的串口座,现在很多没有该串口座,那么直接再使用同样的USB转串口线(注意DB9的接口有所区别,如果是4PIN线的,那请注意两边的4PIN座子对应的接线为GND接GND,TX接RX,RX接TX,VCC接VCC)与机顶盒用到的转换线相连。      相应的硬件连接可参考如下图所示:     2.机顶盒的软件设计      有了上面的硬件连接后,我们要进行如下修改(我们使用到的USB转串口线内置的转换芯片型号为CP2102,下面的Android对应linux kernel都是针对该款芯片配置):      a.内核配置        CONFIG_USB_SERIAL=y        CONFIG_USB_SERIAL_CONSOLE=y        CONFIG_USB_SERIAL_GENERIC=y        CONFIG_USB_SERIAL_CP210X=y      b.内核源码修改(不同Kernel版本有区别,注意根据实际处理)        进行源码修改,主要是该USB转串口识别到的设...