``开箱及试用
上篇
1. 前言今年7月,在芯板坊申请了一块基于NXPI.MX6UL的arm工控板,于是有了本系列。该工控板由明远智睿公司出品。 本系列分为上下两篇,上篇主要是开箱体验,下篇主要是体验软件开发环境。 2. 开箱2.1 正面
2.2 反面
2.3 小结硬件采用核心板+底板的形式,不过核心板是直接焊接在底板上,无法拆卸。核心板上有CPU+内存RAM+硬盘,底板上有一些常见的外设接口,如UART、USB、Ethernet、CAN等。 3. 原理图3.1 资料在动手连接前,建议先仔细阅读相关说明,可以避免走很多弯路,也可以在一定程度上保证因操作不当导致的硬件损坏。相关链接在明远智睿wiki:http://wiki.myzr.com.cn/index.php? title=MY-IMX6-EK140_%E4%BD%BF%E7%94%A8%E5%8F%8A%E5%BC%80%E5%8F%91%E6%8C%87%E5%AF%BC。 3.2 工具准备 官网推荐使用xshell工具进行连接操作,于是按照指定网站下载该软件。 3.3 串口连接开发板 由说明可知,是通过串口进行调试的。于是需要通过原理图确定串口的具体引脚定义。
一看原理图,发现还是小慌的,使用了SP3232芯片,把芯片的TTL电平转换成了232电平,而一般的笔记本是没有232电平的,意味着我需要将232电平转换成TTL电平,然后再通过TTL转USB模块连接电平,着实麻烦了许多(还好手头有这些模块)。
后来不知道为何出现了这么多乱码,多次复位后还是这情况。一开始怀疑是系统出了问题。后来上 论坛,发现有用户反馈了该问题,说是电平冲突,需要把U7芯片给拿掉,这么麻烦,新板子应该不至于出现这种情况啊。
3.4 网线连接开发板由于串口确实存在一些问题,于是开始另辟蹊径,使用网口进行调试,一开始没仔细看说明,也不知道IP地址,就各种试,花了很多时间和精力,后来上论坛,看到有人填以下的IP地址,才知道,开发板的IP地址可能是固定的。
Ping通了,好开心。
终于连接上了,而且没有乱码。看来以后得用网口进行调试了,可能效果更好,速度更快些,协议支持也更多些。 4. 小结总体来说,初次体验是有点糟糕的,串口调试居然有问题!如果客户是新手,之前没有搞过这些,无疑会浪费很多时间和精力。这也说明了,此开发板发货之前,很可能缺少测试验证环节,希望以后改进吧。 我感觉后面还会遇到一些坑,做好心理准备吧。 下篇
1. 前言在上一篇的基础上,本篇主要是体验一下软件开发环境。 2. 开发环境准备根据以往的经验,是需要一台装有Linux系统(一般是Ubuntu系列)的电脑,对于主力机为Windows的用户来说,使用虚拟机是一个不错的选择。 由于之前电脑上已经安装了虚拟机软件VMware和Ubuntu 14.04,那么只需要再安装一套交叉编译工具链(PC是X86/X64架构,开发板是arm架构)即可。 2.1 虚拟机+Ubuntu系统 很简洁,仅做开发用途。
2.2 更改arm开发板ip地址
将192.168.137.81改成192.168.0.81,这样的话,同处于一个网段内,Ubuntu系统就可以直接给arm开发板传输数据了。 结果发现改坏了,以上2个地址都不能连接开发板了。心想坏了,光改这个地方估计是不行的,看来还得再全盘考虑下。不过当务之急,是要先恢复系统,不然就无法操作开发板了。 2.3 系统烧录
烧录配置如上~
使用官方提供的MfgTools工具恢复系统(即重新烧录系统),过程较长,大概花了10多分钟(带QT的文件系统很大)。 注意事项: 之前烧录一直失败,不知道什么原因,今天很顺利。下一次如果遇到烧录失败的情况,可以重启电脑试一下。 烧录模式的选择,需要调整boot引脚。 2.4 下载工具链 现在百度网盘限速了,下载700多M的东西,花了3个小时。 3. 串口连接
上篇中发现串口出现乱码,以为是 电路设计问题。这一次换了一个转接板,发现显示一切正常,没有乱码,赶紧澄清一下,是我开始的转接板有问题!换了上图这个转接板就正常了。 4. 网络异常
又遇到问题了! 当更新系统后,网络地址不再是192.168.137.81,变成了一个随机的IP地址,每次重启都会变化。 然后,尝试更改interfaces文件,结果发现这个目录竟然没有!
于是,新建一个,新建后没有作用,仍然是随机的IP地址! 搞了一晚上,算了,洗洗睡吧。 后来寻求技术帮助,大家可以加入那个QQ群,里面有技术指导,可以帮助解答很多开发中的问题。 通过这种方式解决了问题。
再记录下电脑端需要做的设置:
终于搞定了。
终于ping通了。
成功建立连接,并可以传输文件了。 5. Ubuntu系统安装gcc编译工具5.1 网盘下载gcc工具
5.2 共享到Ubuntu系统
5.3 安装到Ubuntu系统
智能化安装,很方便,点个赞。 5.4 测试工具链
编译工具链可以正常显示。 5.5 编译测试按照官方说明进行编译。 先配置编译环境。
再编译源文件,此处需注意符号$不能丢。
编译成功。 5.6 传输到开发板测试
直接通过Xshell终端将可执行文件发送到开发板中,然后添加可执行权限chmod +x,然后执行目标程序即可,打印出了“Hello World!”,测试通过。 6. OLED模块移植牛刀小试一把。使用开发板的I2C外设驱动OLED模块,显示特定内容。 6.1 代码生成
无错误,几个警告,没有关系,生成了oled.out。 6.2 根据原理图接线
开发板共有2个i2c模块,原理图连接的是i2c1,程序里应该是i2c-0。 6.3 测试
正常显示,完全ok。 7. 小结1. 总体感觉,试用过程中遇到了很多小问题,毕竟也不是第一次玩arm+linux开发板了。 2. 每个问题,都要花很大时间、精力来解决,确实很有挑战。 3. 虽然有很多小问题,还好在技术支持指导下,在自己不懈专研下,顺利地完成了本次体验。以后我还得好好努力啊,争取尽快定位与解决问题。 ``
|