嵌入式系统基础概念 - 嵌入式系统、微控制器、ARM
什么是嵌入式系统?
嵌入式系统来源于英文Embedded system,是一种“完全嵌入受控器件内部,为特定应用而设计的专用计算机系统”,根据英国电气工程师协会( U.K. Institution of Electrical Engineer)的定义,嵌入式系统为控制、监视或辅助设备、机器或用于工厂运作的设备。与个人计算机这样的通用计算机系统不同,嵌入式系统通常执行的是带有特定要求的预先定义的任务。由于嵌入式系统只针对一项特殊的任务,设计人员能够对它进行优化,减小尺寸降低成本。嵌入式系统通常进行大量生产,所以单个的成本节约,能够随着产量进行成百上千的放大。
嵌入式系统是用来控制或者监视机器、装置、工厂等大规模设备的系统。国内普遍认同的嵌入式系统定义为:以应用为中心,以计算机技术为基础,软硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗等严格要求的专用计算机系统。通常,嵌入式系统是一个控制程序存储在ROM中的嵌入式处理器控制板。事实上,所有带有数字接口的设备,如手表、微波炉、录像机、汽车等,都使用嵌入式系统,有些嵌入式系统还包含操作系统,但大多数嵌入式系统都是由单个程序实现整个控制逻辑。
嵌入式系统的核心是由一个或几个预先编程好以用来执行少数几项任务的微处理器或者单片机组成。与通用计算机能够运行用户选择的软件不同,嵌入式系统上的软件通常是暂时不变的;所以经常称为“固件”。
几个重要的基本概念:
微处理器和微控制器
主流的微控制器:
8位单片机
32位微控制器
NXP -
Freescale -
-
-
Microchip
Silicon Labs
MIPS
Cypress的PSoC4
嵌入式系统的开发过程
ARM的世界
Mbed介绍
什么是Mbed?
开始使用mbed,教程
开发环境
数字输入和输出
开始编程
电压和逻辑值
mbed上的数字输出
使用数字输入
简单的光器件接口
驱动大的直流负载
小项目 - Letter计数器
模拟输出
介绍数据转换
模拟输出端口
另一种方式的模拟输出:PWM
mbed上的PWM
模拟输入
ADC
模拟输入和输出组合
处理从模拟输入获得的数据
一些简单的模拟传感器
数据转换的时序
进一步编程的技巧
程序设计和结构
功能
编程设计
采用流程图定义代码结构
伪代码
函数
多文件
串行通信
介绍同步串行通信
SPI总线
介绍SPI
板子上的SPI
设置SPI主
创建SPI数据链路
智能仪表和SPI加速度计
评估SPI
I2C总线
什么是I2C总线
mbed上的I2C
设置I2C数据链路
同I2C的温度传感器通信
使用SRF08超声测距
评估I2C
异步串行通信
什么是异步串行通信
mbed上的异步串行通信
同主机之间的同步通信
液晶显示
显示技术
介绍LCD技术
LCD字符型显示
采用PC1602F LCD
介绍PC1602F显示
连接PC1602F
使用mbed的TextLCD库
在LCD上显示模拟输入
更高级的LCDs
彩色的LCD
控制SPI LCD手机显示屏
中断、定时、任务
存储器和数据管理
存储器功能类型
数据文件的使用
C/C++库函数
定义本地文件系统
打开和关闭文件
文件数据的读写
数据文件访问示例
文件访问
串文件访问
使用格式化数据
使用外部存储器
指针介绍
数字信号处理
什么是DSP?
数字滤波举例
数字数据的输入和输出
信号重建
数字低通滤波器
按键激活
数字高通滤波器
延时/回声效果
波表音频文件的处理
高级串行通信
蓝牙串行通信
USB
以太网
控制系统
闭环和开环控制