• 配置火星板(MarS Board)的启动参数


    昨天终于拿到了MarS Board。本来上周就应该到的,结果销售人员给我发了块BeagleBone Black... 要是给我的是Sabre Lite也就算了。发错货总是消费者吃亏,好像没怎么听说过占便宜的,这种现象不知有没有人专业研究的可以探讨下哈。不过MarS Board看上去很cool,红色的板子小巧只有巴掌大。本人对嵌入式系统无任何经验,只是为了建造『家用多用途变形机器人』的伟大目标而开始进入这一领域。MarS Board的ARM核心是Freescale i.mx6, 性能比较强劲。虽然在单板微型电脑市场流行树莓派(Raspberry Pi),但是树莓派的性能达不到我的性能设计要求。另一款Cubieboard性能不错,只是它的核心是全志的A10,由于厂商的限制很多资料都不开放,造成了很多问题,例如对高清视频硬解码的困难。相比之下,Freescale就上路多了。Mars Board发挥了i.mx6的大部分功能,没暴露SATA接口是一个遗憾,不过只有Sabre Lite一半的价钱应该很超值了。树莓派的一大优势是有强大的用户社区,有什么困难都能很方便的找到帮助。Mars Board基本上就没有社区,只有自己摸索了。

    首先是用Mini USB线连接PC和调试端口。运行终端仿真程序,选择串口,设置波特率为115200,然后连接MarS Board。把电源线插入插座,这时板子开始运行u-boot。默认u-boot会装载mmc上的Linux映像完成引导。MarS Board支持多种显示输出,包括LCD并行,LDB(LVDS),以及HDMI。不过我把HDMI线连接我的显示器到板子的HDMI口,却没有看到任何信号。调试窗口却有如下信息:

    mxc_hdmi mxc_hdmi: PHY PLL not locked
    mxc_hdmi mxc_hdmi: PHY PLL not locked
    mxc_hdmi mxc_hdmi: same edid
    mxc_hdmi mxc_hdmi: PHY PLL not locked
    mxc_hdmi mxc_hdmi: PHY PLL not locked

    说明书很简略,只能自行研究如何在Linux配置。

    板子上有个reset按钮,按一下重启系统,等出现倒计数按任意键可以进入u-boot设置。使用printenv可以显示所有环境变量。其中bootcmd和bootargs是我所关心的。

    setenv bootcmd 'mmc dev 1;mmc read ${loadaddr} 0x800 0x2000;bootm'

    bootcmd是启动命令。分号是命令的分隔符。mmc dev #用来选择mmc设备。板子上只有1号设备。mmc read把mmc上的Linux启动映像装载到内存。bootm开始boot。

    setenv bootargs console=ttymxc1,115200 root=/dev/mmcblk0p1 rootwait rw video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 fbmem=10M vmalloc=400M  

    bootargs是传递给kernal的参数。console=ttymxc1,115200用来设置kernal信息发往哪个console,ttymxc1是调试终端。root=/dev/mmcblk0p1设置文件系统在哪个分区。rootwait表示要到设备就绪后才挂载。video参数设置视频输出,这里我设置hdmi端口到fb0。

    设置好环境变量后可以使用saveenv来保存变动。boot后应该HDMI信号就有了,虽然还是黑屏的状态。要测试HDMI是否工作,可以往/dev/fb0中随意写入一些数据,例如:dd if=/dev/urandom of=/dev/fb0 。然后就可以看到屏幕上出现一些点点...

    接下来的任务就是让屏幕上输出有意义的信息,有待进一步研究

    把console改成tty1,这样kernal信息会输出到第一个终端:

    setenv bootargs console=tty1 consoleblank=0 video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24 fbmem=10M vmalloc=400M video=mxcfb1:off video=mxcfb2:off root=/dev/mmcblk0p1 rootwait rw

    saveenv

    boot

    果然HDMI显示器上输出了boot信息。我把无线键鼠的usb接收器插入MarS Board的USB插槽,这样就可以在终端进行输入了。

  • 相关阅读:
    asp.net中3个常用的功能,直接上代码
    看WEB 2.0实战书中的部分技术资料 引用 很随笔,很杂乱
    Building a Web 2.0 Portal with ASP.NET 3.5(DropThings实例教学)
    如何防治猪流感!猪流感!?会像SARS那样爆发吗?我们能作的就是预防。
    招聘!北京 DNN程序员 5K7K
    国外的机器人爱好者使用C#等研发的一种家庭灭火机器人
    OLAP与OLTP的区别 及 什么是数据仓库
    动态绑定数据源的ReportViewer终于搞定了
    牛奶再次出事?!算了,我还是自己榨豆浆吧。中国人喝豆浆!
    c#遍历HashTable
  • 原文地址:https://www.cnblogs.com/silmerusse/p/3200017.html
Copyright © 2020-2023  润新知