用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如

时间:2023-02-20 13:25:07
用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 
能正常擦除,下载编程时就出现这个提示
用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如

8 个解决方案

#1


程序编译不对,是INTEL 的 HEX 格式?

#2


FLASH的编程算法设置的不正确 或者是没有选择正确的型号

#3


引用 1 楼 hualude_lzx 的回复:
程序编译不对,是INTEL 的 HEX 格式?

用的是keil编译的,就是在output选项里点选的产生HEX文件。。。
不太懂你说的意思,我应该怎么产生可执行文件呢?谢谢

#4


引用 2 楼 woshi_ziyu 的回复:
FLASH的编程算法设置的不正确 或者是没有选择正确的型号

芯片型号选择对的,flash编程怎么设置芯片是LPC1768的

#5


发现这里的人水平好低

#6


the first 8 dwords sum is zero means a valid arm image 

#7


查了一下手册:
Criterion for valid user code 
The reserved Cortex-M exception vector location 7 (offset 0x 001C in the vector table) should 
contain the 2’s complement of the check-sum of table entries 0 through 6. This causes the 
checksum of the first 8 table entries to be 0. The boot loader code checksums the first 8 
locations in sector 0 of the flash. If the result is 0, then execution control is transferred to the 
user code. 
If the signature is not valid, the auto-baud routine synchronizes with the host via serial port 0 
or boots from the USB port (PIO0_3 is sampled high). 


Due to the CPU requirements winIDEA extracts the necessary interrupt vectors from the 
download file before programming a 32-bit value to the 0x1C address, makes the 2’s 
complement of the check-sum of these vectors and programs the calculated value to the 
0x1C address. This yields the CPU starting from the user code after the reset. 
Consequentially when ‘Verify download’ is configured it’s executed after the debug download 
and the user would normally get error at address 0x1C since the programmed value doesn’t 
match with the one in the download file. The user can ignore this error or adjust his download 
file in a way that a 32-bit value at the address 0x1C contains proper value, which results in 
the CPU start executing the user code after the reset. The alternative is also to skip verifying 
4 bytes at address 0x1C. Below picture shows the necessary setting in the Download dialog. 

#8


用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如

用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如

#1


程序编译不对,是INTEL 的 HEX 格式?

#2


FLASH的编程算法设置的不正确 或者是没有选择正确的型号

#3


引用 1 楼 hualude_lzx 的回复:
程序编译不对,是INTEL 的 HEX 格式?

用的是keil编译的,就是在output选项里点选的产生HEX文件。。。
不太懂你说的意思,我应该怎么产生可执行文件呢?谢谢

#4


引用 2 楼 woshi_ziyu 的回复:
FLASH的编程算法设置的不正确 或者是没有选择正确的型号

芯片型号选择对的,flash编程怎么设置芯片是LPC1768的

#5


发现这里的人水平好低

#6


the first 8 dwords sum is zero means a valid arm image 

#7


查了一下手册:
Criterion for valid user code 
The reserved Cortex-M exception vector location 7 (offset 0x 001C in the vector table) should 
contain the 2’s complement of the check-sum of table entries 0 through 6. This causes the 
checksum of the first 8 table entries to be 0. The boot loader code checksums the first 8 
locations in sector 0 of the flash. If the result is 0, then execution control is transferred to the 
user code. 
If the signature is not valid, the auto-baud routine synchronizes with the host via serial port 0 
or boots from the USB port (PIO0_3 is sampled high). 


Due to the CPU requirements winIDEA extracts the necessary interrupt vectors from the 
download file before programming a 32-bit value to the 0x1C address, makes the 2’s 
complement of the check-sum of these vectors and programs the calculated value to the 
0x1C address. This yields the CPU starting from the user code after the reset. 
Consequentially when ‘Verify download’ is configured it’s executed after the debug download 
and the user would normally get error at address 0x1C since the programmed value doesn’t 
match with the one in the download file. The user can ignore this error or adjust his download 
file in a way that a 32-bit value at the address 0x1C contains proper value, which results in 
the CPU start executing the user code after the reset. The alternative is also to skip verifying 
4 bytes at address 0x1C. Below picture shows the necessary setting in the Download dialog. 

#8


用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如

用J_Flash Arm烧写程序时,提示,your program data does not contain a vaild checksum...... 如