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
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.
- 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.
- 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.21 MB 日本語 | |
Application Note | PDF 599 KB 日本語 | |
2 items
|
Design & Development
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.30 - 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.20 - Sample Code (ZIP)
Target Devices
RX Family