CRC flash in Kinetics parts

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CRC flash in Kinetics parts

Jump to solution
996 Views
barbercolman
Contributor III

Looking for how to generate a CRC32 for Kinetics parts using CW 10.Xl preferably 10.3. As part of this I am also looking for verifying the CRC on startup. I have found information and flash size in the lcf files, but not about automatically generating a CRC and including it in the S19.

Labels (1)
0 Kudos
1 Solution
472 Views
p_vagnoni
Contributor III

Hello Dale,

I had same problem and after many hours I disclaimed. Also after some my personal test on the firmware updating by USB download I found this particular behaviour that could be a problem if you find a solution on your problem:

I am using a Kinetis K60 (MK60DN512ZVLQ10) and CW10.3 Beta (is the same with 10.3) with the USB Multilink Universal.

After compile the project I have also the "project.s19" file and I convert it to a binary file (this is the format i choose to copy on my USB Device) filling the unused location with 0xFF (as i especting to find in the unused flash memory), but comparing the binary file with the memoryes inside the Microcontroller there is a difference on the addresses 0x000003FC

Multilink download.jpg

there is 0xFFFF007E  instead of 0xFFFFFFFF (the locations are not used in the project and so are filled into 0xFF) as in the binary file of the project:(see above)

binary file.jpg

Also if I update my firmware during debug with the USB device the debug restart with the 0xFFFFFFFF values and it seems ok.

I think that if you calculate CRC from linker it will be different after first debug download unless you exclude this locations.

An option could be to write the CRC if you find 0xFFFFFFFF inside the CRC locations (after first programming) so you can avoid debug problems and can check the CRC from the second starting of Software.

Hope this help you in some way.

Bye,

Paolo

View solution in original post

0 Kudos
1 Reply
473 Views
p_vagnoni
Contributor III

Hello Dale,

I had same problem and after many hours I disclaimed. Also after some my personal test on the firmware updating by USB download I found this particular behaviour that could be a problem if you find a solution on your problem:

I am using a Kinetis K60 (MK60DN512ZVLQ10) and CW10.3 Beta (is the same with 10.3) with the USB Multilink Universal.

After compile the project I have also the "project.s19" file and I convert it to a binary file (this is the format i choose to copy on my USB Device) filling the unused location with 0xFF (as i especting to find in the unused flash memory), but comparing the binary file with the memoryes inside the Microcontroller there is a difference on the addresses 0x000003FC

Multilink download.jpg

there is 0xFFFF007E  instead of 0xFFFFFFFF (the locations are not used in the project and so are filled into 0xFF) as in the binary file of the project:(see above)

binary file.jpg

Also if I update my firmware during debug with the USB device the debug restart with the 0xFFFFFFFF values and it seems ok.

I think that if you calculate CRC from linker it will be different after first debug download unless you exclude this locations.

An option could be to write the CRC if you find 0xFFFFFFFF inside the CRC locations (after first programming) so you can avoid debug problems and can check the CRC from the second starting of Software.

Hope this help you in some way.

Bye,

Paolo

0 Kudos