linux - 无法在 avrdude 版本 6.0.1 中使用 avrisp mkII 进行刷新

标签 linux avr avrdude

我在 this 方面遇到了问题编程板。它设置正确,似乎是 AVRISP MKII。

我在使用 avrdude 刷新时收到以下错误消息:

(trusty)chandran@localhost:~$ avrdude -c avrispmkii -p t85 -vv
avrdude: Version 6.0.1, compiled on Oct 21 2013 at 15:55:32
     Copyright (c) 2000-2005 Brian Dean, h ttp://www.bdmicro.com/
     Copyright (c) 2007-2009 Joerg Wunsch
     System wide configuration file is "/etc/avrdude.conf"
     User configuration file is "/home/chandran/.avrduderc"
     User configuration file does not exist or is not a regular file, skipping

     Using Port                    : usb
     Using Programmer              : avrispmkii
avrdude: usb_open(): cannot read serial number "error sending control 

message: Connection timed out"

avrdude: usbdev_open(): Found AVRISP mkII, serno: [unknown]

avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No 
such file or directory

avrdude: stk500v2_recv_mk2: error in USB receive

avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No such file or directory

avrdude: stk500v2_recv_mk2: error in USB receive

avrdude: stk500v2_getsync(): timeout communicating with programmer
         AVR Part                      : ATtiny85
     Chip Erase delay              : 4500 us

     PAGEL                         : P00

     BS2                           : P00

     RESET disposition             : possible i/o

     RETRY pulse                   : SCK

     serial program mode           : yes

     parallel program mode         : yes

     Timeout                       : 200

     StabDelay                     : 100

     CmdexeDelay                   : 25

     SyncLoops                     : 32

     ByteDelay                     : 0

     PollIndex                     : 3

     PollValue                     : 0x53

     Memory Detail                 :


                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom        65     6     4    0 no        512    4      0  4000  4500 0xff 0xff
       flash         65     6    32    0 yes      8192   64    128  4500  4500 0xff 0xff
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
       lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       calibration    0     0     0    0 no          2    0      0     0     0 0x00 0x00

     Programmer Type : STK500V2
     Description     : Atmel AVR ISP mkII
     Programmer Model: AVRISP mkII
avrdude: usbdev_recv_frame(): usb_bulk_read(): error submitting URB: No such file or directory

很难确定问题,因为我的编程板版本没有这么好的文档。

提前致谢!

最佳答案

This bug造成了问题。我只是恢复到以前版本的 avrdude (5.11.1) 并且它有效。现在有更新版本的avrdude(6.3),这个bug在最新版本中可能不再是问题。

以下是一些步骤:

  1. 恢复为 older version avrdude 可以使用 sudo apt-get install <package-name>=<package-version-number>sudo apt-get install <package-name>=<package-version-number>
  2. 检查是否有效:avrdude -p <your part name> -c <your programmer name (avrispmkII)>
  3. 您可能必须specify a port 。如果出现如下错误,请使用“watch ls/dev/tty*”之类的命令来查找您的设备:

    (可信)chandran@localhost:~$ avrdude -c avrispmkII -p t85
    avrdude: ser_open(): 无法打开设备“/dev/ttyS0”: 没有这样的文件或目录

    avrdude 完成。谢谢。

如果正确的话,它会是这样的:

(trusty)chandran@localhost:~$ avrdude -c avrispmkII -p t85 -P usb -vv

avrdude: Version 5.11.1, compiled on Oct 30 2011 at 10:37:28
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

     System wide configuration file is "/etc/avrdude.conf"
     User configuration file is "/home/chandran/.avrduderc"
     User configuration file does not exist or is not a regular file, skipping

     Using Port                    : usb
     Using Programmer              : avrispmkII
avrdude: usb_open(): cannot read serial number "No error"
avrdude: usbdev_open(): Found AVRISP mkII, serno: [unknown]
avrdude: usbdev_open(): using read endpoint 0x83
         AVR Part                      : ATtiny85
         Chip Erase delay              : 4500 us
         PAGEL                         : P00
         BS2                           : P00
         RESET disposition             : possible i/o
         RETRY pulse                   : SCK
         serial program mode           : yes
         parallel program mode         : yes
         Timeout                       : 200
         StabDelay                     : 100
         CmdexeDelay                   : 25
         SyncLoops                     : 32
         ByteDelay                     : 0
         PollIndex                     : 3
         PollValue                     : 0x53
         Memory Detail                 :

                              Block Poll               Page                       Polled
       Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
       ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
       eeprom        65     6     4    0 no        512    4      0  4000  4500 0xff 0xff
       flash         65     6    32    0 yes      8192   64    128  4500  4500 0xff 0xff
       signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00
       lock           0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       lfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       hfuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       efuse          0     0     0    0 no          1    0      0  9000  9000 0x00 0x00
       calibration    0     0     0    0 no          2    0      0     0     0 0x00 0x00

     Programmer Type : STK500V2
     Description     : Atmel AVR ISP mkII
     Programmer Model: AVRISP mkII
     Hardware Version: 0
     Firmware Version Master : 1.255
     Vtarget         : 3.3 V
     SCK period      : 8.00 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e930b
avrdude: safemode: lfuse reads as 62
avrdude: safemode: hfuse reads as DF
avrdude: safemode: efuse reads as FF

avrdude: safemode: lfuse reads as 62
avrdude: safemode: hfuse reads as DF
avrdude: safemode: efuse reads as FF
avrdude: safemode: Fuses OK

avrdude done.  Thank you.

如果这不能解决您的问题,您可能需要查看其他一些解决方案: https://electronics.stackexchange.com/questions/78302/avrisp-mkii-not-reading-device-signature/189488

https://electronics.stackexchange.com/questions/67757/why-does-my-avrisp-mkii-programmer-not-work

AVRISP MKII doesn't work with AVRDUDE on Linux

https://electronics.stackexchange.com/questions/74298/how-does-avrdude-with-avr-isp-mkii-respond-when-no-target-board-is-connected

祝你好运!

关于linux - 无法在 avrdude 版本 6.0.1 中使用 avrisp mkII 进行刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29590765/

相关文章:

linux - 创建一个文本文件来保存 etc/init.d 的多个服务

arduino - 是否有用于微 Controller EEPROM损耗均衡的通用算法?

C++ 递减单字节( volatile )数组的元素不是原子的!为什么? (还有 : how do I force atomicity in Atmel AVR mcus/Arduino)

c - 如何使用 POSIX 线程在 C 语言中创建特定于线程的全局变量?

linux - ERR_CONNECTION_TIMED_OUT 与 Lightsail Ubuntu 实例

linux - 代理必须指定为绝对URI; '192.168.3.10' 不在/usr/share/perl/5.26/CPAN/FTP.pm 第 355 行

c - 具有 & 操作的 uint64_t 变量

embedded - avrdude 和 atmega48pa

eclipse - Avrdude 配置 linux

c - ATtiny 编程功能 - 似乎卡住