LPC11Uxx Cortex-M0

32位处理器内核,采用冯诺依曼结构,基于16位的Thumb指令集。

处理器模式有线程模式和处理机模式,支持字节、半字和字。

CMSIS——Cortex 微控制器软件接口标准,包含处理器内核外设的地址定义和数据结构,组成TCP/IP协议栈和Flash文件系统的中间件元件的可选接口。

寄存器:

R0-R12——通用寄存器,供数据操作

R13(SP)——分为主协议栈指针(MSP)和进程协议栈指针(PSP)

R14——链接寄存器,存储子程序、函数调用和异常返回的信息

R15——PC,当前程序的地址

程序状态寄存器(PSR):

应用程序状态寄存器(APSR)——执行完指令后条件标志的当前状态

中断程序状态寄存器(IPSR)——包含当前中断服务程序的异常编号

执行程序状态寄存器(EPSR)——包含Thumb状态位

PRIMASK(中断屏蔽寄存器)——禁止处理器处理异常

CNTROL(控制寄存器)——控制处理器处于线程模式时所使用的协议栈

内存映射分成多个区域,每个区域有一个定义好的存储器类型(普通、设备、强秩序存储器、永不执行)

LPC11U35的内存映射:

64KB 闪存Flash——存放代码、有效中断向量,程序代码的可执行区域,也可以存放数据

8KB SRAM0、2KB SRAM1——数据的可执行区域,也可以存放代码

16KB 引导ROM

2KB USB RAM——数据的可执行区域

APB 外设——外部设备存储器

USB

GPIO

1MB 专用外设总线——NVIC、系统定时器和系统控制模块(SCB),只能使用字访问

异常的类型,按优先级排列:

复位、NMI(不可屏蔽中断)、HardFault、SVC(管理程序调用)、PendSV、SYSTick、中断IRQ

异常处理程序:

ISR(中断服务程序)

故障处理程序——处理HardFault

系统处理程序——处理除IRQ以外的异常

WFI(等待中断指令)可以使器件立刻进入睡眠模式

关于内部函数:

内部函数产生ISO/IEC C代码不能直接访问的指令,可由CMSIS和有可能由C编译器提供。

内部函数可产生某些指令或者访问特别寄存器

猜你喜欢

转载自blog.csdn.net/yhl_sophia/article/details/81452943