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

作者: 一路向东8
上传时间为: 2017-09-06 09:05 AM
2017-09-06
阅读:

关注爱板网很久,确切的说应该是关注“开发板试用频道”很久:) ;感谢爱板网试用频道,终于有机会成功申请到米尔科技的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的设备了。

作者其它经验
全部评论 ()
条评论
写评论

创建讨论帖子

登录 后参与评论
系统提示