写此文章的目的在于瑞萨RL78芯片在GCC编译器上的flash操作资料分散,且晦涩不清晰。希望能帮助到同样被困扰的工程师。
使用的芯片:R5F10BGG
1新建工程这部分就不多描述了,要注意的是需要将DATA FLASH使能。并生成
2,此时DATA FLASH的特殊功能寄存器DFLCTL已经在启动文件中使能,并生成了r_cg_pfdl.c和r_cg_pfdl.h文件。但此时编译会提示缺少库,所以需要下载瑞萨专用库。
在瑞萨官网下载FDL_RL78_Type04_Installer_V200-doc-e.zip
解压后运行RENESAS_RL78_FDL_T04_2V00.exe
选择GNU编译器生成FDL库
3、在生成库文件FDL_GNU\GNU_1301\lib文件夹中复制所有文件
4、在工程中新建文件夹,并将复制的库文件放入其中
5、添加路径。打开工程的属性界面。并配置路径
6、添加静态库文件
7、现在库函数添加完成。但调试依然会出错。这是因为没有配置相关函数分配到的sections与静态库专用的内存。
这些内容在LD文件中配置。
新建一个sections“PFDL_COD”
8、调整RAM的存放地址。因静态库所使用内存地址为静态地址,为避免与工程中的变量冲突,故需改变.data的地址。按照REN_r20ut2944ej0305_rl78_MAT_20210205.pdf所描述的静态库需求地址范围,将工程其他变量sections .data起始地址改到其后面。
9、接下来就可以正常使用DATA FLASH功能了。EEL 与FSL也是同样的道理就不多做描述了。