Monday, 25 June 2012
BeagleBoard入门(1)
玩BeagleBoard 的需要建立一个Host Computer (主机)系统,用于程序开发,编译,移植以及监控Bealgeboard上程序的运作。 通常购买的Bealgeboard都带有SD卡,上面已经写好了可以启动Beagleboard的系统(通常是一个Ubuntu 或者Armstron的Linux系统,对于第一次接触嵌入式系统开发的,最好从远程监控Beagleboard上已有程序的运行入手,然后再进行程序开发移植等较复杂的操作。
一般玩家再Beagleboard上通常用的是Linux系统,(TI是以Ubuntu 10.4 版为基础,所有相关开发、測試都是在该版本下进行的, Matlab/Simulink2012a 用的是 Ubuntu11.04, 但20121a之前的用的是Armstrong)。由于网上的技术文档也是以Linux为主,所以大部Host系统也都是Linux。所以,再用Linux之前,最好能装个双启动的系统。虽然很多人都再网上提供了用虚拟机在Windows下跑Linux,做一般的纯软件开发没问题,可是一旦涉及到硬件操作,那就很麻烦了。
基本概念:
1. Beagleboard 入门
基本概念: Native Compiler vs. Cross-compiler
native compiler (本地编译器) 是指在本地上的一个编译器,用于把(本机上的)源文件编译成可在本机或者与本机具有相同软硬件构架的其他机器上运行的可执行文件。比如, 在一台运行x86 处理器的Turbo C 编译器,可以得到一个可以在本机上运行的exe文件。把该exe文件拷贝到其他x86和相似操作系统的电脑上,也能运行。
但是,我们通常用的是x86上的Windows操作系统,可是嵌入式系统一般是ARM处理器(早期有名的嵌入式处理器是 Intel 8051),无法运行在x86机器上通过Native Compiler得到的exe文件。 这时就需要用到cross-compiler了。 A cross-compiler is one that compiles binaries for architectures other than its own, 比如在x86机器上编译得到一个Intel 8051的执行文件.bin,或者在PowerPC 上编译SPARC库。 Cross-compiler在某个软硬件平台上运行,生成的代码是用于在另一个不同的软硬件平台执行。 比如在x86上开发一个洗衣机的或者电视机的控制程序,可是这些代码是在洗衣机、电视机离运行的,不是在x86电脑上运行。
我们的目的就是如何搭建一个在Windows7下面开发BeagleBaord(ARM)代码的平台,简单的说就是搭建一个平台,使得我们能在Windows7 下面写一个hello world的c代码,然后将该代码编译成可在Beagleboard上运新的.elf文件。
下文中, 这个Windows 7的计算机被称为Host system (主机), Beagleboard被称为Target system
呵呵,写起来太累了,大家可以先去看看
http://fee.northumbria.ac.uk/nucontrol/people/dxw/projects/BeagleboardMatlab.html
我后面慢慢再写了。
一封作者给主编回信的开头语
看来这个作者已经不堪忍受折磨,就要崩溃了。同情一下,我主慈悲,饶了他/她吧,
Firstly, I want to say that this is the third review process and there is limitation of the paper pages (six pages) of the journal. And this is not a technical report than a research paper, so it is difficult to contain broad information than compact knowledge. I really want you to understand the above conditions for paper writing.
…..
记得在Times Higher Education上看到一个已经崩溃的作者写给主编的回信,愤怒要求主编若发现有他的审稿人投的稿件,请一定要分配给他来审稿。呵呵,冤冤相报,江湖情愁,学术界也不好混啊,Imagine the world without journal.
我主慈悲,饶了我吧。
Friday, 8 June 2012
转个“十年生死两茫茫”的案例
十年生死两茫茫,安卓兴,塞班亡。
低端市场,无处话凄凉。
纵使相逢应不识,诺机死,苹果王。
摩托三星忽还乡,拼低端,实在忙。
中兴亲,华为新,魅族创新强。
htc出机皇,日日换大梁。
手机业,已无常,
江湖急转行,山寨泪千行。
2. 另一大户人家的十年生死
十年生死两茫茫,百度兴,谷歌亡。
三六零出,卡巴话凄凉。
纵使相逢应不识,维特死,脸书墙。
人人开心忽还乡,马化腾,山寨王。
淘宝亲,团购亡。
视频跟着拼,论坛靠色狼,微信帮上床。
导航网,已无常,
全靠微博忙,纸媒泪千行。
3. 还是苏先生的情到深处千年未忘
江 城 子
——苏东坡
十年生死两茫茫,不思量,自难忘。
千里孤坟,无处话凄凉。
纵使相逢应不识,尘满面,鬓如霜。
夜来幽梦忽还乡,小轩窗,正梳妆。
相顾无言,惟有泪千行。
料得年年肠断处,明月夜,短松冈。
Tuesday, 5 June 2012
Bristol to Bath Railway Path
Saturday, 2 June 2012
留住曾经的年青
一段时间前,把我原来在MSN上的恢复出来,整理了一下,放到了新建的个人网页上,借此也把幸存下来的当年心灵语录回味了一下。唉,俱往矣,几年过去,心态已有所变,少了些憧憬和激情,多了些无奈和颓守。怎么了,难道这就传说中的人未老心先衰的信号。毕业后这几年有得有失,虽然走的不易,但当年的梦基本都已成或半成真,在几个关键的时候,还有底线可守,还有选择可选。正是这要命的选择,现在是时候必须作出了,但又不知如何选择,所以才颓废。就如邓公当年’搁置争议,韬光养晦’是个策略,而今已没有空间时间搁以韬光,何去何从?确需要做个决断了,要是没有选择多好。抑或是这次的梦过于遥远,正逢东风压倒西风,Offer几时有,含泪问雨天,人有悲欢离合,世事古难全,四月雪,必有冤。纵然成事在天,往者不可谏,但谋事还在人,振作起来,激情在,来者犹可追。
今天再次去Liyard的池塘看了看天鹅一家,第一次时,他们一家在路边懒洋洋的午休,鹅爸卧在路中间一夫把关,虽然我绕道而行,还是伸长了脖子警告我,小鹅是灰色的毛,毛绒绒的蜷在草地上。小鹅长很快,今天看到时,正和爸妈一起在塘里游泳。想起了嘻嘻玩电话听筒玩具,取下来,挂上去很高兴,挂不上去,啪,直接往后一躺。一家人在一起是世界永远的旋律。
"I thought of that while riding my bike.” --- Albert Einstein, On the Theory of Relativity