ATXmega更换保险丝

时间:2013-06-02 20:24:57

标签: avr avrdude

我有 ATXMEGAA3BU 处理器,我在MacOS上使用 CrossPack 。我想使用我的旧USBASP pragrammer进行“配置”,通过PDI接口对CPU进行编程 - 这不是问题。 问题是我不知道如何在这个ATXmega上设置FUSES。

对于像ATMega8这样的普通CPU, Make 文件中的序列很简单。
只需使用: FUSES = -U hfuse:w:0xd9:m -U lfuse:瓦特:0X24:米
但是Xmega有五个FUSEBYTES,我对它们有问题...所以简单的问题是“如何将JTAGEN从0改为1”?它位于FUSEBYTE4的第0位。如何告诉CrossPack(avr-dude)改变这个或其他来自例如FUSEBYTE0?

谢谢...

3 个答案:

答案 0 :(得分:0)

也许这与Robotics StackExchange有关。 但我会在这里回答。

如果您可以切换到窗口,使用CodevisionAVR可以很容易地完成保险丝位改变进度。只需点击一下即可完成。并且它没有这个终端命令的麻烦。

答案 1 :(得分:0)

请参阅xmega a3bu的数据表:http://www.atmel.com/Images/Atmel-8331-8-and-16-bit-AVR-Microcontroller-XMEGA-AU_Manual.pdf

保险丝字节的名称为:FUSEBYTE0,FUSEBYTE1,... FUSEBYTE5。没有FUSEBYTE3。你试过吗

-U fusebyte0:w:0xd9:m -U fusebyte1:w:0x24:m -U fusebyte2:w:0x24:m,依此类推。在计算熔丝位和锁定位时,你可以给它一个运动预防措施。

答案 2 :(得分:0)

我知道OP可能为时已晚,但对于遇到此问题的其他人(比如我),您也可以添加

FUSES =
{
    0x00,//sets jtag address
    0xAA,//fuse byte 1
    0x9D,//f byte 2
    0x00,//unused
    0xDE,//f byte 4
    0x1E //f byte 5
};

到main.c文件的顶部,编译器/程序员将负责闪烁它们。

在xmegaA4上测试。