目录
1 概念与特点
1.1 现代计算机技术的两大分支之一
通用计算机按照高速运算和海量存储的技术方向发展;
嵌入式系统则向低功耗、高可靠性和便携性方向发展;
1.2 定义
(IEEE观点)嵌入式系统是“用于控制、监视或者辅助操作机器或设备的装置”。
(普遍认同)嵌入到对象体系中,以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积和功耗等严格要求的专用计算机系统。
1.3 三个特点
嵌入性:必须嵌入到对象系统中,满足对象系统的要求,如物理环境(便携型),电气环境(可靠)和成本(价廉)等方面。
专用性:强调量身定做原则
计算机系统:以计算机技术为基础,融合多个学科的知识。以嵌入式处理器为核心,配置与对象系统相适应的外围电路。
2 系统组成
2.1 硬件部分
最小系统电路
嵌入式处理器:
微处理器(MPU)
CPU演变而来,一般具有内置的内存管理单元(MMU),提供内存保护和虚拟存储器等功能,具有较高的性能和丰富的外围部件接口。
微控制器(MCU)
将中央处理器(CPU),存储器,中断系统和外设集成在一块芯片上的集成电路。利于系统小型化,降低系统功耗,增强系统可靠性。
数字信号处理器(DSP)
专门用于信号处理,在系统结构和指令算法方面进行了特殊设计,广泛应用于数字滤波,FFT和频谱分析
片上系统(SOC)
以可编程逻辑器件(PLD)为硬件载体,将MPU,IP(知识产权)核和存储器集成在单一芯片上。
ARM处理器
可分为ARM7,ARM9,ARM11,Cortex,其中Cortex又可分为Cortex-A系列,Cortex-R系列,Cortex-M系列
Cortex-A:面向移动计算,智能手机和服务器等市场的高端处理器
Cortex-R:面向实时应用的高性能处理器
Cortex-M:面向中低端应用的低功耗,低成本处理器
外围电路
2.2 软件部分
驱动程序:负责硬件模块的控制,为操作系统和应用程序提供接口函数
操作系统(可选):负责管理系统的全部资源,实现任务调度,并提供任务管理,时间管理和内存管理等系统服务,为应用程序提供接口函数
应用程序:根据项目应用场景,完成具体的业务逻辑调用驱动程序提供的接口函数访问硬件
3 软件开发
3.1 编程模式
前后台系统
后台系统:一个无限循环,循环中调用相关函数完成所需的操作
前台系统:若干个中断服务程序,用于处理系统的异步事件和实时性要求较高的任务
嵌入式操作系统
是一种工作在嵌入式处理器上的系统软件。具有通用操作系统的基本功能,负责嵌入式系统的软硬件资源的分配、任务调度、同步机制和中断处理等功能
3.2 程序开发方式
寄存器方式
库函数方式