-
1.
ARM
处理器的
7
种运行模式,除用户模式外,其余
6
种位特权模式。
Usr
(用户模式)
ARM
微处理器正常程序执行模式;
Fid
(快速中断模式)用于高速数据传输或通道模式;
p>
Irq
(外部中断模式)用于通用的中断处理;
Svc
(管理模式)
操作系统使用的保护模式;
Abt<
/p>
(数据访问终止模式)
当数据或指令预取终止时进入该模式,
p>
可用于虚拟
存储或及存储保护;
Sys
(系统模式)运行具有特权的操作系统任务;
Und
(未定义指令终止模式)
当未定义的指令执行时进入该模式,
可用于支持
硬件协处理器的
软件仿真;
2.
ARM
寄存器结构,共
37
个寄存器,
31<
/p>
个通用寄存器,
6
个状态寄存器,理解<
/p>
特殊寄存器的用法。
通用寄存器(
31
个)
p>
不分组寄存器(
R0
—
R7
)
分组寄存器(
R8
—
R14
)
PC
指针(
R15<
/p>
)
对于
ARM
指令集而言,
PC
总是指向当前指令的
下两条指令的地址
,
即
PC
的值为当前指令的地址值加
8
个字节程序状态寄存
器
状态寄存器(
6
< br>个)
CPSR
(
1
个)
所有处理器模式下都可访问当前程序状态寄存器
CPSR
。
CPSR
中包含条件码
标志、中断
禁止位、当前处理器模式以及其他状态和控制信息。
SPSR
(
5
个)
SPSR
< br>除
usr
、
sys
外,
对应用于异常保护的
CPSR
< br>的备份,
异常时,
保存
CPSR
值,异常退出时,将该值恢复到
CPSR
,以保证程序的正常运行,每一中异常
运行模式(除
usr<
/p>
和
sys
)有各自的物理寄存器。
特殊寄存器的用法
PC
程序计数器:
< br>对于
ARM
指令来说,
PC
p>
总是指向当前指令下的两条指令的地址,即
PC
的值
为当前指令地址值加
8
字节。
程序状态寄存器:
用来保存当前处理器以及其他状态和控制信息。
3.
CPSR,SPSR
分配,状态寄存器每个位的作用。
分配:
在所有处理器模式下都可以访
问
CPSR
。
CPSR
包含条件码标志、中断禁止位、
当前处理器模式以及其他状态和控制信息。每种
异常模式都有一个程序状态
保存寄存器
SPSR
。当异常出现时,
SPSR
用于保留
< br>CPSR
的状态。
每个位的作用:
1.
条件码标志
N:
如果结果是带符号的二进制补码,若结果为负数,
N=1
,
反之
N=0
;
Z:
若指令的结果为
0
,则置
Z=1
(通常用于比较的结果为“相等”
)<
/p>
,反之
则
Z=0
;
C
:
-
加法,若加法产生进位(无符号溢
出)
,则
C=1
,反之
C=0
;
-
减法,若减法产生借位(无符号溢出)
,则
C=0
,反之
C=1
;
-
移位,
C
为移出值得最后一位。
-
其他操作不变
V
:
p>
-
加法或者减法,发生带符号溢出时,
V=
1
,认为操作数和结果是补
码形式的带符号整数。
-
对于非加法
/
减法指令,
V
通常不
变。
2.
控制位
中断禁止位:
I=1
,禁止
IRQ
中断
F=1
,禁止
p>
FIQ
中断
T
位:
<
/p>
T=0
,指示
ARM
执行
T=1
< br>,指示
Thumb
执行
模式控制位:
M4
,
M3
,
M2
,
M1
和
M0
(
M[
4:0]
)
是模式位,
决定处理器的工
作模式,
其他位:
保留以作扩展
4.
ARM9
处理器状态切换指令
BX
,
ARM<
/p>
和
Thumb
的特点,
< br>ARM
状态切换到
Thumb
状
态的指令要求指示程序入口地址的寄存器的内容为奇数。
看<
/p>
(
位
[0])
为
1
时,执行
BX
指令进入
Thumb
状态,当出现异常时,处理完异
常返回时自动转入
Thumb
模式;
看
(
位
[0])
为
0
时,
执行
BX
指令进入
ARM
状态,
当出现异常时,
把
PC
放入异
常模式链接寄存器中。从异常向量地址开
始执行也可以进入
ARM
状态。
5.
ARM9
处理器调用子程序的指令
BL
,子程序返回的指令
MOV PC
,
R14
。
BL
的指令格式:
BL{
条件
}
目标地址
BL
是一个跳转指令,在跳转之前,会在寄
存器
R14
中保存
PC
的当前内容,
因此,
可以将
R
14
的内容重新加载到
PC
中来返回跳
转指令之后的那个指令处
执行
6.
大端模式和小端模式规则。
大端模式
,是指数据的高字节保存在内存的低地址中,而数据的低字节保存
在内存的高地址中
p>
小端模式,是指数据的高字节保存在内存的高地址中,而数据的低
字节保存
在内存的低地址中
7.
压栈方式,满递增,满递减,空递增,空递减。
满递增堆栈:堆栈指针指向最后压入的数据,且由低地址向高地址生成
p>
满递减堆栈:堆栈指针指向最后压入的数据,且由高地址向低地址生成
空递增堆栈:堆栈指针指向下一个要压入的数据的空位置,且由低地址向高
地址生成
空递减堆栈:堆栈指针指向下一个要
压入的数据的空位置,且由高地址向低
地址生成
8.
嵌入式系统的定义
以应用为中心,<
/p>
以计算机技术为基础,
软硬件可剪裁,
适
应应用系统对功能、
可靠性、成本、体积、功耗严格要求的专用计算机系统。
9.
嵌入式计算机系统的硬件层的组成和功能。
1.
嵌入式微处理器
是嵌入式系统硬件层的核心
2.
存储器
用来存放和执行代码
3.
通用设备接口和
I/O
接口
实现与外界设备交互
10.S3C2
410A
与配置
I/O
口相关的寄存器
及功能。
S3C2410
:是
Samsung
公司推出的
16
位
/32
位
RISC
处理器,主要面向高性价
比、低功耗的手持设备应用。其有
S3C2410X
和
S3C2410A
两个型号,其中
A
型是
X
型的改进型,具有更好的性能和更低的功耗。
端口控制寄存器:定义并且配置引脚端的功能;
端口数据寄存器:若端口配置为输出口,数据可以写入到端口数据寄存器相
应
位中,若端口配置为输入口,则可以从数据端口寄存器的相应位中读出数
据;
端口上拉寄存器:用于控制每组端口的上拉电阻为使能
< br>/
禁止;
杂项控制寄存器用于
控制数据端口的上拉电阻、
高阻状态、
USB
Pad
和
CLKOUT
的选择
;
外部中断控制寄存器:用于配置这些信号对于外部中断请求
采用的是低电平
触发、高电平触发、下降沿触发、上升沿触发还是双边沿触发
的字符传输格式。
这种格式通过起始位和停止位来实现字符的同步
指令系统的特点。
< br>1
、优先选取使用频率最高的、很有用的但不复杂的指令;
2
、固定指令的长度,减少指令的格式和寻址方式种类;<
/p>
3
、指令之间各个字段的划分比较一致
,各字段的功能也比较规整;
4
、<
/p>
采用
Load/Store
指令访问存储
器,
其余指令的操作都在寄存器之间进行;
< br>5
、算数逻辑运算指令的操作数都在通用寄存器中存取;
6
、大部分指令控制在
1
个或小于
1
个机器周期内完成。
系统中的中断处理过程。
p>
在
ARM
系统中,一旦有中断发生,正在执
行的程序都会停下来,通常都会执
行以下的中断步骤:
1
、保存现场。保存当前的
PC
值到
R14
,保存当前的程序运行状态到
SPSR
;
2
、模式切换。根据发生的中断类型,进入
IRQ
模式或
FIQ
模式。
3
、获取中断服务子程序地址。
PC
< br>指针跳到异常向量表所保存的
IRQ
或
< br>FIQ
地址处,
IRQ
或
FIQ
的异常向量地址处一般保存的是中断服务子程序的地址,
PC
指针跳到中断服务子程序,进行中断处理。
4
、多个中断请求处理。在
ARM
系统中,允许存在多个中断请求源。为了更好
区分各个中断源,
通常给这些中断设置不同的中断优先级,并为每一个中断
设置一个中断位。发生中断时,
通过中断优先级以及访问中断标志位的状态
来识别哪一个中断发生了,进而调用相应的函
数进行中断处理。
5
、中断返回,恢
复现场。当完成中断服务子程序后,将
SPSR
中保存的程序<
/p>
运行状态恢复到
CPSR
中,
R14
中保存的被中断服务子程序地址恢复到
PC
中,
继续执行被中断的程序。
14.
嵌入式系统的三个基本特征。
嵌入性、专用性、计算机系统
15.
嵌入式计算机系统的系统软件层的组成。
通常包括
RTOS
、文件系统、图形用户接口(
GUI
)
、网络系统及通用组件模块
组成。
RTOS
是嵌入式应用软件的基础和开发平台
。
16.S3C2410A
的电源管
理模块工作模式。
正常模式:
在正常
模式,
电源管理模块为
CPU
何
S3C2410A
中的所有外围设备
提供时钟
。在这种模式下,由于所有外围设备都处于开启状态,因此功耗达
到最大。用户可以通过
软件来控制外围设备的操作。例如,如果不需要定时
器,那么用户可以断开定时器的时钟
,以降低功耗。
慢速模式:
又称为无
PLL
模式。
与正常模式不同,
在慢速模式下不使用
PLL
,
而使用外部时钟直接作为
S3C2410A
中的
FCLK
。在这种模式下,功耗大小仅
取决于
外部时钟的频率,功耗与
PLL
无关。
空闲模式:在该模式下,电源管理模块只断开
CPU
内核的时钟(
FCLK
)
,但仍
为所有其他外围设备提供时钟。空闲模式降低了由
CPU
内核产生的耗能。任
何中断请求可以从空闲模式唤醒
CPU
。
掉电模式:<
/p>
在该模式下,
电源管理模块断开内部电源。
因此除唤醒逻辑以外,
CPU
和内部逻辑都不会产生功耗。激
活掉电模式需要两个独立的电源,一个
电源为唤醒逻辑供电;另外一个电源为包括
CPU
在内的其他内部逻辑供电,
并且这个电
源开
/
关可以控制。
在掉电模式下,<
/p>
为
CPU
和内部逻辑供电的电源
将关闭。通过
EINT[15:0]
或
RTC
报警中断可以从掉电模式唤醒
S3C24
10A
。
17.I
< br>2
C
总线的数据传输过程。
①开始:主设备产生启动信号,表明数据传输开始。
②地址:主设备发送地址信息,包含
7
位的从设
备地址和
1
位的数据方向指
示位(读或
写位,表示数据流的方向)
。
③数据
:根据指示位,数据在主设备和从设备之间进行传输。数据一般以
8
位的
ACK
表明收到了每个字节。传输过程可以被终止和重
新开始。
④停止:主设备产生停止信号,结束数据传输。
接口连接方法
的特点。
1
、可读可写
2
、不具有掉电保持数据的特性,所以需要定时刷新
-
-
-
-
-
-
-
-
-
上一篇:双荧光素酶检测原理和方法总结
下一篇:UART串口编程