2014-11-22 73 views
0

我目前通过USB微型编程器和ISP接口通过Atmega 168A微控制器进行编程。Atmega 168A usb微型熔丝编程

微控制器设置有外部振荡器,外部人员通过编程使用相应的保险丝来帮助我。问题是我不小心清除了保险丝,并且知道avrdude无法与微控制器通信。

每次我试图程序中,我得到的错误:

avrdude: initialization failed, rc=-1 
     Double check connections and try again, or use -F to override 
     this check. 

所有连接是否正确。

我正在Mac上安装Crosspack-AVR和Eclipse的AVR插件。我怎样才能恢复与硬件的沟通?

+0

如果更改时钟保险丝,您可能需要从外部振荡器注入时钟并降低波特率(程序员可能不支持)。如果你改变了重置,你需要一个高电压编程器。购买新芯片也是一种选择。 – 2014-11-22 15:54:39

回答

0

取决于您写入保险丝的值。如果您禁用了外部复位引脚(RSTDISBL)或串行编程接口(SPIEN),则只能使用“高电压”(高电平表示12V :-)编程。你可能会寻找一个有能力的程序员(例如AVR龙)。

如果你“刚”搞砸了时钟设置,你可以给XTAL1引脚提供一个时钟信号,并尝试连接你的ISP编程器。您应该增加位持续时间以减慢编程速度(我认为它是-B4选项)

如果设置了锁定位,您可能会永远陷入困境。

如果你编程熔丝总是记住,物理0意味着编程和1意味着未编程。这些工具与此不一致。有些可能会显示复选标记,如果它被逻辑设置(编程=物理0),一些显示物理数据。

如果您使用avr老兄。我建议使用AVR8 Burn-O-Mat,它具有适合许多AVR8类型的保险丝设置的体面GUI。