I have a hex file which I get from go configure to ,I want to read the hex file parse the needed bits and store it as a nvmstring and to display it.how could I make my mcu to read the hex file and process it.
data in my hex file::10000000000000000000000000E8AF010000000058:100010000018C6FF4B1000180000000040E78111D7:100020006900000000000000000000000000400324:10003000000D003000000000006C0B00060000C046:100040000F001A0000002000000000000000000067:100050000000001700000007000800000001006019:100060000043030000003000003030304004000046:10007000000000427008040242000000000000007E:10008000000026001F001E000000000000004000CD:100090000000300000000000000009005D000000CA:1000A000007F600000000000000000000000000071:1000B000000000000000043000000000000000000C:1000C0000000000000000000000000000000000030:1000D00000000000000000000000000000000EA171:1000E000BC948522220F22361236878686868D8D15:1000F0008C8D83008300005A00000000000002A5E0:00000001FF
wanna read ,parse,store it like
const char nvmString0[] = "0070FC000000000000E8AF0100000000";
const char nvmString1[] = "0018C6FF4B1000180000000040E78111";
const char nvmString2[] = "69000000000000000000000000004003";
const char nvmString3[] = "000D003000000000006C0B00060000C0";
const char nvmString4[] = "0F001A00000020000000000000000000";
const char nvmString5[] = "00000017000000070008000000010060";
const char nvmString6[] = "00430300000000000030303040040000";
const char nvmString7[] = "00000042700804024200000000000000";
const char nvmString8[] = "000026001F001E000000000000004000";
const char nvmString9[] = "0000300000000000000009005D000000";
const char nvmString10[] = "00336400000000000000000000000000";
const char nvmString11[] = "00000000000002300000000000000000";
const char nvmString12[] = "00000000000000000000000000000000";
const char nvmString13[] = "00000000000000000000000000000EA1";
const char nvmString14[] = "BC948522220F22361236878686868D8D";
const char nvmString15[] = "8C8D83008300005A00000000000002A5";
want to automate this process so that i dont need to do it manuall yeach time.
Hello,
Thanks for reaching out Renesas Engineering Community.
As far I can understand your requirement is to be able to use a file system to make some basic file reading operation like reading the hex file you want to parse with code that runs on your MCU.
Now regarding the memory size on the available internal memories of the MCU you are referring , please let me inform you that the RA0E1:
Comes with 64KB or 32KB of Code Flash depending the part number and the specific package you are using.
Comes with 12KB of RAM memory (SRAM)
And 1KB of data flash.
These are the sizes of the internal memories available on RA0E1.
Unfortunately the RA0E1 doesn't come with a USB peripheral like other RA MCUs to be able to configure it as HMSC and use one of the available file systems integrated in FSP like FreeRTOS+FAT to make basic file operations.
And also doesn't have a QSPI interface to be able use an external memory like QSPI flash memory.
If you go to FSP Configurator and check all the available options for storage you will see that there are two stacks and support for LittleFS and FreeRTOS+FAT file systems.
For the FreeRTOS+FAT stack a port has been done in FSP which requires a lower level memory implementation.
The Block Media RAM uses the internal SRAM available on RA MCUs. However it requires to have a device on which you can allocate at lest 20KB of RAM memory as media area. And RA0E1 has total SRAM memory size 12KB, so you can understand that it cannot be used in your case.
And for the Arm LittleFS file system a port has been implemented and a middleware is provided that has dependency with the flash memory of the MCU.
Could you please also specify what is the total size of the hex file you are mentioning? And in general provide us more information. Do you want to parse the hex file already flashed in the MCU or another one?
Now regarding the parser I am sorry but is not something related with FSP or RA MCUs to provide you an official solution from us.
However if you search you will find plenty github repos with hex parsers.
Here is one of them: https://github.com/sfyip/Intel-HEX-file-parser
Hope it helps.
Best Regards,
IK