shuipaopao 发表于 2016-10-18 11:04:40

用USBASP下载程序超过64KB,地址校验错误是怎么回事?

用USBASP下载程序,固件版本2009-02-28,程序超过64kB时,FLASH校验错误地址0h 是怎么回事

hdxet 发表于 2016-10-18 14:48:50

用progisp下载有这个问题,用双龙或AVR_fighter下载就没事了,再就是选上芯片擦除选项

shuipaopao 发表于 2016-10-18 15:45:11

hdxet 发表于 2016-10-18 14:48
用progisp下载有这个问题,用双龙或AVR_fighter下载就没事了,再就是选上芯片擦除选项 ...

选上芯片擦除也没用,程序看见能烧进去,校验就出错,单片机不能运行。

duxingkei 发表于 2016-10-18 15:47:59

单片机不能运行。肯定没烧进去啊或者配置字没烧进去啊
可能是你从上位机看到进度条好像烧进去了吧

t3486784401 发表于 2016-10-18 17:27:55

1. 你的HEX文件正确么?超过64K有时候编译器也会抽风,建议HEX传上来看看;

2. 片子型号选对了么?别需要 M128 实际(或下载软件BUG)按 M64 走的啊;

3. 0H 地址错误,说明很可能 64K 的位置重新写到了 0H 的地方,建议把写完的 FLASH 读下来,WinHex 看看是否如此

zxq6 发表于 2016-10-18 17:43:36

曾经usbasp报过这种故障,因为16bit地址范围导致的。因为我的使用环境木有大于64k的情况,就没有怎么关注。。

shuipaopao 发表于 2016-10-19 14:01:31

duxingkei 发表于 2016-10-18 15:47
单片机不能运行。肯定没烧进去啊或者配置字没烧进去啊
可能是你从上位机看到进度条好像烧进去了吧 ...

看进度条确实是烧写完了,但是进行校验的时候停在0h处。我用的USBASP是公版电路,atmega8的芯片。

shuipaopao 发表于 2016-10-19 14:03:40

t3486784401 发表于 2016-10-18 17:27
1. 你的HEX文件正确么?超过64K有时候编译器也会抽风,建议HEX传上来看看;

2. 片子型号选对了么?别需要...

HEX文件是正确的,这是产品批量程序,用的主控芯片是Atmega128a,不存在HEX文件不正确之说。

shuipaopao 发表于 2016-10-19 14:09:00

zxq6 发表于 2016-10-18 17:43
曾经usbasp报过这种故障,因为16bit地址范围导致的。因为我的使用环境木有大于64k的情况,就没有怎么关注。 ...

确实挺郁闷的,芯片ATmega128A超过64k了,能烧程序就是校验不行,不知是固件问题还是烧写软件问题。烧写软件用Progisp1.72,也不行。

shuipaopao 发表于 2016-10-19 14:14:27

t3486784401 发表于 2016-10-18 17:27
1. 你的HEX文件正确么?超过64K有时候编译器也会抽风,建议HEX传上来看看;

2. 片子型号选对了么?别需要...

3. 0H 地址错误,说明很可能 64K 的位置重新写到了 0H 的地方。这种问题是固件问题还是烧写软件的问题。固件我用的是2009.08.28版本的,电路是公版电路,烧写软件是progisp 1.72.操作系统是win7 64位。USBASP驱动也是烧写软件内自带的。

airbox 发表于 2016-10-19 14:34:36

shuipaopao 发表于 2016-10-19 14:09
确实挺郁闷的,芯片ATmega128A超过64k了,能烧程序就是校验不行,不知是固件问题还是烧写软件问题。烧写 ...

Progisp不行的,新版的好像对usbasp做了限制,超过32K的程序烧写就不对
用avrdude试试,不过是命令行的

另外早期版本的固件是有64K的bug,后来修复了,升级到最新版本试试

hdxet 发表于 2016-10-19 16:09:44

shuipaopao 发表于 2016-10-19 14:14
3. 0H 地址错误,说明很可能 64K 的位置重新写到了 0H 的地方。这种问题是固件问题还是烧写软件的问题。 ...

没看懂我前面说的是什么?

t3486784401 发表于 2016-10-21 02:30:55

shuipaopao 发表于 2016-10-19 14:14
3. 0H 地址错误,说明很可能 64K 的位置重新写到了 0H 的地方。这种问题是固件问题还是烧写软件的问题。 ...

我 win8, x64 的系统,运行 progisp v1.6.6 可以正确打开烧写长度 >64KB 的 HEX 文件,目测上位机软件的问题不大,很可能是固件的问题

duxingkei 发表于 2016-10-21 16:49:50

建议直接找zhifeng progisp 的作者买ISP烧写器,毕竟就几十块钱,就解决了。

想折腾的话,看你试试把hex转成bin文件,然后烧写试试?

jetta2014 发表于 2016-10-24 13:19:37

这个问题几年前遇到过,后来用avr studio4 + 山寨stk500 avr isp搞定,网上有得卖的,几十元搞定。
页: [1]
查看完整版本: 用USBASP下载程序超过64KB,地址校验错误是怎么回事?