微机原理之MSP432——寄存器和库函数

1.1.寄存器介绍

1.1.1存储器映射

   存储器本身是不具有地址的,是一块具有特定功能的内存单元,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程就叫做存储区映射。给内存单元分配地址之后,就可以通过指针去操作内存地址。

1.1.2.存储器映射表

   我们知道,MSP432是一个32位的单片机,它的地址范围为2的32次方,也就是4GB的地址空间。为了降低不同客户在相同应用时的软件复杂度,存储映射是按Cortex-M4处理器提供的规则预先定义的。在存储器映射表中,一部分地址空间由Arm Cortex-M4的系统外设所占用,且不可更改。其余部分地址空间可由芯片供应商定义使用。

1.1.3.什么是寄存器

   寄存器是具有特定功能的内存单元,通过操作这些内存单元可以驱动外设工作。寄存器按功能又可分为指令寄存器、地址寄存器和数据寄存器,处理器可以使用相互独立的总线来读取指令和加载/存储数据。

1.1.4.寄存器映射

   程序存储器,数据存储器,寄存器和I / O端口都在同一个线性的4 GB的地址空间之内。每一个寄存器都对应不同的功能,操作相应的寄存器就可以配置不同的功能。如果我们要控制某个外设工作,那我们可以找到这个单元的起始地址,然后通过c语言指针的方式来访问这些内存单元。但通常我们会给这个特殊的内存单元取一个名字,这个给已经分配好地址的有特定功能的内存单元取别名的过程就叫寄存器映射,这个别名就是我们所说的寄存器。

1.1.5.寄存器重映射

   给寄存器再分配一个地址的过程叫做寄存器重映射。

1.1.6.总线基地址

   片上外设区域分为三条总线,分别为AHB总线、APB1总线和APB2总线。AHB总线最高时钟可达200MHZ,APB1总线最高时钟可达50MHZ,APB2总线时钟最高可达100MHZ。根据外设速度的不同,不同的总线挂载着不同的外设。总线的最低地址我们称为该总线的基地址,总线基地址也是挂载在该总线上的首个外设的地址。关于总线上挂载的外设更多详细信息请查看数据手册的第11页。