嵌入式系统原理与应用技术(第三版)-读书笔记

进入异常

  1. 1. ARM状态:LR(Link Register连接寄存器)保存下一条指令的地址(pc+4/+8)
  2. Thumble状态:LR保存的是当前PC的偏移量(不需要确定异常是从何种状态进入)
  3. CPSR(current program status register程序状态寄存器)复制到相应的SPSR(saved program status register程序状态保存寄存器)中,使CPSR模式位的值设置成对应的异常模式值。
  4. PC从相关的异常向量取下一条指令。
  5. 也可以设置中断禁止位,阻止其他无法处理的异常嵌套。
  6. 如果异常发生时,处理器处于Thumble状态,那么当用中断向量地址加载PC时,自动切换到ARM状态。

退出异常

  1. LR减去相应的偏移量,送到PC中
  2.  SPSR复制回CPSR,清除中断禁止位标志。

专用寄存器/特殊功能寄存器SFR(special function register)
GPU图像处理器(Graphical Processing Unit)
NPU神经网络处理器模块(Neuro processing Unit)
ARM11单发处理器:一次向流水线中加载一条机器指令
ARMCortexA8:同时向流水线发射两条指令,双发射
ARMCortex:同时发射3条指令
ARMCortexA9:乱序执行(OOE)


三态门:
高电平(上拉Pull Up )、低电平(下拉Pull Down)、高阻态

最基本的作用是:将状态不确定的信号线通过一个电阻将其箝位至高电平(上拉)或低电平(下拉),在不同应用场合中会对电阻的阻值要求有所不同。

高阻态:指的是电路的一种输出状态,既不是高电平也不是低电平,可以把它看作输出(输入)电阻非常大,它的极限状态可以认为悬空(开路)。


假设这个使能信号是用来控制电机的,如果悬空的话,此信号线可能在上电后(或在运行中)受到其它噪声干扰而误触发为高电平,从而导致电机出现不期望的转动,这肯定不是我们想要的,此时可以增加一个下拉电阻。而相应的,对于低有效的复位控制信号(RST#),我们希望上电复位后处于无效状态,则应使用上拉电阻。

 拉电阻越小则表示电平能力越强(强拉),可以抵抗外部噪声的能力也越强,但是拉电阻越小则相应的功耗也越大,因为正常信号要改变信号线的状态也需要更多的能量。

 嵌入式系统原理与应用技术(第三版)-读书笔记_第1张图片

STM32单片机GPIO模式即包含上拉或下拉

ARM寻址的方式

  1. 寄存器寻址:指令中地址码给出的是寄存器的编号。ADD R0,R1,R2;R0-R1+R2
  2. 立即寻址:指令中在操作码字段后面的地址码部分不是操作数地址,而是操作数本身。ADD R3,R3,#10;R3-R3+10
  3. 寄存器移位寻址
  4. 寄存器间接寻址
  5. 变址寻址
  6. 多寄存器寻址
  7. 堆栈寻址
  8. 块复制寻址
  9. 相对寻址:

你可能感兴趣的:(嵌入式系统原理与应用技术(第三版)-读书笔记)