My Blog! blog.gkong.com   

Tip of my blog

新年快乐!


阅读(4631) 评论(0)
标签(TAG):

成功恢复AVR Jtag ICE笔记(qzm 完全原创12/08/08)

问题提出:
www.ouravr.com处买的Avr Jtag ICE用了两年多,突然连接不上了,Check后发现是Atmega16中的程序被冲坏了,由于手上正好有10多片的Atmega16,于是打算用一片全新的Atmega16(贴片)来代换。

问题分析:
分析了一下在www.ouravr.com购买的Avr-Jtag ICE,有一个用来

下载用的Jtag接口(晕,不是ISP),也就是说只能通过另一个好的

Jtag-ICE来对该Jtag ICE(坏的)烧写入一个包含支持avr prog

bootloader。之后再用Avr Prog程序升级该坏了的Jtag-ICE以支持

当前使用的"AVR STudio IDE"。


avr prog)


问题解决过程:

1、用实验板按电路图(Schematic of JTAG interface for AVR.JPG)搭建一个最简Jtag平台(一定要用7.3728MHz的晶振、并要特别关注连接到目标板Jtag口的线尽量集中在一起,拉散的话,由于分布电容的影响,通信不稳定。(如下图)

2、然后用ISPavrboot.rar中的"avrboot.hex下载到实验板上的Atmega16上.
Note1:请参照下面的介绍做(Important: JP1 jumper must be short-circuited in position 1-2, this way CPU jumps to bootloader, else (2-3 position) normal code (not bootloader) is executedImportant: JP1 jumper must be short-circuited in position 1-2, this way CPU jumps to bootloader, else (2-3 position) normal code (not bootloader) is executed)
Note2: JTAG for AVR processors Aquaticus ROV.rar (说明搭建JTAG-ICE的细节)

3、联接实验板上的串口到PC(端口号最好为Com1 or Com2)

4、启动Avr Studio 打开 Avr Prog
按Flash -> Program ,这样,就在实验板上搭建好了一个 Avr Jtag-Ice。

5、用在实验板上搭的Jtag-ICE 烧写BootAtmega167.3728MHzAvrJtagICESuccess.rar 入 待修复的JTAG-ICE上。把串口线从实验板上拨出插到等修复的JTAG-ICE串口上,接上Jtag-ICE的USB口以得到电源、会发现“红LED”在快速闪烁(说明Jtag-ICE在等待AVR Studio 通过AVvr Prog 程序的握手信号。

6、运行AVRprog,Jtag-ICE上的红LED会灭(说明已和Avr Prog

同步成功了!!!),这时会出现"AVRprog窗口",按Flash-

>Program然后等待(会有1分钟左右),成功校验后显示5秒左右

的提示升级成功提示。

备注:上面都没有说熔丝位的烧写,在这里补充一下,如下图所示:


"图A"中是烧写坏的Jtag-ICE的熔丝位设置,而通过ISP烧写实验板上Atmega16的熔丝位的要选中“BOOTRST”,这是维一的区别。

2008年9月20日再次不能认JTAG,修复的补充如下:

(1)烧试验板的JTAG时的熔丝位设置如下:

选择 OCDEN 、JTAGEN、SPIEN、CKOPT(一定要选,不然AVR Prog ...不认)其他的无所谓。

(2)这次按上次修复的步骤不成功,在AVR Prog...更新的过程电脑死机。

(3)把之前修复的JTAG COPY出来的hex(阿莫JtagICE4.14(最新版2008年8月13日).rar)通过试验板烧入阿莫JTAG即完成修复。

(4)在更新试验板JTAG时要注意以下几点:

A  用ISP写avrboot.hex
B  在用双龙的ISP加载hex之前要选择空闲的Atmega16 FLASH的覆盖内容,有FF、00,或不更改,一定要选00,不然,AVR Prog... 过程中,FLASH成功,但校验失败,原因应该是用FF覆盖Atmega16 FLASH,和AVR Prog...的校验算法有冲突所致!

2008年11月21日新增补充:修复OurAvrJTAG在实验板搭的JTAG程序.rar
最近在阿莫处买的简易版JTAG ICE 老是让电脑主机死机,和ICE中的程序常常由于干扰而被破坏,分析原因是由于该JTAG ICE的接口电路部分设计得不好,在干扰比较大的环境下不稳定;由于现在的项目和将来的项目都转移到ARM 7,和Cotrex-M3核,AVR将只用于维护之前的项目。也不准备再买原装的JTAG了。不过在做小项目时8位AVR单片机还是很好用的,32位的AVR也出来了有时间要试下。

2009年8月11日新增补充:写JTAG的熔丝时要严格按照图A的设置.才能使JTAG正常工作,JTAG正常时状态为:通电红灯和绿灯都亮.如果红灯灭,很有可能是熔丝位中的"BOOT RST"被选中.

by 进化中的兔子 发表于:2008/8/13 16:15:03
My subject | 我的主题

New entries | 新发表

Messages Board | 留言板


Guest Comments | 新评注


Blogger Login | 登陆栏
Blog Infomation | 信息栏
博客名称:嵌入式系统&虚拟仪器 日志总数:450 评论数量:277 访问次数:1781235 建立时间::2005年10月25日
Blog Infomation | 搜索栏
Blog Infomation | 收藏栏

XML RSS 2.0

嵌入式系统&虚拟仪器
© COPYRIGHT 2004 ALL RIGHTS RESERVED http://www.gkong.com

中华工控网 | 联系我们 | 工控论坛首页 | 工控博客首页 | 博客注册 | 博客登陆

工控博客管理联系邮箱:工控博客服务邮箱

中华工控网 © Copyright 2013. All rights reserved.