电子说
如何选择一块合适自己的ARM开发板?工欲善其事必先利其器,顾名思义,没有好的装备,再怎么费力,都达不到自己想要的成绩,该道理照样适用于嵌入式学习,没有合适的开发板,只会事倍功半。那么新手入门应该如何选择开发板呢?本文主要阐述嵌入式ARM入门之开发板选择及选择开发板的注意事项,具体的跟随小编一起来了解下。
1、嵌入式ARM的发展
嵌入式ARM的发展可以用一片大好来形容,翻开各个公司的网站,招聘里面嵌入式占据了大半工程师职位。广义的嵌入式无非就以下几种:
传统的51、**R、PIC称做嵌入式微控制器(MCU)
1)ARM是嵌入式微处理器(MPU)
2)DSP
3)FPGA
客观来讲,工作需求量上DSP的需求往往比ARM要多,而ARM和FPGA差不多。DSP因为数字处理与通信领域的空前发展而火暴,小到 MP3、摄像头,大到我们军品里的控制器,应用面很广。
FPGA的兄弟一般做ANSIC(特殊芯片设计)。而嵌入式ARM单纯点说并不比一个单片机强多少,但是它的独特就在于不断下降的价格和提升的性能,这完全依靠于ARM公司的发展战略。
值得注意的是:在找工作的过程中,企业(著名的,小的不算)对单纯的ARM硬件开发工程师并不比单片机重视,很少有大企业的职位里写“从事过ARM开发优先”。写的多的是什么呢?“嵌入式Linux”,这相信大家看出来了吧,需要的是硬件中的软件。
2、嵌入式ARM是硬件还是软件
很难说,ARM是硬件,Linux是软件。ARM的硬件多半已经模块化了,就像这样把板子改成这样的就算动的多的了,这同样是ARM公司的战略。实际中的嵌入式 Linux 的开发工作更多,更耗时。从这方面说ARM应该算是软件了。
在找工作中更是这样,举个例子,联想里和ARM最接近的是“BIOS工程师”是软件,MOTO里接近的是嵌入式Linux 工程师是软件。而其他很多公司把嵌入式产品开发归为硬件。所以,不要讨论这个,好好玩转自己的板子才是关键。实在不爽你就把自己叫“嵌入式开发工程师”。
3、要不要买开发板
这个主要还是要看个人的学习方法和学习方向,但还是建议买现成的。
1)买
买板子可以把注意力集中在嵌入式软件开发上,软件开发(尤其是驱动)可以不必担心自己硬件上的问题,可以一边调试,一边写驱动和程序,每次写驱动前就需要先确认硬件没问题。另外,买板子更省钱和时间。
2)做
自己做可以更了解底层硬件,可以按照自己的要求加东西,比如我就加了GPS模块、 GPRS模块 、SD卡模块,扩了个IIC的35个键子的键盘、把 LCD接口按照买的LCD改装了,可以用FPC线直接连接。当然,你可以有策略的做,比如像把RAM和ROM,网络都保持和某现成的板子一样,这样他们的资料你就可以拿过来直接用,给自己留个退路。其他的如SD了 什么的自己做。但是,就是费钱,费时间。再有就是给做的朋友几点建议:尽量拿到现成的板子,尽量多搜集其他板子的**资料,一定要拿到一张没问题的原理图,否则,做完板子才发现错误就相当误事了。
4、选UCOS、UCLINUX、LINUX、VXWORKS?还是当单片机用
1)搞开发,工程设计,用UCOS,小巧,多进程,简单,体现了ARM7的精髓。
2)Linux 正根的嵌入式系统,推荐学习使用。
3)UCLINUX 现在用的比较少,不推荐。
4)VXWORKS,学好后可以找到高薪工作,但工作机会本身并不比 Linux 好找。
5)当单片机用,不推荐,虽然ZLG一直号召这么干。因为对于学习来说多进程的系统设计才是ARM的玩头,至少你也要整个UCOS啊:)
5、嵌入式ARM都玩什么
1)硬件设计
2)嵌入式系统移植
3)驱动开发
4)应用开发
目前,基本就是这么多。其中建议把注意力放在后两个上,3有难度,4比较灵活,而且是当前ARM嵌入式开发的主要工作,最重要的是都是找工作的砝码。
1、要把握最近的形式,看看什么cpu用的最多,什么cpu最稳定,定位自己的目标有选择的学习嵌入式。现在的arm11用的最多,很多的工业上都在用,在07年之前学习嵌入式用的最多的是arm7,从07年之后的几年学习嵌入式用的最多 的是arm9,现在学习嵌入式用的最多 的就是arm11的cpu,这也算是一个规律,电子行业在发展,我们没有必要学习一些将要淘汰的东西,等我们学会了,这个也没多少人用了,那我们不是白学了。所以把握趋势很重要。
2、选择开发板 要注意硬件资源(包括:CPU、ROM、RAM、各种接口)其中NanD Flash、Nor Flash和SDRAM的大小一定要满足自已开发的要求。我们要做到花最少的钱学习最多的东西,这才是我们要实现的目标。或者我们看一下可扩展的接口是否充足。
3、软件资源对一个初学者来说也是很重要的,因为不同的开发板提供的软件资源差别很大。一般必须包括:嵌入式开发操作系统以及相应的驱动(最好有源代码)、开发工具、调试工具、学习用源代码、底板原理图、有相应的技术支持等等。现在的开发板一般的都可以提供丰富的代码,资料从网上一搜也是一大堆,原理图什么的也都提供。
4、最重要的就是技术支持,初学者在学习嵌入式的时候,可能 一个简单的烧写系统的过程可能都要弄好几天(有过这个经历的人一定有同感),所以更别说做开发了。其实初学者遇到 的问题在有一些基础的人看来可能是非常容易的一件事情,因为不太清楚其中的原理,所以不知道错在什么地方了。所以有一个技术支持是很重要的,不过现在的各个开发板厂商都称自己有技术支持,不过做的可真让人差劲。我做过很多关于开发板相关的项目,也遇到很多初学者的困惑,也感觉到初学者为此而付出艰辛的努力,我很愿意帮助初学者,助人为乐嘛。我本着为初学者服务的目的,为大家提供一个嵌入式交流平台。
5、就是价格问题了,现在大部分使用开发板的用户是学生,学生没有多少钱的,买一块开发板好几百,一个月的生活费呢,不过这个投入我认为是值得的,这一次的投入可能会改变我们以后的一生的职业,我们学到的是以后工作中用到的实实在在的技术,现在做技术的很值钱的,我们可以上网上搜一下,现在的嵌入式工程师的薪水怎么样,就是让人羡慕嫉妒恨的。所以我们不应该只看眼前的利益,把眼光放长远一些。
全部0条评论
快来发表一下你的评论吧 !