配置火星板(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插槽,这样就可以在终端进行输入了。
配置火星板(MarS Board)的启动参数的更多相关文章
- php配置php-fpm启动参数及配置详解
约定几个目录 /usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini一,php-fpm ...
- php-fpm 启动参数及重要配置详解
约定几个目录 /usr/local/php/sbin/php-fpm /usr/local/php/etc/php-fpm.conf /usr/local/php/etc/php.ini 一,php- ...
- linux下php-fpm 启动参数及重要配置
约定几个目录 /usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.iniI. php-fp ...
- Fitnesse启动参数与配置
Fitnesse最新版20140630默认启动后,网页风格与 fitnesse.org 的Bootstrap风格完全不一致. 需要配置plugins.properties中的Theme=bootstr ...
- eclipse.ini配置eclipse的启动参数
Eclipse的启动由$ECLIPSE_HOME/eclipse.ini控制,如果$ECLIPSE_HOME 没有被定义,则Eclipse安装目录下的默认eclipse.ini会生效. eclipse ...
- php-fpm 启动参数及重要配置详解<转>
原文地址 http://levi.cg.am/archives/3127 约定几个目录 /usr/local/php/sbin/php-fpm /usr/local/php/etc/php-fpm. ...
- Eclipse 配置Tomcat启动参数 Java EE IDE for Web Developers. Version: Helios Service Release 2
因为在开发的过程中出现了PerGen Space.所以需要修改Tomcat的启动参数,郁闷的事情是公司不使用盗版,因此离开了熟悉的一塌糊涂的MyEclipse界面还真的找不到配置Tomat启动参数的地 ...
- CMS GC启动参数优化配置
简介: java启动参数共分为三类: 其一是标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容: 其二是非标准参数(-X),默认jvm实现这些参数的功能,但是并不保证所有jvm实现 ...
- IntellIJ IDEA 启动 参数 配置
系统环境: 型号名称: MacBook Pro型号标识符: MacBookPro11,4处理器名称: Intel Core i7处理器速度: 2.8 GHz处理器数目: 1核总数: 4L2 缓存(每个 ...
随机推荐
- 【vijos】1286 座位安排(状压dp)
https://vijos.org/p/1286 这题好神不会捉... 首先我们知道所有情况有C(n*m, k)种,这个好搞.但是两两不相邻这个有点难搞.. 原来是状压dp..sigh. 设状态f[i ...
- FreeRTOS系列第17篇---FreeRTOS队列
本文介绍队列的基本知识,具体源代码分析见<FreeRTOS高级篇5---FreeRTOS队列分析> 1.FreeRTOS队列 队列是基本的任务间通讯方式.能够在任务与任务间.中断和任务间传 ...
- Otter双A同步搭建入门教程
1.准备阶段 1.1 环境 虚拟机A :192.168.0.130 虚拟机B :192.168.0.131 系统:Ubuntu 16.04 LTS JRE:OpenJDK 1.8.0_151(A.B都 ...
- 马普尔小姐探案集S02E03【熙阳岭的疑云】
--Why the husband love his wife so much? --Because she was the last one in their family.
- java的junit測试
在实际的开发中不仅须要断点调试.语句输出的方法进行程序的调试,也须要单元測试. 在java中的junit的測试方法通常是在要測试的方法上面加入@Test.@ Before.@After,@Before ...
- Linux系统中last命令的用法
1.作用 linux系统中last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户.通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统. 2.格式 last [—R ...
- python bottle学习(二)加载配置文件
from bottle import (run, route, get, post, default_app, Bottle) """ 首先获得一个app对象,有两种方法 ...
- 基础知识《三》java修饰符
一.修饰符 private 成员随时都是“私有”的,任何人不得访问.但在实际应用中,经常想把某些东西深深地藏起来,但同时允许访问衍生类的成员. protected 关键字可帮助我们做到这一点.它的意思 ...
- 用pypy运行ryu
最近看到pypy可以提高python的运行速率到很变态的境地,加之现在ryu发现拓扑的能力有限,不能满足实验要求,所以想将其试着在pypy上运行 部署pypy在virtualenv,在学python初 ...
- CodeForces 156A Message(暴力)
A. Message time limit per test 2 seconds memory limit per test 256 megabytes input standard input ou ...