Overview

Description

Data Flash Driver for RX Family

M3S-DATFRX (DATFRX) is a block-type device driver for handling storage in the flash memory (data flash) embedded in RX-family MCUs. Data can be updated or read by calling user API functions of the data management driver. The data management driver eases the construction of data management systems that use the flash memory (data flash).

Components

  • Driver software for managing data(Source file for RX family)
  • Sample program (Project for e2 studio)
  • Application note
Image
Modular Composition
Modular Composition

Features

  • Supports Firmware Integration Technology (FIT).
  • Handles the management of data in the data flash memory area.
  • API calls can be used to update and read data associated with user-specified data numbers.
  • The data to be updated or read are managed with assigned logical data numbers. You can configure the number of data and the data size for each data number.
  • During processing to update data, data are written to empty space in the target block.
  • In the case where a block in which data are being updated runs out of empty space, the valid data within the block are copied to another block. Through processing for block erasure, blocks which hold old data that are no longer required after updating of data are erased.
  • In cases where power is cut off or a reset is applied during processing to update data, the cutoff or reset will be detected by running of the initialization function following the restart. The data are judged for validity according to the condition of the updated data. If the data are not valid, they will be returned to the state that preceded updating. 1
    • 1. Return of the data to its state before the start of processing for updating by initialization processing is not certain. This depends on the timing with which power was cut off or a reset applied during data updating. Re-update the data immediately after the initialization function has run to make sure the data are the latest.
  • In cases where power is cut off or a reset is applied during processing for block erasure, the cutoff or reset which occur while erasing the blocks being managed will be detected by running of the initialization function following the restart. If a block is judged to be invalid, it will be returned to the state that preceded the attempt at erasure. 2
    • 2. Judgment regarding a block might be mistaken. This depends on the timing with which power was cut off or a reset applied during block erasure, since the condition of the block that was being erased at that point is not certain at the time of initialization processing. Thus, a case of one of the following types might arise.
      • Updating of data after the power was cut off or a reset applied during block erasure is not possible.
      • Old data are wrongly judged to be the latest data.
      • The latest data cannot be detected.
  • User programs which are assigned to RAM or external memory can be run while executing data programming or block erasure commands for the code flash area in which data are being managed.
  • User programs which are assigned to RAM, ROM, or external memory can be run while executing data programming or block erasure commands for the data flash area in which data are being managed.
  • Support for operation using either big-endian or little-endian byte order.

Release Information

Latest Ver.: V2.01 Release00
Released: Feb. 20, 2019
Operating Environment
Obtaining the Product

Target Devices

Documentation

Type Title Date
Application Note PDF 2.19 MB 日本語
Application Note PDF 612 KB 日本語
2 items

Design & Development

Sample Code

Additional Details

functions

Function Name Description
R_FLASH_DM_Open() DATFRX open processing
R_FLASH_DM_Close() DATFRX close processing
R_FLASH_DM_Init() Initialization processing (divided)
R_FLASH_DM_InitAdvance() Continuation of initialization processing (divided)
R_FLASH_DM_Format() Format processing
R_FLASH_DM_Read() Data read processing
R_FLASH_DM_Write() Data update processing
R_FLASH_DM_Erase() Block erase processing
R_FLASH_DM_Reclaim() Reclaim processing
R_FLASH_DM_Control() State check processing
R_FLASH_DM_GetVersion() Version acquisition

Operating Environment

The sizes taken up in ROM and RAM are estimates. They depend on the version of the driver and compiler in use.
For details, refer to the application notes for this product.

Applicable Compiler C/C++ Compiler Package for RX Family V.3.00.00 or later
Memory Sizes In the case of RX231
ROM 5039 bytes+ (4 bytes × n Number of blocks) + (2 bytes × m Number of management data)
RAM33 bytes+ (4 bytes × n Number of blocks) + (2 bytes × m Number of management data)
In the case of RX66T
ROM 4999 bytes
RAM 18 bytes + (3 bytes × n Number of blocks)

Obtaining the Product

Download: RX Family Flash Memory Data Management Module Using Firmware Integration Technology Rev.2.20 - Sample Code (ZIP)

Related Software

The flash FIT module, separate lower-layer software for controlling the flash memory of your specific MCU, is available.

Download: RX Family Flash Module Using Firmware Integration Technology Rev.5.12 - Sample Code (ZIP)

Target Devices

RX Family