CSK.Blog--个人原创Weblog

« 小时候收藏的[宝贝]对Wowwee Rovio机器人的拆解和扩展可能性探讨 »

给MK802(USB大小的Android4.0小PC)引出串口信号,变成ARM开发版

最近忙各类事情,blog写的不系统,见谅。

这几天搞到了前不久被媒体宣传过的只有U盘大小的Android 4.0小PC。他的样子如下,使用HDMI接口连接显示器再外接一个usb键盘鼠标就能作为PC用了。

托朋友买了台,试用了下果然还不错,虽然是Mali 400MP + Cortex-A8 的配置,不过感觉播放1080p媒体很流畅,3D渲染没怎么测试,不过依照我以前接触mali 400的经验看,不会差到哪里,但也好不到哪里。

硬件上他使用了全智(Allwinner)的A10 CPU,实际为Cortex-A8 + Mali400 MP GPU。1G DDR以及集成的usb WIFI和一个usb host以及一个usb OTG。仅支持HDMI输出音视频。一些内部照片贴在这:

 

如果就想把它当作一台小pc来用,那么就应该到此收手,安心的用了。但相信也有不少朋友和我一样,不满足于这些功能,想完全发挥出这么小巧的arm主板的性能,那还需要做几件事情

1. 拿到kernel source以及相关的driver code。业内称为BSP(board support package)

2. 获得串口调试信息

第一件事情我们已经不用操心了,网上已经有针对A10的kernel code,且可以用于MK802的机器。对于第二件事情,我之前并没在网上看到有人说明如何在MK802上引出串口,但其实看了内部PCB也不难发现办法。在介绍前,我先和不明白引出串口信号的朋友介绍下这样做的目的:

一般做linux kenrel(其实是所有kernel层次)的开发,没有VC IDE debugger这种好用的工具,就连gdb server很多时候都不管用。最常见的办法就是通过printf把日志从串口打印出来调试。(当然如果正在开发串口驱动,那只好通过点亮几个LED灯来调试了,这听上去很疯狂,但这是事实)。虽然也有ICE/JTAG这类硬件调试器,但对于linux kernel这类OS的调试,硬件调试器就显得很不直观,而且很多time critical的逻辑无法通过下断点复现。因此,一般做硬件/kernel/驱动层次开发,有一个用于打印printk信息的串口是非常必要的。

估计又有人问,这和现在有什么关系?我们只是使用MK802,又不是做开发。呵呵,这里我们就是希望做一些“开发”。比如从简单的控制MK802上几个IO(就像arduino那样)到修改usb驱动、优化GPU驱动等等,都是hacker喜欢做的事情。那么,有个串口供调试就是非常必要的。

不扯开了,其实串口信号很好引出,具体见下图:

PCB上其实有对应的测试点,但是没有丝印标出信号含义,但其实很容易猜到:右起第二个肉眼就能看出是GND。最右侧通过万用表测量横定是3V3。那自然是VCC。左边2个自然有很大嫌疑是TXD和RXD的TTL电平的串口信号。那么怎么确定那个是TX哪个是RX? 注意左起第二个有一个上拉电阻。一般输入信号才要上拉/下拉。那很可能就是RX。用示波器看了下,果然最左侧有信号发出。果断焊上线路,启动putty,看到了熟悉的uboot画面和kernel dmesg。可惜厂家把tty给禁用了,没法登陆console。但没关系,反正有kernel source,自己编一个即可。从dmesg中也可看出,厂家对系统的优化基本没做,很多内部调试log都还在:-P

Uboot和Kernel启动log

使用putty连接usb串口

将引出的串口信号连接usb转串口适配器

用热熔胶保护,防止短路

最后提醒看的手痒的朋友一声:焊盘间距比较小,小心短路。

附上从开机到启动完毕的log:

http://www.csksoft.net/data/code/mk802_log.txt

  • 相关文章:
  • quote 4.sswv
  • 看最后一图,小心别把芯片烫化了呵。
    我的Raspberry Pi应该快到货了,期待博主的相关经验。
  • 6/27/2012 6:09:01 PM 回复该留言
  • quote 5.大Q
  • 刚淘宝了一下,全志的产品,带屏的平板,价格好低廉.
  • 6/27/2012 6:34:15 PM 回复该留言
  • quote 6.est
  • 我也是用的1G的mini pc。。。mk802很好玩的东西。
  • 7/2/2012 11:01:33 PM 回复该留言
  • quote 7.mayli
  • 我买了一个mele a1000,也是全志的产品,比mk802大,不过带的端口多了,可玩性也打了许多,而且还有sata这个在arm产品上可不多见。
    cjy 于 8/9/2012 5:25:29 AM 回复
    mele a1000有哪些端口呢?有串口吗?希望得到你的回复jbppos@163.com
  • 8/9/2012 5:25:29 AM 回复该留言
  • quote 9.KunYi
  • MELE A1009 有串口, 用MOLEX 母座
    URL:
    rhombus-tech.net/allwinner_a10/hacking_the_mele_a1000

    裏面有圖
  • 9/7/2012 5:57:57 AM 回复该留言

发表评论:

注意:为了有效防止SPAM,任何含有http://字样的消息会被阻止发布同时,本站仅供技术交流,请不要讨论任何政治敏感话题或者低级趣味问题。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Copyright Shikai Chen 2000-2012. Powered By Z-Blog(CSK Modified)