我现在是一名研究生了,在公司里面实习(大家都懂得,学生嘛,就是公司里面的廉价劳动力,做了事情然后给点报酬,还像是给了你多大恩惠一样),不想三年就这样耗费下去,所以决定学点什么。师兄说,看你是想学硬件还是软件,硬件嘛,就学FGPA,软件的话呢,就学嵌入式。我一直都是偏软一点的“硬件”学生,既可以搞软件,又不脱离硬件,那种应用软件我是不喜欢的,所以我觉得嵌入式还是很适合我的,我想把丢下的它重新开始系统的学习。
回忆:
大四的时候,因为跟着老师做一个视频移动端的优化工作,毕业设计也是基于嵌入式Linux的医疗终端,有机会接触了嵌入式Linux这个领域。当时是老师买的一个PandBoard的开发板,他同学推荐给他的,说是很适合做视频处理。这也是我的第一块ARM套件(花了3000多块钱呢),带着兴奋的心情开始摸索他,但是给我比较大的打击是,所谓的官网就是一个简单的英文网站,虽然英文还可以看懂一些,但是对于是新手的我,真是摸不着头脑。每走一步,都十分艰辛。比如我一开始PC上安装的是Ubuntu13版本的,但是开发板是Ubuntu12版本的,那么问题来了,移植QT到开发板以后,尼玛不能运行,是因为动态连接库不一样,然后PC端重装到Ubuntu12版本的,然后就顺利的运行了。这一阶段的学习给了我非常大的打击,毕业设计和老师的项目做完了以后,就把这个“宝贝”放到盒子里面。然后再也没打开过……
Now:
前段时间老师又打电话问我有没有时间做二期项目,我说现在比较忙,然后结果就是老师把板子收了回去……我就想着自己买套板子吧,然后就开始了选板子的过程。考虑到前面阶段的学习过程,我的感觉就是这次买的板子不需要多高级,资料一定要全面,让自己能够学的下去才是王道。然后找啊找,先是中意了周立功的板子,飞思卡尔的处理器,然后先把他的资料全部下载下来,然后分析了一边,发现所谓的教程撑死也就能够入门。然后又看到了猎户座的一个开发板,好像是什么ITOP,一个精英版,但是还是老样子,资料不够用,到了后面比较重要的部分就写了一句“正在编写中”,这句话太不靠谱,所以又放弃了。再后面,就看到了JZ2440这块开发板,同样的,我还是先下载的所有资料,优点很明显,够全面,而且比较系统,循序渐进,虽然第二期第三期是要花钱去买的,但是我觉得值得。我之前看过X嵌的视频结构,很乱,这里讲讲,那里讲讲,不够系统,对于新手来说,本来就够迷茫的了,不系统的知识会把新手往死胡同里带,再碰上我这种周围没有“同党”的孤独学习者,碰到点问题还不难受死。
然后我就果断入手了JZ2440(一个在所谓的公司实习的人,还要跟我姐要了500块钱来买开发板,搞笑不搞笑),然后去亚马逊买了本韦东山老师的那本配套的书,看视频看烦了就看书,看书看烦了就看视频,倒腾着来。而且书和视频各有优缺点,书的优点是编者经过细心的编辑出来的,所以比较系统,有重点。而视频的优点就是是老师亲自讲的,就会分享一下自己的经验还有要注意的细节问题。看了GPIO的一课以后,就对裸机程序、应用程序等有了新的认识,而且感觉其实没那么难,重点是怎么入门。而且有QQ交流群,有不懂的问题可以在群里提出来交流,氛围很不错,除了里面的服务解答人员,还有共同学习的人也会热心的帮忙解决。
我觉着这个板子的钱花的值了,我之前有几年的单片机开发经验,所以学这些裸机程序的难点在于IDE以前帮忙做的那些事情。我的51单片机入门“老师”是郭天祥,STM32入门“老师”是正点原子,嵌入式的入门“老师”是韦东山,虽然从未谋面,但是真心感谢你们。
以上是我选择开发板的一些经历,分享出来给大家做一个参考。就像萝卜青菜各有所爱一样的道理,我觉着JZ2440是我的菜,欢迎大家加入一起学习。