Part Number: TMS320F2806
Hi Champ,
I am asking for the customer.
Customers use TMS320F2806.
Customer has developed a CAN-based bootloader program under CCS3.3 before, and there is no problem in using it under CCS3.3. But now it is found that the bootloader program cannot be run in CCS10.4. Through debugging, the customer locates that the problem is the call of flash_erase. Once flash_erase is added to the project, it will be found that there is no data in CAN, and it can be run by deleting the flash_erase (but it is not the function that the customer wants to achieve, customer need flash_erase).

So customer want to know:
①The customer did not modify the code, why can't the code of CCS3.3 run in CCS10.4? Does it need to modify the code when porting the code from CCS3.3 to CCS10.4?
②Why only flash_erase() will cause the problem? What is the difference between CCS10.4 and CCS3.3 calling it?
③The customer tries to use CCS3.3 to program the bootloader, and then uses CCS10.4 to program the .out file with host computer. If this is done, the program will not report an error, but after running the program, it is found that there is a problem with the function implementation of the program. So it looks still wrong.
In addition, after checking the .a00 file generated by debugging the .out file with the host computer, we found that the files generated by CCS3.3 and CCS10.4 are different, and the location of the programmed section is different in the two files. Does this mean that the sequence of programming sections is different when the host computer writes the .out file?
Could you please kindly give some advice on this case? Thanks!
Best regards,
Julia