AVRISPmkII连接状态:未知状态0x00

解决方案:请参阅下面的答案

那么..我一直在网上搜索很多角落..但我找不到解决我的问题。 上次我使用我的AVRISP2它工作得很好。 现在,当我尝试在uC上编写我的程序时,我收到以下消息:

avrdude: stk500v2_command(): command failed
avrdude: stk500v2_program_enable(): bad AVRISPmkII connection status: Unknown status 0x00
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.

我在互联网上发现了很多帖子,但没有任何解决方案。 有谁知道这个问题可能会是什么?

我已经检查了引脚,我更新了ISP的固件(blinkdemo works)。

谢谢你的提示..


我和我的一些朋友花了很多时间,但经过几个小时的搜索,尝试和“调试”,我们才解决了这个问题。 我希望这可以帮助其他遇到同样问题的人解决问题。

问题在于,在我的情况下,USB-Prog 3.3的ISP 速度太快 ,而我的Atmega8 速度太快 ,只能以1MHz的速度运行。 所以有两种可能的解决方案:

  • 减慢ISP的速度
  • 加快Atmega8的速度
  • 我在某处发现红色,ISP的速度不得低于下层微控制器的速度的1/4。

    以下几行保存了我的一天:

    它将Atmega8设置为8MHz,并使其达到64ms以启动该频率。

    avrdude -p atmega8 -P usb -c avrispv2 -U lfuse:w:0xe4:m -U hfuse:w:0xd9:m -B 22
    

    以下是avrdude手册页的摘录:

    `-B BITCLOCK'
            Specify the bit clock period for the JTAG interface or the ISP
            clock (JTAG ICE only).  The value is a floating-point number in
            microseconds.  The default value of the JTAG ICE results in about
            1 microsecond bit clock period, suitable for target MCUs running
            at 4 MHz clock and above.  Unlike certain parameters in the
            STK500, the JTAG ICE resets all its parameters to default values
            when the programming software signs off from the ICE, so for MCUs
            running at lower clock speeds, this parameter must be specified on
            the command-line.
    

    另外,我想推荐用于Android的AVR保险丝计算器 - 它对于微控制器程序员来说似乎是一个非常有用的工具。


    首先,我会建议您检查微控制器本身。 我有同样的错误信息,我发现我的Atmega已经损坏。 为新的交换解决了问题。


    当试图在面包板上直接闪烁时,另一个(常见的)问题可能是缺少水晶。 我已经两次忘记了这个错误信息。 因此,除了连接ISP引脚外,如果配置为使用外部振荡器(请参阅ATmega数据手册),还必须确保将一个晶振和电容连接到ATmega的XTAL1和XTAL2引脚。

    链接地址: http://www.djcxy.com/p/69907.html

    上一篇: AVRISPmkII connection status: Unknown status 0x00

    下一篇: Symfony2 loading time and performance