Check the address range for which to calculate a checksum.Specify where the checksum value will be stored.There are two requirements that you must fulfill to make ielftool.exe generate a correct checksum: End address: 0xFFFB(adjust to your application)įulfil the requirements to generate a correct checksum.Start address: 0x0(adjust to your application).Fill pattern: 0xFF (can be any pattern).The settings used in the example projects are: In the IAR Embedded Workbench IDE, set options on the page Project> Options> Linker> Checksum. Selecting options for the checksum calculation in ielftool Make the call with the value 0x00 and the same number of bytes as the size (1, 2 or 4 bytes) of the checksum. If the slow calculation is used, your source must make an extra and final call to the slow checksum calculation.One approach is to store the checksum at the beginning or end of memory, as that makes it easier to setup the address-range correctly.So the address-range (for 1, 2 or 4 bytes) where the checksum is stored must be excluded from the checksum calculation. The checksum calculation must not (in order to work) be made over the bytes where the checksum is stored in memory.Important notes on the checksum calculation algorithm in the application Slow - It uses less ROM/flash memory (but has a longer execution time).Fast - Short execution time (uses more ROM/flash memory for a constant table).There are two variants of the calculation: In the application you must add the CRC16 source for checksum calculation. The example projects show how to use the CRC16 checksum calculation. The string '_checksum' was not found in the string table. Note: If your application source doesn't use the symbol _checksumyou will get an error message from ielftool.exe:.Make sure that your application source uses the symbol _checksum.You must consider the following actions when adding the CRC16 source: Including and using the CRC16 source for checksum calculation in the application It has read-only memory in the address-range of 0x0000to 0xFFFF. ![]() ![]() Selecting the Checksum options in the IAR Embedded Workbench IDE.įor the rest of the text in this technical note it will be assumed that:.Including and using the CRC16 source of checksum calculation in the application.Starting to use CRC16 checksum calculation implies these basic actions: The description below describes the basic actions needed to use the CRC16 checksum calculation in the application. This technical note applies to the IAR Systems products that use the ILINK linker.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |