本帖最后由 windworld 于 2016-7-18 11:46 编辑
如何学习嵌入式Linux开发技术
一、什么是嵌入式系统?
嵌入式的定义是以应用为中心,以计算机技术为基础,并且软硬件可定制,适用于各种应用场合,对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式系统几乎包括了生活中的所有电器设备,如掌上 PDA 、移动计算设备、电视机顶盒、手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等。 二、嵌入式系统知识体系结构
嵌入式系统专业是综合了计算机硬件技术,计算机软件技术以及电子电路技术的一门综合学科,所涉及的内涵和知识非常广泛,包括:数字电路,模拟电路,计算机组成原理,单片机基础,C语言基础,操作系统,数据结构,编译原理,计算机控制,计算机网络等知识。嵌入式系统知识体系结构如下: 基础课主要包括:电路、模拟电子学、数字电子学、C语言;
专业基础课程主要包括:汇编语言、微机原理/单片机原理、计算机接口技术、操作系统、计算机网络;
专业课程课程包括:嵌入式ARM系统设计与应用、嵌入式Linux系统应用与驱动开发、基于DSP系统设计与应用。
我们知道了什么是嵌入式系统,也了解嵌入式系统的知识体系架构,那么我们该如何学习嵌入式,进入嵌入式系统开发的精彩世界呢?目前社会上学习嵌入式主要有二种途径:学校嵌入式教学、自学和参加系统的嵌入式培训。下面我们来着重分析2中学习模式的优缺点:
三、学校嵌入式教学现状
现在很多大专院校也意识到了嵌入式系统的重要性和发展前景,很多大专院校也开始开设嵌入式专业课程。但是由于嵌入式是一门综合学科,也是一门实践性非常强的学科。技术更新发展也非常快,很多学校虽然开设了嵌入式专业课程,但往往缺乏相应的嵌入式师资,有些学校甚至就把单片机教学当作嵌入式系统的核心课程,或者就讲一下ARM编程基础;做嵌入式实验大部分也只是教学系统里现有的实验程序调出来运行验证一下结果,属于验证性实验,很多学生
做完了实验都不知道自己做了什么。根本就没有机会让你去编写,调试和运行嵌入式程序了。这样的结果往往是很多学什么学完了学校的嵌入式课程,分数也很高,但是真正要他动手去编一个程序,去调试一段代码却还是感觉很茫然,无从下手。这样,很多嵌入式专业的学生即使学完了学校的嵌入式课程,还是不能完全胜任嵌入式方面的工作,甚至还没有走进嵌入式大门。主要原因在于学校偏重于理论教学而缺乏实践。
四、完全自学嵌入式
有些人本身不是学嵌入式的,他们学电子类,自动化或计算机专业的,或在校大三,大肆本科生或研究生,或者已经参加工作。他们已经从工作或学习中已经意识到了嵌入式系统的重要性和发展前景,开始自己学习嵌入式系统。在开始学习阶段,他们投入了极大的热情,买开发板,买资料,看书,照着书上的例子操作,或在网上找资料照着做。但是由于嵌入式系统的内涵非常丰富,所涉及的知识也非常广泛,包括模拟,数字电子,电子电路,计算机硬件,计算机软件,操作系统,数据结构,C语言,编译原理等。面对这么多的知识,书,他们往往不知道从何处下手,从哪里开始学起,进度非常缓慢,当他们自学的过程中,调试代码的过程,或者看书的过程,遇到问题时,往往不知道从何下手,到网上去搜索或看书,找到的资料可能你根本看不懂,因为要看懂别人在说什么,也是需要有一定的基础,书上的有些概念也很难理解,一方面是很多书上本来就没有解释清楚(现在国内很多嵌入式方面的书都是东拼西凑的,真正原创的东西比较少,所以很多嵌入式书质量都不咋的),另一方面的原因还是自己缺乏基础。他们这样折腾了几个月,甚至半年后,很多人也可能还是摸不着门道,慢慢他们的激情就消退了,最后可能也就不了了之,还是没能进入嵌入式开发的精彩世界。 五、参加系统的嵌入式培训
因为看到嵌入式的发展前景及对嵌入式才得需求,现在很多大中城市都涌现了不少的专业嵌入式培训机构。很多对嵌入式感兴趣的学生或在职人员就选择了参加这种专业的嵌入式培训的方式来提高自己的嵌入式知识水平和开发技能。但是在嵌入式培训这个行业,各类培训机构争相涌现,呈现出鱼龙混杂的局面,都打着包就业的幌子在各个学校招生,主要是那些即将走上社会的应届大学毕业生。在这些嵌入式培训机构中,有好的,技术力量强,负责的培训中心,在这里你通过系统的4-5个月的强化培训,可以取得比较好的效果。但也不排除有些培训中心是在收取了你的学费后,只是在外面请2个工程师给你讲一讲一些理论知识,甚至有些自己也搞不清楚也在那讲,或者照着书念,参加这样的培训中心,最后你的结果是花费了大量的时间,精力和财力,结果还是什么都没有学到。有些培训中心打着包就业的幌子招生,收取高额学费之后,就简单讲一些基础知识就把你送到公司上班,这样对你自己的能力还是没有多大提高。这时候你后悔也来不及了。而且目前社会上一些专业的嵌入式培训机构收费一般都比较贵,一般培训费用都在1万以上,这对于大多数在校学生或工作1-2年的人来说,都是一笔不少的费用。
以上分析了现在的学习嵌入式系统的几种模式,要么很难入门,要么要承担高额的学费还有可能被骗的风险,都有自己缺陷。那么有没有一种更好的嵌入式学习方法,既能真正学到实在的嵌入式开发技术,提高自己的能力,又不用承担高额的培训费用和被骗的风险呢?
答案是有的。笔者提出了一种导师制嵌入式系统学习方法,导师制嵌入式系统学习方法综合完全自学模式和参加嵌入式系统培训模式的优点,使得学员在花费很少费用的情况下,能快速掌握嵌入式开发的基本知识和技术,引导学生进入嵌入式开发的进程世界。
六、导师制嵌入式系统学习方法
导师制嵌入式系统学习方法通过学生自学思考,导师指导答疑,学生实训总结的模式来帮助学员学习嵌入式系统开发技术,掌握嵌入式软件的开发方法,提供嵌入式知识水平和能力。导师制嵌入式学习的具体学习过程如下:
1. 一个导师带有5 ~ 10个学生;
2. 导师通过对这些学员讲述基础的嵌入式开发知识,迅速把学员引进嵌入式开发的大门;
3. 导师给学员讲述嵌入式系统的一些基本概念,肃清学员自学时的障碍;
4. 导师指导学生需要看那些知识,那些是重点,哪些只是需要了解的,布置学习任务和实训项目及要达成的目标
5. 学生通过看书,网上查资料,看教学视频的方式学习,完成老师布置的学习任务和实训任务,有问题同学之间先互相交流,尽量自己就能把问题解决;自己实在搞不清楚的可以通过网络,电子邮件,QQ等各种方式询问导师;或在下一次辅导时询问导师;
6. 导师对学生的学习进度进行跟踪和检查,定期辅导以及进行专题讲解
通过这种学习模式,充分调动学员的学习的积极性,和自主性;又有导师全程指导跟踪辅导而不至于让学生走很多弯路,快速把学生引进嵌入式开发的精彩世界。实践证明,采用这种学习模式可以达到非常的学习效果,通过这种模式培养的学员,很快就能在嵌入式工作岗位上独挡一面,得到用人单位的好评。
总之,不管是采用何种学习方式,学习嵌入式主要还是靠自己,学习嵌入式不是空谈理论,也不是只看书就可以学会的,嵌入式一门实践性非常强的学科,一定要多动手实践,多编程,多调试,做到理论和实践相结合,这样举一反三,相信你一定在嵌入式开发技术方面有所造诣。当然在你学习的过程中,一位好的导师也是不可或缺的,一位好的导师可以领着你往正确的方向前进,并帮助你排除前进路上的障碍。
以上是笔者对于嵌入式人才培养现状的一些分析和思考,由于笔者知识水平有限,如有不当或错误之处,欢迎广大业内人士和嵌入式爱好者指正批评。
1