我的嵌入式软件学习路线

嵌入式学习是一个循序渐进的过程,如果是希望往嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关于这个方向,信盈达工程师认为大概分3个阶段

1嵌入式Linux上层应用,包括QT的GUI开发2嵌入式Linux系统开发3嵌入式Linux驱动

嵌入式目前主要面向的几个操作系统是,Linux,WINCE、VxWorks等等。Linux是开源免费的,而且其源代码是开放的,更加适合我们学习嵌入式。

你可以尝试以下路线

1、C语言是所有编程语言中的强者,单片机、DSP、类似ARM的种种芯片的编程都可以用C语言搞定,因此必须非常熟练的掌握。2、操作系统原理,是必需的,如果你是计算机专业毕业那也就无所谓了,如果是非计算机专业的就必须找一本比较浅显的计算机原理书籍看一看,把啥叫“进程”“线程”“系统调度”等等基本问题搞清楚。3、Linux操作系统就是用C语言编写的,所以你也应该先学习下Linux方面的编程,只有你会应用了,才能近一步去了解其内核的精髓。4、了解ARM的架构、原理、以及其汇编指令,我们在嵌入式开发中,一般很少去写汇编,但是最起码的要求是能够看懂arm汇编。

5、系统移植的时候,就需要你从最下层的

bootloader开始,然后内核移植,文件系统移植等。而移植这部分对硬件的依赖是非常大的,其配置步骤也相对复杂,也没有太多详细资料。

6、驱动开发

Linux驱动程序设计既是个极富有挑战性的领域,又是一个博大精深的内容。本质是属于Linux内核编程范畴的,因而是对Linux内核和内核编程是有要求的。

在学习前你要了解Linux内核的组成,因为每一部分要详细研究的话足够可以扩展成一本厚书。

以上只不过是大概的框架,在实际的开发中还会涉及很多东西,比如:交叉编译、makefile、shell脚本等等,所以说学习嵌入式的周期较长,门槛较高,自学的话更是需要较强的学习能力和专业功底。只要能坚持下来一定会取得成功!

从事嵌入式软件开发的好处

1、目前国内外这方面的人才都很稀缺。这一领域入门门槛较高,所以非专业IT人员很难切入这一领域;另一方面,是因为这一领域较新,目前发展太快,大多数人无条件接触。2、与企业计算等应用软件不同,嵌入式领域人才的工作强度通常低一些(但收入不低)。3、哪天若想创业,搞自已的产品,嵌入式不像应用软件那样容易被盗版。4、兴趣所在,这是最主要的。

从事嵌入式软件开发的缺点

1、入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操作系统级软件功底不深,则可能不适于此行。2、这方面的企业数量要远少于企业计算类企业。3、有少数公司经常要硕士以上的人才搞嵌入式,主要是基于嵌入式的难度。但大多数公司也并无此要求,只要有经验即可。4、平台依托强,换平台比较辛苦。

学嵌入式方法步骤

1基础知识

目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是优势。

科目:数字电路、计算机组成原理、嵌入式微处理器结构、汇编语言、C/C++、编译原理、离散数学、数据结构和算法、操作系统、软件工程、网络、数据库。

2学习linux

目的:深入掌握linux系统。

方法:使用linuxlinxu系统编程开发驱动开发分析linux内核。看几遍后,看情景分析,对照深看,两本交叉,深是纲,情是目。剖析则是0.11版,适合学习,最后深入代码。

3学习嵌入式linux

目的:掌握嵌入式处理器及其系统。

注意:要学会举一反多,有强大的基础,很多东西简单看看就能会。想成为合格的程序员,前提是必须熟练至少一种编程语言,并具有良好的逻辑思维。一定要理论结合实践。

-----------END-----------推荐阅读七大嵌入式开发技巧,实用!嵌入式经典面试题及解析嵌入式入门的10条学习建议13个嵌入式C语言优化技巧嵌入式学习分享:那些绕不开的技术点这篇文章我觉得有收获!预览时标签不可点



转载请注明地址:http://www.henanledxianshiping.com/gcsrz/19878.html
  • 上一篇文章:
  • 下一篇文章: 没有了