本帖最后由 okwh 于 2018-6-19 22:28 编辑
收到米尔科技提供的i.mx6UL-IOT板,嵌入系统日益强大并廉价,米尔科技最近几年提供了多种核心板,避免了自己设计,提供了质量保障和时间保障,为更广泛的使用嵌入系统提供了条件。 板子图片,已经很多了, 我就就不重复提供了。 嵌入Linux系统如何开发: 当然首先是建立开发系统环境(通常目标ARM的资源有限,不能直接在目标ARM上开发),标准的方法是在运行Linux系统的台式机上,运行针对ARM芯片的GCC编译系统编译C/C++写的程序,通过调试服务器+下载器与调试接口实现调试。 通常的开发环境是 1) 操作系统: Ubuntu12.0.4 集成开发环境平台:eclipse IDE for C/C++ developers 或QT 交叉编译链:arm-none-eabi-gcc 下载器与调试接口:Jlink + JTAG 或其他调试器 调试服务器:JLink GDB Server 2)没IDE的就使用CMake + arm-none-eabi-gcc (windows下需要MinGW) , MfgTool下载。 3) windows下,可把上述体系1) 做成虚拟机来运行。 4) windows下,可用keil的DS-5 IDE, IAR的IDE,以类似的方式开发,可惜keil把A系ARM芯片的支持单独另搞。 另外VS 2017也已经可以开发Linux的软件。VS 2017+GDB开发ARM嵌入Linux据说已经可以用了。 5) 类似1~4,但使用安卓系统。似乎尚待提供。
总之,开发环境和目标环境不同时,开发工作就充满了艰辛。安装开发环境有很多资料,我就不再部署了。 对开发环境和目标系统都需要考虑三个方面的问题:操作系统、目标芯片(指令集)、下载通讯和调试通讯方式。 其实最大的麻烦是调试,通常把嵌入Linux系统和应用软件开发分开进行,以降低调试的复杂度。 当然也有强大的模拟环境存在,只是价格可能很昂贵,如果是开发安卓系统下的软件可能略好些。但由于历史原因,目前工业用嵌入系统仍以类Linux为主,类安卓的还不多(虽然安卓也是脱胎于linux系列)。 复杂嵌入系统的开发,处于数G内存的手机、工控机和数k到数M内存单片MPU之间,前后不靠的位置,通常基于厂家优化后专用系统,传统上资源、工具和人员都不够丰富,麻烦多多,困难重重,也充满希望,价格合适时,对传统MPU市场需要增加用户界面时,很有吸引力。米尔科技99元核心板为此提供了脱颖而出的很好机会。 i.MX系列已经发展多年,在NXP网站可以找到不少商业组件支持。 如果基于开源体系去开发,确实有不少困难,抛开操作系统的剪裁,可用的开发IDE就只有eclipse IDE 或QT了。 (不知道VS2017的免费版是否可行)。 我对嵌入Linux下的实际开发了解甚少,对那庞大的系统包望之却步,虽然Linux很成熟,不过对我想做的来说有些过于强大(不太明白,我只是要开发软件,真需要剪裁那庞大的操作系统?那么多天才,至今竟然都没有人设计出一个不痛苦的基于选项GUI界面的Linux剪裁工具,一定要这样一个一个命令的打,一个一个的刷刷显示编译通过和错误的的混合结果,一个这样的虚拟开发环境,经历过远远的DOS时代,看着这些... 简直怀疑Linux下的这些天才们(能发明bash,vim, 简直让我惊叹啊!)是否有受虐的倾向,真的那么喜好敲代码,我倒觉得,机器自动编程的时代会到来的。这开发恐怕需要10G以上的虚拟机,我的机器不是那么强大呀)。所以我选择基于NXP提供的MCUXpresso SDK2.2来做,(虽然称作MCUXpresso,但NXP的MCUXpresso IDE目前主要支持K系列和LPC54系列的contex-M 类芯片和新的i.MXRT,并不支持i.MX)。 拿到板子,阅读了资料,我简直束手无策,因为我没有usb串口哇。真不明白,PC上已经消失的串口,这里竟然成了必需品。好吧,我想想,最后发现我有一个旺宝电子出的宝马1768板(用的LPC1768芯片),上面通过PL2303HX把LPC1768的P02、P03串口转为usb,我把PC的USB接到这板上,再从这板上把P02、P03线引出来,接到iMax6Ul-IOT的串口调试上,打开PuTTY,啊哈,顺利启动!Linux刷刷地出来了!! 呵呵, 不错,这是一种左耳朵进 右耳朵出,就是不经过大脑的做法。 其实MYS-6ULX-IOT的调试串口同时也是出现在J3扩展接口上的3、5脚UART1。[url=]快捷导航[/url]
然后,只会ls命令的我,在这里练习了cd, mkdir, echo, who,whoami, yes,help, ….. ,不知道怎么了, ping 失败,似乎网络不通。 哦,下一步呢?网络、显示,还是键盘、鼠标?开发contex-M3的思想用这里好尴尬。可能很难按时完成计划的远程监控系统了。我买个笔记本显示屏不到200元,米尔销售的4.3寸屏都要300元啊,核心板都才只要99元啊。
其实呢,这个iMax6Ul-IOT的调试串口就是uart1, 同时也是 J3的3、5脚,只需一个简单的芯片就可设计转为usb方式连接,同时J3的3、5脚还保留串口,一举两得, 现在却一定要用TX/RX线,难道运行Linux的机器上都还有串口吗? NXP自己的i.MX6UltraLite评估套件 则用一个usb做为串口, 就省了单独的串口。 当然了,评估板要小而全,易于判断用途价值的多样能力,产品则是多而精,要易于组合实现强大针对功能。
|