1、嵌入式系统的特点
- 专用型
- 隐蔽型
- 资源受限
- 高可靠性
- 软件固化
- 实时性
2、嵌入式系统的CPU特点
- 实时处理
- 低功耗
- 结构特拓展性
- 集成了测试电路
3、字符
- ASCII,7个二进制位进行编码
- GB2312,3755个一级常用汉字和3008个二级常用汉字,还有682个图形符号,均采用2字节编码
4、数字音频的正确处理顺序是:取样 -> 量化 -> 编码
5、IP
- IP地址解决了网络中所有计算机统一编址的问题
- IP数据报是一种独立于各种物理网络的数据包格式
- 路由器是实现网络与网络互连的关键设备
6、RAM的工作模式
- 用户模式 - (RAM的正常程序运行状态)
- 系统模式 - (运行具有特权的操作系统任务)
- 快速中断模式 - (高速数据传输或中断)
- 管理模式 - (系统保护模式)
- 数据访问终止模式 - ABT
- 中断模式 - IRQ
- 未定义指令终止模式 - UND
7、CPSR寄存器
- 含条件码标志
- 中断禁止位
- 当前处理器模式
- 其他状态
- 控制信息
8、ARM的七种异常
- 复位异常
- 数据访问终止异常
- 快速中断异常
- 一般中断请求
- 预取指令异常
- 软件中断异常
- 未定义异常
- 每个异常中断向量均是占了4个字节!
9、大小端巧记
- 每次先问一下自己,××存放在低地址处。大代表高字节,小代表低字节。
10、RAM
- RAM处理器支持Thumb(16位)/RAM(32位)指令集,能很好的兼容8位/16位器件。
- MMU - memory management unit 内存管理单元
- MPU - memory protected unit 内存保护单元
- RAM11之前的内核命名中
- 自从RAM11之后开始以cortex命名
- cortex-M是没有MMU的!!!
11、RAM处理器指令相关
EQ
表示相等,NE
表示不等- RAM汇编程序采用分支指令
B
- 子程序调用指令
BL
- 条件转移指令
BX
- RAM汇编中没有专门的指令实现循环,一般采用比较指令
CMP、ADD、SUB
等
才能产生条件的指令,然后再通过带状态的条件转移指令BX
来实现。 - 指令后面加个
!
表示更新基地址寄存器符号 - 寄存器间接寻址就是以寄存器中的值作为操作数地址,而操作数本身存放在存储器中。用于间接寻址的寄存器必须用
[ ]
括起来 Test EQU 50
定义 标号 Test的值为50!!- RAM完成有条件无符号加法运算,并更新CPSR中的状态,条件如果是相等,要求指令执行R1+R2,结果放入R3中,则这条指令
ADDCEQ R3, R1, R2
。如果条件是大于,要求执行R1 - R2,结果放入R3,则该指令是SUBHIS R3, R1, R2
12、嵌入式最小系统
- 嵌入式处理器
- 时钟电路
- 复位电路
- 电源电路
- 存储器
- 调试测试接口
13、存储器
- DDR - dual data rate - 双倍数据速率
- DDR2 - 使原来DDR可预取读取2位变成可预取读取4位或8位,把DDR的数据传输速率又提升了两倍或四倍。
- CPU使用最频繁的少量程序代码或者数据存放在cache中
- 系统正在运行的程序的大部分数据和代码存放在主存储器(内存)中
- 系统尚未运行的程序的大部分数据和代码存放在外部存储器中
- cache通常是SRAM
- SRAM - 高速读取, DRAM - 高集成度
14、USB
- USB2.0 的速度可达到 480Mb/s
- USB3.0的速度可达到 5Gb/s, 即640MB/s
15、触摸屏
- 电阻式触摸屏,结构简单价格低
- 电容式触摸屏,结构复杂价格高
- 电容式触摸屏可以实现多点触摸和滑动操作
16、LCD显示屏
- LCD显示屏自身不带控制器,没有驱动电路,仅仅是显示器件,价格最低
- LCD显示模块内置LCD显示屏,控制器和驱动模块,有字符型和图形点阵型
- PC机通常使用的是LCD显示器,除具备显示屏外,还包括驱动器,控制器以及外壳,是完整的LCD显示设备
- DVI、VGA以及HDMI是一种接口标准
17、S3C2410的RTC时钟
- 可产生BCD数据
- 闰年产生器
- 告警功能
- 独立的电源端口
- 支持毫秒滴答时钟中断作为RTOS核的滴答时钟
- 循环复位功能
- RTC内部的数据寄存器都是8位寄存器,存放相应的BCD值
18、通信接口传输距离
- RS232 - 最远15m
- RS485 - 最远1.2k
19、实时系统
- 民航导航系统
- 防空预警系统
电力输送控制系统
20、非实时系统
视频播放系统
- 博客发布系统
- 手机交互式城市交通导航系统
21、RTOS的实时性能主要由三个指标衡量
- 响应时间
- 吞吐量
- 生存时间
22、嵌入式系统的分类
- 单内核(宏内核):Unix、Linux、WinCE、MacOS、Android OS、DOS
- 微内核:Symbian、VxWorks、QNX、uC/OS - II、 IOS
26、硬件抽象层HAL
- 嵌入式软件中直接访问底层硬件的例程集合
- 增加的HAL位于硬件电路板和操作系统内核之间
- 嵌入式电路板的最基本软件
- HAL函数是移植操作系统的基础
27、Linux内核主要由5个子系统组成
- 进程调度
- 内存管理
- 虚拟文件系统
- 网络接口
- 进程间通信
28、嵌入式系统的开发特点
- 宿主机 - 目标机的开发架构
- 与底层硬件控制程序的关系密切
- 软硬件资源受限制
- 需要固化程序
29、嵌入式系统开发调试工具
- 在线仿真器
- JTAG适配器
- 示波器
30、嵌入式系统硬件的逻辑组成
- 硬件主体中央处理器和存储器,他们通过IO接口或者IO设备与外部世界联系,并借助总线相互连接
- 中央处理器主要由运算器、控制器、寄存器和高速缓冲区(cache)组成
31、数字图像
- 包括BMP.、TIF、GIF、JPEG、PNG
- GIF是互联网上广泛使用的一种图像文件格式,它的颜色数目较少,不超过256色,文件特别小,适合互联网传输
- JPEG是静止图像数据压缩编码的国际标准,特别适合处理各种连续色调的彩色和灰度图像,算法复杂度适中,软硬件皆可实现。
32、RAM的通用寄存器
- R13 - 堆栈指针SP
- R14 - 链接寄存器LR
- R15 - 程序计数器PC
- R16 - 状态寄存器×PSR
33、802.11 速度可达到11Mbps、54Mbps、108Mbps
34、电源管理模块
- 正常模式
- 慢速模式
- 休眠模式 - 仅断开RAM内核时钟FCLK,CPU处于休眠模式,仍为外围硬件组件提供时钟。
- 掉电模式 - 切断内部电源,除非唤醒逻辑有效,否则内核不产生功耗
35、uC/OS系统时钟内核的基本功能
- 任务管理
- 时间管理
- 内存管理
- 任务调度
- 任务间通信和同步
36、ADS
- 按照存储区域类型划分为3类,RO段,RW段,ZI段,RO段是指代码存储区和常数存储区,具有只读属性
37、特别不得劲的寄存器赋值方法
rGPDCON = ((rGPDCON | 0x00005555) & 0xFFFF5555);//GPD0~GPD7配置为输出模式
0~15对应配置为01,也就是或上1对应位,然后0~15对应位置清零。
控制寄存器一般是32位的,比如0xFFFFFFFF
数据寄存器一般是16位的,比如0xFFFF
38、矩阵按键
#define KEYOUTPUT (*(VOLATILE int8u *)0X56000044)
#define KEYINPUT (*(VOLATILE int8u *)0X56000044)
INT16U ScanKey()
{
INT16U key = 0xFFFF;
INT16U i;
INT8U temp=0xFF, output;
rGPECON = ((rGPECON & 0xFFFFFF00) | 0x00000055); //初始化GPE0~GPE3为输出
rGPECON = rGPECON & 0xFFFFFF0F; //初始化GPE4~GPE7为输入
//判断键盘中是否有键按下
for(i=1; ((i<=8) && (i>0)); i<<=1)
{
output |= 0xFF;
output &= (~i);
KEYOUTPUT = output;
temp = KEYINPUT;
if((temp & 0xF0) != 0xF0)//判断列信号是否全部为1
{
key = (~i);
key <<= 8;
key |= ((temp & 0xF0)|0x0F);
return key;
}
}
return 0xFFFF;
}
//key返回判断哪个按键的方法:最高4位和最低四位都是1,
//即 1111 ---- ---- 1111,然后次高字节是行,再次高是列,
//比如第2行第3个按键按下, 对应为 1111 1101 1011 1111 - 0xFDBF
39、RAM实现485总线的功能,需要采用S3C2410芯片内部的UART
部件外加转换芯片等来实现。在软件设计时,初始化波特率9600bps,数据格式格式为:8位数据位,无数据检验位,1位停止位。那么1s时间内最多传输960个字节。(注意还有起始位和停止位)
40、复位异常的异常向量地址是0x00000000
。系统上电复位后,将从该地址处执行程序,RAM9的体系结构规定的各异常向量地址间隔通常是4个
字节,以此复位异常向量地址处通常存储一条分支
指令。