RL78系列MCU Data Flash使用介绍

描述

 

 

   

一、Data Flash用途介绍

 

 

RL78系列的MCU基本都是有数据闪存的,这也是RL78 MCU的特色之一,用户能使用它存储产品的标定参数,运行数据等,可以省去外面的存储器件(如EEPROM),有效的降低了用户的硬件成本。

 

   

二、Data Flash特点

 

 

用户能基于瑞萨官方提供的库来使用MCU内部的数据闪存,虽然MCU内部的闪存仍以1K字节块作为单位,但是用户可以按照字节进行读写。RL78资源的不同,对应的内部数据闪存的大小也不尽相同,一般大小在2K-8K字节范围之间,就单个地址,当前读写次数能达到1,000,000次,可在1.8-5.5伏电压范围内进行操作。

 

   

三、Data Flash使用说明

 

 

1

Data Flash应用库的下载:

如果你用的是CC-RL编译器,请在如下地址下载应用库和API应用文档:

JP_R_FDL_RL78_T04_V1.05_CCRL_A_E.zip

瑞萨

https://www.renesas.cn/cn/zh/document/upr/data-flash-library-type04-ver105-cc-rl-compiler-rl78-family?language=en

 

如果你用的是CA78K0R编译器,请在如下地址下载应用库和API应用文档:

JP_R_FDL_RL78_T04_V1.05_B_E.zip

瑞萨

https://www.renesas.cn/cn/zh/document/upr/data-flash-library-type04-ver105-ca78k0r-compiler-rl78-family

2

避开MCU内部RAM相关区域:

根据MCU的硬件手册和《Self RAM list of Flash Self-Programming Library for RL78 Family》规定,有些MCU的RAM部分区域不能被数据库使用,因此需要在section设置进行避开,否则编译会出错,不同MCU要求也不尽相同,以R5F100LE为例,闪存库仅能使用RAM FFE00H ~ FF2FFH以外的区域,如下。

瑞萨

 

如下是基于R5F100LE在CS+上的具体section配置,以避开相应的区域,其他型号的MCU也可参考。 

瑞萨

 

   

四、Data Flash测试结果

 

 

把RL78闪存库加载到应用工程里,然后调用初始化和读写函数进行数据的操作,当前使用RL78G13硬件板型号是“YRPBRL78G13”。然后在R5F100LE Data Flash的起始地址连续写一串数据“0x11,0x22,0x33, … 0xCC,并把它们读出出来,数据定义以及应用代码如下: 

 

unsigned char Execute_status;    

unsigned char W_DataFla_buff[3]  = {0x11,0x22,0x33};

unsigned char W_DataFla_buff1[3] = {0x44,0x55,0x66};

unsigned char W_DataFla_buff2[3] = {0x77,0x88,0x99};

unsigned char W_DataFla_buff3[3] = {0xAA,0xBB,0xCC}; 

unsigned char R_DataFla_buff[12]; 

unsigned long int address=0x00;

         R_FDL_Init(); 

       Execute_status = R_FDL_BlankCheck(0x00,1024);

        if (Execute_status == 0x1b) 

        {

        R_FDL_Erase(0x00);

        }  

        R_FDL_Write(address,&W_DataFla_buff[0],3); 

        address+=3;

        R_FDL_Write(address,&W_DataFla_buff1[0],3); 

        address+=3;

        R_FDL_Write(address,&W_DataFla_buff2[0],3); 

        address+=3;

        R_FDL_Write(address,&W_DataFla_buff3[0],3); 

        address+=3;

        Execute_status = R_FDL_Iverify(0x00,1024);

        if (Execute_status == 0x1b) 

        {

                return;   

        }     

        R_FDL_Read(0x00,&R_DataFla_buff[0],12);

        PFDL_Close();   

 

代码在硬件板“YRPBRL78G13”上运行测试结果如下,执行正确。

瑞萨瑞萨

 

1

END

1

 

往期推荐

 

1

关于RL78/G13系列R5F100BEANA产品ADC采集误差过大的问题

 

2

RL78/G23系列单片机Flash操作库RFD Type01的使用(一)安装篇

 

3

如何使用RL78/G23 DataFlash FDL库

 

瑞萨电子 (TSE: 6723) 

科技让生活更轻松,致力于打造更安全、更智能、可持续发展的未来。作为全球微控制器供应商,瑞萨电子融合了在嵌入式处理、模拟、电源及连接方面的专业知识,提供完整的半导体解决方案。成功产品组合加速汽车、工业、基础设施及物联网应用上市,赋能数十亿联网智能设备改善人们的工作和生活方式。

更多信息,敬请访问renesas.com

 


原文标题:RL78系列MCU Data Flash使用介绍

文章出处:【微信公众号:瑞萨MCU小百科】欢迎添加关注!文章转载请注明出处。


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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分