介 绍
MCU设计中,很多时候客户需要在Flash指定地址存入指定数据,这里需要用到Flash的绝对定位,我们知道有些公司可以在keil使用char const buf[x] __attribute__ ((at(0x80000))) = {};实现,那么RA是否可以实现?
通过瑞萨官方编译工具e2 studio对.ld脚本文件修改,在Flash上划一小块出来,然后通过__attribute__实现。
具体步骤如下
1、首先在Flash上划一块出来,在e2 studio对.ld文件进行修改。工程路径如下图

2、fsp.ld文件中,memory选项,Add新的分区,这里直接指定起始地址和长度。

3、fsp.ld下,文本编辑,初始my_code(!rx),删除”!”

4、如下,编辑my_code

在文本编辑会自动创建代码如下:

5、为了避免可能出现的问题,最好修改Flash地址空间,因为到此时,my_code被包在Flash区,需要修改flash区地址。
首先,复制memory_regions.ld并改名到同一目录下,在fSP.ld文件文本编辑处include新复制的文件:

接下来,我们需要在memory_regions_my.ld修改Flash空间

同样,我们可以在此处设置my_code的起始地址和长度,在第2步新建的分区直接用起始地址和长度别名替代。
6、在主函数变量声明处,添加代码
const char buff[16] __attribute__((section(".my_code "))) = {"1234567890abcdef"};
buff长度需与分区大小相同,否则会报错。
Build需要使用release。
7、编译完成后,查看如下:

注:推荐大家使用e2 studio help contents:(非常好用!!!)
来源:瑞萨MCU小百科(作者:James Xu)
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理
审核编辑 黄宇
-
FlaSh
+关注
关注
10文章
1715浏览量
154665 -
定位
+关注
关注
5文章
1553浏览量
36513 -
RA
+关注
关注
0文章
23浏览量
25223
发布评论请先 登录
【RA-Eco-RA6M4开发板评测】开发环境搭建
功耗 0.1uA的LoRaWAN 模组Ra-09/Ra-09H
瑞萨电子RA0L1微控制器的主要特点
【CPKCOR-RA8D1】+ 1.RA8D1开箱点灯
【RA4M2-SENSOR】读写Code Flash
【干货分享】基于瑞萨RA4M2-SENSOR开发板,实现便携式 GPS 定位器
【RA4E2开发板评测】1、从开箱到点亮 LED
求助,关于STM32F407的flash读写问题求解
【RA-Eco-RA4M2开发板评测】RA-Eco-RA4M2 Keil 开发环境搭建
【RA-Eco-RA4M2开发板评测】1 RA4M2开发环境搭建
瑞萨RA系列MCU FSP库开发实战指南(09)存储器映射
倍加福PXV绝对位置定位系统如何工作
绝对值编码器 —— 工业自动化的 “定位神器”
MAC地址的作用范围,MAC地址怎么申请?
精准定位,无界运行:绝对值拉线编码器解决方案

RA Flash地址绝对定位
评论