2022-01-23 07:11 PM
I'm making a bootloader. Need a checksum calculation
Connected to stm32cubeide Srecord to receive CRC.
Sprecord works according to the following script:
# srec_cat command file: srec_crc_dump_to_file.txt
#===============================================
#-disable-sequence-warning
#Input file
PLK.hex -Intel
#Fill hole with 0xFF
-fill 0xFF 0x8000000 0x08040000
#CRC Algorithm at given address
-STM32 0x08040000
#-crop 0x08040000 0x08040004
-Output_Block_Size=16
#Produce output
-o PLK_SRECORD.hex -Intel
After executing the script, I get a warning from S record:
srec_cat: PLK.hex: 47492: warning: The data presented for STM32 calculation has
at least one hole in it. This is bad. It means that the in-memory
calculation performed by your embedded system will be different than the
calculation performed here. You are strongly advised to use the "--fill 0xFF
--over <inoput>" filter *before* the STM32 filter to ensure both
calculations are using the same byte values. See srec_info(1) for how to see
the holes.
I ask for help