background image

(3) 哪天若想创业,搞自已的产品,那么嵌入式是一个不错的主意,这可不像应用软
件那样容易被盗版。我们这届有个同学自己有点此类小生意

,具体做什么的没细问, 

他每月要进货几千片

8 位单片机,现在自己已经有车有房了。还有现在开发的饭馆用的

点菜

PDA(WinCE

 

平台,可无线连网和上网),据说销路不错,饭馆点 点

PDA 让客户点

菜,多显派头档次。这些

PDA

的硬件设计一般都是请别的公司给订做(这叫 贴牌

OEM

 

),都是通用的硬件,我们只管设计软件就变成自己的产品了。

 

从事嵌入式软件开发的缺点是:
(1) 入门起点较高,所用到的技术往往都有一定难度,若软硬件基础不好,特别是操

 

作系统级软件功底不深,则可能不适于此行。
(2) 这方面的企业数量要远少于企业计算类企业。特别是从事嵌入式的小企业数量较

 

多(小企业要搞自己的产品创业),知名大公司较少(搞嵌入式的大公司主要有

Intel

Motorola、TI、Philip、Samsung、Sony、Futjtum、Bell-Alcatel、意法半导体、

Microtek、研华、华为、中兴通信、上广电等制造类企业)。这些企业的习惯思维

 

方式是到电子、通信等偏硬专业找人。
(3)有少数公司经常要硕士以上的人搞嵌入式,主要是基于嵌入式的难度。但大多数

 

公司也并无此要求,只要有经验即可。

同学们若学习嵌入式,显然应偏重于嵌入式软件,特别是嵌入式操作系统方面,应是

 

我们的强项。
对于搞嵌入式软件的人,最重要的技术显然是(实际上很多公司的招聘广告上就是这

 

样写的):
(1) 

 

掌握主流嵌入式微处理器的结构与原理

(2) 

 

必须掌握一个嵌入式操作系统

(3) 

 

必须熟悉嵌入式软件开发流程并至少做过一个嵌入式软件项目。

 

在嵌入式软件方面最重要的课程包括:

(1) 嵌入式微处理器结构与应用:这是一门嵌入式硬件基础课程,我们说过,嵌入式
是软硬件结合的技术,搞嵌入式软件的人应对

ARM

 

处理器工作原理和接口技术有充 分

了解,包括

ARM 的汇编指令系统。若不了解处理器原理,怎么能控制硬件工作,怎么

 

能写出节省内存又运行高速的最优代码(嵌入式软件设计特别讲究时空效 率),怎
么能写出驱动程序(驱动程序都是与硬件打交道的)?很多公司招聘嵌入式软件人员
时都要求熟悉

ARM

 

处理器,将来若同学到公司中从事嵌入式软件开 发,公司都会给你

 

一本该设备的硬件规格说明书

(xxx Specification),你必须能看懂其中的内存分布

和端口使用等最基本的说明(就像

x86 汇编一样),否则怎么设计软件。有些同学觉

 

得嵌入式处理 器课程较枯燥,这主要是硬件课程都较抽象的原因。还有同学对

ARM 汇

编不感兴趣,以为嵌入式开发用

C 语言就足够了。其实不应仅是将汇编语言当成一个

 

程序设 计语言,学汇编主要是为了掌握处理器工作原理的。一个不熟悉汇编语言的
人,怎么能在该处理器写出最优的

C 语言代码。在嵌入式开发的一些关键部分,有时

 

还必 须写汇编,如

Bootloader 等(可能还包括 BSP)。特别是在对速度有极高要求的

场合(如

DSP

 

处理器的高速图像采集和图像解压缩),目前还会用到 汇编写程序的

,

尽管用到的机会相对

C 要小得多。当你在一个嵌入式公司工作时,在查看描述原理的

 

手册时,可能很多都是用汇编描述的,这是因为很多硬件设计人 员只会写或者喜欢
用汇编描述,此时你就必须看懂汇编程序,否则软硬件人员可能就无法交流。很多嵌

 

入式职位招聘时都要求熟悉汇编。

[  

小 知识

] 目前嵌入式处理器常见的有 ARM、PowerPC、MIPS、Motorola 68K、ColdFire

(冷火)等,但 ARM 占据了绝对主流(有资料说手机中几乎 90%都是 ARM 处理器)。ARM 是

 

一个只卖知识产权的公司,目前获得 购买了

ARM CPU 核授权许可的大公司很多,包括

Intel、Samsung、Amstel、Motorola、Philip 等,他们都在 ARM CPU 核的基础上进行
了一些外围扩展,形成自己的处理器(如

Samsung S3C2410,Motorola i.MXL9328 等

处理器都是采用

ARM 9 内核,指令一级是相同的)。而众多中小公司又购买了这些处

理器,设计了各种各样的开发板,如华恒等国内很多著名嵌入式公司都生产基于

Samsung

S3C2410 的开发板,供最终用户使用或供教学实验。在 ARM 这个食物链上,ARM 公司是
大鱼,

Intel、Samsung

 

等公司是小鱼,而华恒等则是 虾米,最终用户(我们这些要

采购嵌入式开发板的)则是喂虾米的。

Intel 早期生产的是低端 ARM(Strong ARM,相

当于

ARM 7),现在转向主要生产高端 ARM(即 Intel Xscale 处理器,属于 ARMv5 家族,主