全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 控制/MCU >

瑞萨RA系列MCU FSP库开发实战指南(09)存储器映射

时间:2025-04-16 15:52

人气:

作者:admin

标签: FSP  mcu  存储器  瑞萨电子   

导读:3.3 存储器映射 前文所述,寄存器与RAM、FLASH一样都是芯片内部的一种存储设备。那么,当我们需要访问它们的时候,我们需要知道它们的存储地址。 3.3.1 存储器映射表 如下图所示为R...

3.3

存储器映射

前文所述,寄存器RAM、FLASH一样都是芯片内部的一种存储设备。那么,当我们需要访问它们的时候,我们需要知道它们的存储地址。

3.3.1

存储器映射表

如下图所示为RA6M5的存储器映射表,可以看到RA6M5芯片内部的存储器被映射到这一整块4G(0 ~0xFFFF FFFF)的地址空间中。我们还可以看到,除了寄存器和SRAM、Flash的地址空间区域以外,还存在着其他类型的地址空间区域,比如QSPI area和OSPI area。Reserved area表示的是保留区域,尚未用到。

11eaa332-1a81-11f0-9310-92fbcf53809c.png

3.3.2

存储器区域划分

存储器本身不具有地址信息,它的地址是由芯片厂商或用户分配,给存储器分配地址的过程就称为存储器映射。如果给存储器再次分配一个地址就叫存储器重映射。

对于RA6M5(176 pin)芯片,其内部线性地址空间划分为如下区域:

表2:线性地址空间区域划分

11f6bf82-1a81-11f0-9310-92fbcf53809c.png

表格中的“0x4000_0000~0x4018_0000-1”区域,也就是“0x4000_0000~0x4017_FFFF”区域,它映射到了绝大部分外设模块的寄存器。

3.3.3

外设基地址和外设寄存器地址

如下图所示:

120a5344-1a81-11f0-9310-92fbcf53809c.png

图中①处为该外设的基地址,也就是IO端口的基地址。因为RA6M5的IO端口不止有一个,而是有16个端口(用PORTm表示,m=0~9,A,B),所以每一个端口都有一个基地址,每个端口的基地址都可以用图中的公式来计算出来。

图中②处为该外设寄存器的地址偏移,图中的寄存器为PCNTR1/PODR/PDR寄存器,而“Offset address:0x000”表示的是该寄存器相对于基地址的偏移量。

举例来说

当我们要读取PORT1的PCNTR1/PODR/PDR寄存器的值时,我们要先计算出该寄存器的地址为:(0x40080000+0x0020*1),然后再把该地址值转换为C语言的指针:(uint32_t*)(0x40080000+0x0020*1),最后再取值即可读出该寄存器的值:*((uint32_t*)(0x40080000+0x0020*1))。

需要注意的是,每一种外设模块下面都会有多个寄存器,每个寄存器都有特定的功能。对于一些功能相对复杂的外设来说,它们的寄存器数量可以达到十几个甚至几十个。以IOPORT1为例,它的基地址为:0x40080020,下表则展示了它部分的寄存器名称、寄存器地址以及相对于基地址的偏移。

表3:IOPORT1寄存器及其地址

121616de-1a81-11f0-9310-92fbcf53809c.png

注解

注:由于基地址不同,上述表格未包含PmnPFS等这些也和IOPORT1有关的寄存器。

3.3.4

外设寄存器

下图所示为外设寄存器的一般格式。

121d6736-1a81-11f0-9310-92fbcf53809c.png

说明:

寄存器名称。

外设模块基地址及其寄存器偏移地址。

寄存器位表格。32位MCU的寄存器大小一般为32位(bit),占四个字节。“Bit position”为位号,指示该位处于该寄存器中的位置;“Bit field”为位域,一般不同的位域有不同的作用;“Value after reset”为复位值,指示该位的复位值。

位域功能说明。这部分为对每一个位域的功能的详细说明。

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信