这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 综合技术» 基础知识» JTAG 有关JTAG使能熔丝的问题

共2条 1/1 1 跳转至

JTAG 有关JTAG使能熔丝的问题

院士
2006-09-17 18:14:16 打赏
JTAG 有关JTAG使能熔丝的问题



关键词: 有关 使能 熔丝 问题

院士
2006-12-22 22:43:00 打赏
2楼
问 ATmeg16 单片机,用 JTAG仿真器, JTAG的4根数据线TCK、TMS、TDI、TDO
接于 单片机的PC2-PC5上
当线路中要用到PC2-PC5作为一般的I/O口使用时,应如何处理?
资料上说:将MCUCSR的最高位JTD置‘1’即可屏蔽 JTAG的数据口,作为一般的 I/O口使用。我试过了,但是软件在置JTD的同时将 JTAG仿真使能的熔丝也去掉了。不知是何原因?
JTAG仿真使能的熔丝的恢复是否只能通过另一种方式烧入? 1: JTAG使能熔丝问题已经解决!关于 JTAG仿真使能熔丝的问题,通过一个晚上的摸索试验终于搞清楚了其中的来龙去脉,现将 JTAG仿真的注意事项列举如下:
(所列的事项在ATmeg16上试验完全通过)
以下资料仅供参考,还请大家多多补充完善!

JTAG仿真注意事项(ATmeg16)

JTAG仿真器在载入*.cof文件的同时已经将程序烧入到 单片机中。

要想用 JTAG进行在线仿真或编程下载,必须在 AVRStudio中将 JTAGICE中的Fuses选项中的On-Chip Debug Enable和 JTAGInterface Enable两项熔丝选中(出厂默认选中),并且MCUCSR中的最高位JTD( JTAGDisable)必须为“0”。

JTAGInterface Enable选中后,与 JTAG的TDI、TDO、TMS、TCK 4根线相连的 单片机口线PC5、PC4、PC3、PC2就不能作为一般的I/O口线来使用。

要想将以上4个PC口也作为一般的I/O口使用,该怎么办?

办法是:在程序的初始化中连续2次将MCUCSR的最高位JTD置“1”,这样当程序执行时即可将On-Chip Debug Enable和 JTAGInterface Enable两项熔丝不选中。此时(PC2-PC5)就可以作为一般的I/O口线来使用。

如何将 JTAGInterface Enable的熔丝烧回呢?

方法一:
可以通过烧写器中的Fuses配置重新将On-Chip Debug Enable和 JTAGInterface Enable两项的熔丝烧回

方法二:
可以通过 JTAG仿真器将熔丝烧回。此时必须借助 单片机的外部复位键,并且要确保 JTAG的6脚 nSRST与 单片机的RST脚(复位脚)相连。

具体的做法是:
在载入*.cof文件的同时按住外部复位键不放直到整个cof文件完全载入。此时 JTAG仿真器已经把你的程序烧入到 单片机中。但是熔丝位是否已经恢复了呢?

不一定!请注意以下两点:
1. 当所烧的程序中含有将MCUCSR中的JTD位置“1”的操作时, JTAG仿真熔丝无法恢复,
JTAGInterface Enable的熔丝无法烧回。程序可以仿真调试,但必须单步执行JTD置“1”的语句(MCUCSR|=0x80)。

2. 当所烧的程序中不含将MCUCSR中的JTD位置“1”的操作时, JTAG仿真熔丝可以恢复,
JTAGInterface Enable的熔丝可以烧回。程序可以仿真调试。

2: 谢谢小二,解决了一个我没有解决的问题。 3: 128有效么? 4: 小二,真牛.我说我的PC5、PC4、PC3、PC2怎么不好使呢.肯定是熔丝问题.
5: 获益匪浅 6: good

共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]