0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于RL78-FDL库实现RL78G13 Data Flash的读写操作

jf_pJlTbmA9 来源:瑞萨MCU小百科 作者:瑞萨MCU小百科 2023-10-27 09:19 次阅读

前 言

在许多实际项目中是需要在MCU掉电前保存一些数据,以供MCU在下一次上电后能读取。而瑞萨的MCU RL78G13能通过瑞萨免费提供的数据闪存编程库(FDL)来简单快捷地实现内部Data Flash的读写操作。

本文是基于CS+(for CC) 开发环境,MCU是R5F100LE,FDL库文件是在瑞萨官网下载的FDL_RL78_Type04_Installer_V200-doc-e.zip。

首先我们先解压安装好FDL库

wKgZomUD6V6AV666AAAeVH1qa-Y064.png

选择CC-RL版本

wKgZomUD6WCAXkzQAABNxa4XnA4476.png

安装好后在文件夹里有以下4个文件,之后需要添加到工程里面。

wKgaomUD6WGANsJVAAASoTJnNAk699.png

之后新建一个工程,并添加刚才4个文件到工程中,由于FDL库的运行需要用到MCU的内部时钟,所以选择默认的内部时钟(fIH),频率32M。

wKgZomUD6WKAdDFdAAQd-pjODDI700.png

选择使用Data Flash,并点击生成代码(Generate Code)

wKgaomUD6WSARGRqAANgV6ekstM756.png

这样我们就已经生成了基于FDL库的代码,现在直接调用代码中的函数就能实现读写Data Flash。

我们现在来测试一下,本次测试的预想结果是在MCU的dataflash起始地址F1000H写入5个数据,然后再从中读取存放到目标数组中。

首先我们在r_main.c文件中定义两个数组,tx_buf1为写入数据的数组,rx_buf1为读取数据的数组。然后在main函数中调用r_cg_pfdl.c中的一些函数,如下图所示代码:

wKgaomUD6WWAN4AFAAN0MT8MWLM165.png

在读写Data Flash时,首先调用R_FDL_Open函数来实现启动FDL库,之后我们擦除目标地址的数据,该MCUu是4k的Data Flash,而FDL库每次操作擦除的地址是1k,所以把4k的地址分为4个块,而目标地址F1000H处于块0,即调用R_FDL_Erase(0);然后在F1000H的地址开始写入数组tx_buf1的5个数据,调用R_FDL_Wirte(0x0000, tx_buf1[0],5);0x0000为F1000H的相对地址,此说明在该FDL库的用户手册有写到,如下图:

wKgZomUD6WaAMH33AABF3HfVGhU171.png

从F1000H开始读取之前写入的5个数据存入数组rx_buf1中,即调用了函数R_FDL_Read(0x0000, rx_buf1[0],5)。最后完成擦除写入读取操作,关闭库操作,即调用R_FDL_Close()函数。

代码完成后我们仿真验证一下,通过Memory1看到,写入数据成功,如下图

wKgZomUD6WiAV1isAAMNcKfWWHk596.png

而通过查看watch1中rx_buf[1]数组的值可以看到,读取数据成功,如下图

wKgaomUD6WmAHe1eAAKA_c4dEhM369.png

总结

以上就是基于瑞萨提供的FDL库来实现RL78G13 Data Flash的读写操作,真的是十分的简单快捷,用户无需过多的查看手册都可以十分迅速地掌握。通过瑞萨的开发环境CS+(for CC),可以实现瑞萨RL78系列MCU的外设的选择、配置、代码生成,大大减少了开发人员对于MCU底层的配置,从而缩短了整个项目的开发周期,这也是瑞萨RL78系列MCU深受广大嵌入式开发人员的好评之一。

来源:瑞萨MCU小百科
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理


审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FlaSh
    +关注

    关注

    10

    文章

    1551

    浏览量

    146649
  • RL78
    +关注

    关注

    2

    文章

    113

    浏览量

    21467
  • RL78G13
    +关注

    关注

    0

    文章

    9

    浏览量

    8786
收藏 人收藏

    评论

    相关推荐

    RL78G13开发套件_MCU板原理图

    RL78G13开发套件_MCU板原理图
    发表于 10-15 00:24

    RL78G13开发套件_仿真板原理图

    本帖最后由 于圭 于 2014-12-29 10:14 编辑 RL78G13开发套件_仿真板原理图
    发表于 10-15 00:26

    RL78G13快速入门教程

    RL78G13快速入门教程
    发表于 10-15 00:27

    RL78/G13开发板原理图 资料下载

    RL78G13开发套件_仿真板原理:RL78G13开发套件_MCU板原理图:
    发表于 01-13 14:51

    RL78G13开发套件 原理图及入门教程

    RL78G13开发套件_MCU板原理图下载:RL78G13开发套件_仿真板原理图下载:快速入门教材下载:
    发表于 01-22 16:27

    RL78G13IO口

    请问各位 谁知道RL78G13的P1P2口做普通IO口的时候要怎么做 需要配置那些 寄存器吗?
    发表于 08-08 02:06

    RL78G13快速入门教材

    RL78G13快速入门教材
    发表于 08-11 09:27

    瑞萨RL78G13单片机SPI版LCD驱动

    ` 分享一个瑞萨RL78G13单片机驱动SPI版LCD的程序。使用的LCD如下图:单片机与LCD的连接如下:`
    发表于 08-23 00:10

    瑞萨RL78G13单片机红外遥控程序

    分享一个瑞萨RL78G13单片机实现红外遥控的程序,设置定时器为捕获模式后,根据说明更改相应内容即可使用。这两个文件就是红外遥控的代码,在定时器的文件中要修改相应内容。
    发表于 08-23 13:09

    瑞萨RL78G13单片机矩阵键盘程序

    本帖最后由 cztqwan 于 2015-8-27 10:49 编辑 分享一个瑞萨RL78G13单片机的矩阵键盘程序,根据说明设置相应的引脚即可使用。压缩包中包含两个文件,添加到工程就好。在这
    发表于 08-26 15:59

    瑞萨RL78G13的板子有人有freertos的源码吗?

    各位大佬,瑞萨RL78G13的板子有人有freertos的源码吗,最好是cubesuite的. 还有freertos的官网上有freertos for rl78 with IAR的demo,可找不到在哪下载,望大佬赐教!小弟感激不尽!
    发表于 07-24 08:01

    RL78 dataflash pfdl使用教程

    瑞萨RL78 dataflash pfdl使用1.安装PFDL2.CS+ for CC配置4.读dataflash5.写dataflash6.注意事项1.安装PFDL从瑞萨官方下
    发表于 07-23 09:48

    RL78添加FDL报错是什么原因呢

    RL78添加FDL报错是什么原因呢?怎样去解决这个问题?
    发表于 01-25 07:01

    瑞萨RL78添加FDL报错

    \pfdl.lib"最终发现是下载的REN_JP_R_FDL_RL78_T04_V1.05_A_E_UPR_20130809文件库有问题,下载最新的FDL_RL78_Type04_Installer_V200-doc-e将FDL
    发表于 11-30 10:36 9次下载
    瑞萨<b class='flag-5'>RL78</b>添加<b class='flag-5'>FDL</b>报错

    RL78/G23 Data flash使用教程

    RL78/G23 Data flash使用与之前的RL78系列(如RL78/G13)有所不同,详
    的头像 发表于 09-09 12:58 1942次阅读