什么是嵌入式开发?嵌入式学哪些?

随着智能硬件的爆发和物联网时代到来,嵌入式技术飞速发展。作为一名互联网从业者如果你还不知道嵌入式开发那就有点跟不上时代了。简单的来说,嵌入式技术是以应用为中心,以计算机技术为基础,并且软硬件可定制化,以适应于应用对功能、可靠性、成本、体积、功耗的要求。

 

 

举个例子,我们每天使用的智能手机其实就是一个嵌入式系统,它的系统由一些基本硬件组成,比如存储、CPU、电池等等,考虑到功耗,所以智能手机定制了一个操作系统。如果把电脑的硬件提供给智能手机,那么手机做出来功耗又高体积又大,就不会有人去用了,因此嵌入式系统就是针对产品的需要而定制的软件系统。

嵌入式技术最早起源于单片机技术,是对各种电子硬件设备的控制和管理。如今,互联网的迅速发展带动了各行各业将业务拓展到嵌入式开发。国内嵌入式软件市场也逐年增长,预计未来三年嵌入式软件行业将以40%以上的符合增长率。

从我这么些年做软件开发的经验来讲,软件开发没有高低之分,各种编程语言非常多。比如C、C++、Java等等,都能够进行软件开发。一般3年经验的Java程序员在15k左右,而嵌入式底层工程师两年经验大概就在15k左右。正是由于嵌入式开发有着良好发展前景,需要大量的人才。

 

但是想要从事嵌入式开发,需要懂的技术是非常多的,一个成熟的嵌入式工程师需要了解应用开发、底层开发等等内容。

一般我们要学习嵌入式开发,就要从基础Linux、C语言、数据结构开发,然后到ARM、汇编、Linux内核、驱动等等,然后通过更多项目练习来成为一名合格的嵌入式开发工程师。

学习嵌入式的方法步骤: 

 

1、基础知识: 

目的:能看懂硬件工作原理,但重点在嵌入式软件,特别是操作系统级软件,那将是我的优势。 
科目:数字电路、计算机组成原理、嵌入式微处理器结构。 
汇编语言、C/C++、编译原理、离散数学。 
数据结构和算法、操作系统、软件工程、网络、数据库。 
方法:虽科目众多,但都是较简单的基础,且大部分已掌握。不一定全学,可根据需要选修。 
主攻书籍:the c++ programming language(一直没时间读)、数据结构-C2。  

2、学习linux: 
目的:深入掌握linux系统。 

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

主攻书籍:linux内核完全剖析、unix环境高级编程、深入理解linux内核、情景分析和源代。 

3、学习嵌入式linux: 

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

(1)嵌入式微处理器结构与应用:直接arm原理及汇编即可,不要重复x86。 

(2)嵌入式操作系统类:ucOS/II简单,开源,可供入门。而后深入研究uClinux。 

(3)必须有块开发板(arm9以上),有条件可参加培训(进步快,能认识些朋友)。 

4、深入学习: 

A、数字图像压缩技术:主要是应掌握MPEG、mp3等编解码算法和技术。 

B、通信协议及编程技术:TCP/IP协议、802.11,Bluetooth,GPRS、GSM、CDMA等。

猜你喜欢

转载自www.cnblogs.com/qianfengchangsha/p/9923952.html