微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > 嵌入式系统知识系统讲解

嵌入式系统知识系统讲解

时间:07-03 来源:网络整理 点击:

1 嵌入式系统的知识体系

嵌入式系统的应用范围可以大概分为两大类:电子系统的智能化(工业 控制、现代农业、家用电器、汽车电子、测控系统、数据采集等),计算机应用的延伸(MP3、手机、通信、网络、计算机外围设备等)。从这些可以看出, 要完成一个以MCU为核心的嵌入式系统应用产品设计,需要硬件、软件及行业领域相关知识。硬件主要有MCU的硬件最小系统、输入/输出外围电路、人机接口设计。软件设计有固化软件的设计,也可能含PC机软件的设计。行业知识需要通过协作、交流与总结获得。

概括地说,学习以MCU为核心的嵌入式系统,需要以下软硬件基础知识与实践训练:

①硬件最小系统(电源、晶振、复位、写入调试接口);

②通用I/O(开关量输入/输出,涉及各种二值量检测与控制);

③模/数转换(各种传感器信号的采集与处理,如红外、温度、光敏、超声波、方向等);

④数/模转换(对模拟量设备利用数字进行控制);

⑤通信(串行通信接口SCI、串行外设接口SPI、集成电路互联总线I2C、CAN、USB、嵌入式以太网、ZigBee技术等);

⑥显示(LED、LCD等);

⑦控制(控制各种设备,包括PWM等控制技术);

⑧数据处理(图形、图像、语音、视频等的处理或识别);

⑨各种具体应用。

万变不离其宗,任何应用都可以归入这几类。而应用中的硬件设计、软件设计、测试等都必须遵循嵌入式软件工程的方法、原理与基本原则。所以,嵌入式软件工程也是嵌入式系统知识体系的有机组成部分,只不过它融于具体项目的开发过程之中。

以上涉及硬件基础、软件基础及相关领域知识。计算机语言、操作系统、开发环境等均是达到这些目的的工具。有些初学者,容易把工具的使用与所要达到的真正目的相混淆。例如,有的学习者学了很长时间的嵌入式操作系统移植,而不实际开发嵌入式系统产品,到最后连一个嵌入式系统的小产品也做不好,偏离了学习目标,甚至放弃嵌入式系统领域。这就是进入了嵌入式系统学习误区,下面对此作一些分析。

2 嵌入式系统的学习误区

关于嵌入式系统的学习方法,因学习经历、学习环境、学习目的、已有的知识基础等不同,可能在学习顺序、内容选择、实践方式等方面有所不同。但是,应该明确哪些是必备的基础知识,哪些应该先学,哪些应该后学;哪些必须通过实践才能获得;哪些是与具体芯片无关的通用知识,哪些是与具体芯片或开发环境相关的知识。

由于微处理器与微控制器种类繁多,也可能由于不同公司、机构出于自身的利益,给出一些误导性宣传,特别是我国嵌入式微控制器制造技术落后,使得人们对微控制器的发展,在认识与理解上存在差异,导致一些初学者进入嵌入式系统的学习误区,浪费了宝贵的学习时间。下面分析可能存在的几个误 区。

2.1 操作系统的困惑

如果说,学习嵌入式系统不是为了开发其应用产品,那就没有具体目标,那学习方法这样的问题也就不必说了。实际上,这正是许多人想学,又不知从何开始学习的关键问题所在,不知道自己学习的具体目标。于是,看了一些培训广告,看了书店中种类繁多的嵌入式系统书籍,或上网以"嵌入式系统"为关键词进行查询,就参加培训或看书,开始"学习起来"。对于有计算机阅历的人,往往选择一个嵌入式操作系统就开始学习了。这有点像"瞎子摸大象",只了解其一个侧面。这样如何能对嵌入式产品的开发过程有全面了解呢?针对许多初学者选择"XXX嵌入式操作系统+XXX处理器"的嵌入式系统入门学习模式,认为是不合适的。建议是:首先把嵌入式系统软件与硬件基础打好了,再根据实际需要,选择一种实时操作系统(RTOS)进行学习实践。要记住:RTOS是开发某些类嵌入式产品的辅助工具,是手段,不是目的;许多类嵌入式产品,并不需要RTOS。所以,一开始就学习RTOS,并不符合"由浅入深、循序渐进"的学习规律。

RTOS本身由于种类繁多,实际使用何种RTOS,一般需要由工作单位确定。基础阶段主要学习RTOS的基本原理与RTOS上的软件开发方法,而不是学习如何设计RTOS。以开发实际嵌入式产品为目标的学习者,不要把过多的精力花在设计或移植RTOS上面。正如很多人使用Windows操作系统,而设计Windows操作系统的只有Microsoft。许多人"研究"Linux,但不使用它,浪费了时间。人的精力是有限的,学习必须有所选择。

2.2 硬件与软件的困惑

以MCU为核心的嵌入式技术的知识体系必须通过具体的MCU来体现、实践。但是,选择任何型号的MCU,其芯片相关的知识只占知识体系的20%左右,80%左右是通用的软件硬件及相关知

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top