ITPub博客

嵌入式学习路线解析 带你找到正确学习方向

嵌入式/内核开发 作者:粤嵌科技 时间:2018-11-09 16:59:05 0 删除 编辑

  嵌入式的学习从入门开始,就不是那么容易。这不仅要求学员有毅力和好的学习态度,还要具备学习的方法,否则不仅会迷失方向,降低学习效率,还可能打击到自己的自信心。作为过来人,小编给大家谈谈正确的嵌入式学习路线,供各位嵌入式初学者参考,希望对大家有所帮助。

  嵌入式软件工程师的职责主要是根据产品的功能需求设计好软件,让硬件工作起来。嵌入式电子产品硬件部分,大部分都是相同的,核心的都是由CPU、RAM和FLASH 几大部分组成,而软件就千差万别了。产品的具体功能都是由软件来实现的,一般来讲一个产品的实现,软件设计的工作量是硬件设计的4~5倍。所以一般情况下,一个公司的软件工程师数量是硬件硬件工程师的4~5倍,嵌入式软件工程师需求比硬件工程师大很多,同时跟硬件工程师相比,嵌入式软件工程师学起来相对容易些。


嵌入式学习路线

  软件工程师嵌入式学习路线

  先打好嵌入式软件编程的基础,这一阶段重点打好嵌入式软件编程的基础,包括学习Linux系统的基本应用,Linux的常用命令、C语言编程基础、常用的数据结构。特别是C语言中对指针的理解和应用。这一阶段的主要目的是学习编程语言、开发环境、和培养自己的编程思维,为进一步学习嵌入式开发打下良好的基础。

  学习ARM体系结构编程,这一阶段才是真正的嵌入式编程,首先我们要选择一款嵌入式CPU和一款嵌入式开发平台,目前ARM 嵌入式CPU应用最广泛,这一阶段重点是学习嵌入式CPU的裸机编程,熟悉中断、定时器、串口、NAND FLASH、网络控制器、LCD屏、触摸屏等常用嵌入式外围设备的硬件工作原理,以及如何使用C语言来编程、控制这些硬件。这一阶段除了要学习对硬件编程之外,还需要学习嵌入式硬件的知识,但是对于嵌入式软件工程师来讲,重点是学习硬件的工作原理,在掌握硬件工作原理的基础上,对硬件进行编程控制。这和硬件工程师学习的侧重点有所不同。这一阶段对应的学校的课程主要包括模拟电路、数字电路、微机原理和单片机。这一阶段重点是要看CPU的芯片手册,大部分的参考书也是对芯片手册的翻译。

  学习嵌入式系统的构建,这一阶段主要学习带有操作系统的嵌入式系统的构建,包括系统的启动流程、Bootloader的工作流程、UBOOT的编译、裁剪与移植、嵌入式Linux内核的裁剪、移植与编译,嵌入式根文件系统的定制、BootLoader、内核和根文件系统的烧写。 这一阶段的主要目的是掌握带有操作系统的嵌入式系统的构建和烧写过程,以及对嵌入式系统软件的总体构成有个整体认识,为我们接下来学习嵌入式应用和驱动开发打下坚实的基础。

  学习嵌入式Linux应用程序开发,这一阶段主要学习上层的嵌入式Linux应用程序开发,包括基于Linux多进程、多线程、网络、文件与目录和QT编程。掌握嵌入式Linux环境下应用程序开发技术。

  学习嵌入式Linux驱动程序开发,这一阶段主要学习底层嵌入式Linux设备驱动程序开发设计,包括常用的字符设备驱动、块设备驱动、LCD设备驱动、触摸屏设备驱动以及驱动程序开发中的核心技术。

  嵌入式技术关键在于理论和实践的结合,要能够学以致用,完成了以上的所有阶段的知识点学习后,到底有没有学会,会不会用,能不能应用所学知识来解决实际开发中的问题,我们需要来完成一个综合的 嵌入式 实训项目,例如: 基于嵌入式Linux平台实现的飞行器、 基于嵌入式Linux平台实现的智能机器人等,这些项目都综合应用了嵌入式开发当中的应用,驱动和QT开发技术。

    嵌入式程序员主要从事软件开发,但是这不是一个简单的工程,这而是需要具有多年的工作经验与项目实操的,由于这样的人才稀缺,市场上的供应不足,便体现出了他的价值。另一方面,嵌入式为互联网行业服务,互联网是名副其实的高薪行业,随着互联网与经济发展深入融合,各行各业集体向互联网转型,使得嵌入式技术和使用价值更为广泛,嵌入式程序员更受欢迎了。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31559147/viewspace-2219450/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2018-10-22

  • 博文量
    19
  • 访问量
    6061