查看: 1125|回复: 0

Rico board上手试玩,果真很了不起

[复制链接]
  • TA的每日心情
    开心
    2020-12-2 10:07
  • 签到天数: 4 天

    连续签到: 1 天

    [LV.2]偶尔看看I

    发表于 2017-9-6 09:05:14 | 显示全部楼层 |阅读模式
    分享到:
    关注爱板网很久,确切的说应该是关注“开发板试用频道”很久 ;感谢爱板网试用频道,终于有机会成功申请到米尔科技的AM437x开发板;虽然自己从事的是相关行业,但是却很少接触使用TI的处理器;树莓派倒是买了不少 ,出于个人兴趣,手头有一块自己的imx6ul IOT开发板拿来做对比参照:
    下面先对比下手头米尔的imx6ul和rico board,如下图:

    从个人角度看,imx6ul IOT开发板要精致小巧不少;Rico board长的更像beagle bone,给人一种结实耐造的感觉。
    最上面是飞思卡尔的 imx6ul,下图是 am437x ; 一个A7,一个A9;其他的不说,单单主频功能方面对比(500M,1G)主频基本就相差了1倍,TI的437x处理器内置GPU(代号SGX530,属于imagenation公司的power VR系列移动GPU),多媒体功能显然要强大不少; 估计是米尔考虑到437x的多媒体性能以及GUI应用,特意搭载了HDMI接口(个人认为开发板支持HDMI将非常有利于个人的开发学习);
    相对于imx6ul , am437x可以支持HDMI这是Rico开发板的一大特色,am437x使用了一个silicom image 公司的sii9022(支持1080P分辨率/60HZ 的RGB转HDMI桥接芯片),题外话:在HDMI领域,专利silicom image是最多的; 之前有坛友说没有找到sill9022的资料,刚好之前自己有了解过这颗芯片,于是就给大家截了一张图,大家看下原理:
    很显然,CPU端是RGB接口;通过HDMI桥接芯片转为HDMI数据,在电视机端再通过解压还原为RGB数据;除了RGB数据之外,HDMI还支持audo数据的传输;这正是传统的DVI,VGA接口所不能支持的;

    关于HDMI顺便提一下:由于专利等问题,intel联合几大厂商推广的DP接口已经在台式机,笔记本逐渐有普及之势,大家今后购买显示器的话可以考虑下这两种接口(就目前而言电视盒子还是HDMI为主流,笔记本台式机DP为主流);
    除了HDMI接口外,rico还预留了标准的RGB888接口,现实应用中产品我们可以直接使用RGB接口;
    关于rico board的配件可以说异常丰富,网线,电源,HDMI cable,串口debug板子全部配齐而且质量上乘;好在工作关系,这些配件我都有,图片就不上了,接着看rico板正面图:

    接上我的串口小板(FTDI非常好用稳定的串口小板):

    开机,板子自带arago系统,默认数据从ttyO0输出,支持的分辨率为:display1:1024x768MR-24@60hz;系统开机启动速度很快,连上xshell , 打开串口 一会儿到了tty登录界面,默认登录用户名root:

    我们先查看CPU类型(ARMv7 架构指令集,这个在后面测试应用的时候要用到):

    插上HDMI进入TI系统自带的matrix 登录界面:

    看起来很不错的演示界面,大大方便了做GUI开发的engineer们:插上鼠标随机点了几个应用:
    一:QT自带的QML游戏

    2:自带的天气演示界面:

    3:GPU测试的deamon例子(可以看到采用的测试用例来源于:imagination公司,说到这个公司,其实和MIPS处理器还有很大的关系,我们家庭中很多的路由器基本清一色的MIPS内核处理器)

    下面使用TOP命令看下当前进程中对CPU的使用率情况:
    1:正常待机情况下,CPU占用率1%

    2:打开3D奔跑的应用, 由于GPU的参与openGLES2chameleonMan绘图cpu占用率在8%作用(占用率其实
    非常的低,如果使用纯软件不断draw绘图的话估计至少会占用50%以上):
    下面做一个对比:
    1:使用opengl的奔跑的人CPU占用率:

    2:使用QT不断地渲染hello word 那个飘着雪花的动画:

    没有对比就没有伤害:3D绘图使用GPU (只有8%的CPU占用率),hello word由于存在不断飘落雪花的动画导致CPU占用率很高(基本占用率98%),这是软件绘图和GPU绘图的一大区别。
    提示:细心的可以看到的所有测试基本都是一个独立的进程在运行,运行完毕后点击进程会自行退出;
    下面我们来试用下板载的外设接口,由于CPU自带USB接口,于是拿来试试U盘;

    首先,还是先来一个经典的hello_world ; 插入U盘,然后df命令查看自动mount的位置:

    U盘被自动mount到了:
    /dev/sda1             16171008      7648  16163360   0% /var/volatile/run/media/sda1
    进入当前目录运行./hello_arm(当然这个要是事先在PC机上面先进行交叉编译OK):

    经典的 hello world !
    说明:前面提到处理器属于armv7架构,这个和树莓派是一致的,因此我们就i想到另外一种方法:直接在树莓派上面编译hello world,然后在rico board上面运行,实际测试是可行的(由于内核版本不一致,个别时候应用并不一定完全兼容);
    说到USB,拿来一个PL2303最常用的USB转串口模块,试了下设备可以发现;

    但是cat设备节点却没有发现ttyusb0:

    说明:猜测 USB BUS虽然枚举识别到了设备,但是USB serial功能估计尚未启用(这个可以进入kernel配置文件打开相应功能),为了验证猜测,下来编译内核打开对USB串口的支持;
    下面参照米尔开发板说明,开始编译内核:由于我装的是ubuntu x64系统
    unam -a
    Linux my-OptiPlex-3050 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
    直接按照开发说明编译会提示找不到静态库,于是重新安装32bit库文件如下
    apt-get install lib32z1 lib32ncurses5
    apt-get install lib32stdc++6
    先配置内核,然后退出保存:

    重新编译内核,发现刚才选中的已经编译链接到内核了,如下:

    OK,等待内核编译完成。重新烧写zImage内核,插入PL2303串口应该可以看到新增的ttyusb0的设备了。
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-4-29 03:56 , Processed in 0.110842 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.