Bonjour
Je suis en train d'essayer de me mettre au ATtiny85 en utilisant l'additif Google Code Archive - Long-term storage for Google Code Project Hosting.
J'ai aussi un USBasp chinois.
Au début tout allait bien, j'ai joué avec les différentes configs basée sur l'oscillateur interne (1MHz, 8MHz et 16 MHz)
J'ai pu utiliser digitalRead/digitalWrite/analogRead/analogWrite et Serial 8)
Les problèmes ont commencé quand j'ai voulut jouer avec les fusibles....
La config par défaut fait que la pin 1 PB.5 est aussi /RESET
Ce qui ne me plaisait pas. Y'as déjà pas beaucoup de broches donc si on en perd une pour le reset....
J'ai donc voulut désactiver la fonction reset et je me suis dit alors que si le reset externe était désactivé, il fallait mieux alors activer le BOD afin d'avoir un reset propre.
Je suis donc passé de
attiny85at8.bootloader.low_fuses=0xE2
attiny85at8.bootloader.high_fuses=0xD7
attiny85at8.bootloader.extended_fuses=0xFF
à
attiny85at8nres.bootloader.low_fuses=0xE2
attiny85at8nres.bootloader.high_fuses=0x55
attiny85at8nres.bootloader.extended_fuses=0xFF
(en créant une nouvelle "board")
J'ai essayé de reflasher les fusible en utilisant "Burn bootloader".
Mais depuis plus rien ne marche sur ce 1er ATtiny85.
J'ai sortit un autre ATtiny85 tout neuf et là j'arrive a reprogrammer les fusibles en utilisant les configs d'origine mais je n'ose pas ré-essayer ma config modifiée sans reset.
Pensez vous que j'ai fait une co...rie dans mes fusibles ?
Est-ce que le 1er ATtiny pourrait être récupérable ? comment ?
Merci d'avance
log de AVRdude avec le ATtiny foireux pour la commande "Burn bootloader"
avrdude: Version 5.11, compiled on Sep 2 2011 at 19:38:36
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2009 Joerg Wunsch
System wide configuration file is "D:\Projets\tools\arduino-attiny\hardware/tools/avr/etc/avrdude.conf"
Using Port : usb
Using Programmer : usbasp
avrdude: seen device from vendor ->www.fischl.de<-
avrdude: seen product ->USBasp<-
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
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
flash 65 6 32 0 yes 8192 64 128 4500 4500 0xff 0xff
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
calibration 0 0 0 0 no 2 0 0 0 0 0x00 0x00
Programmer Type : usbasp
Description : USBasp, http://www.fischl.de/usbasp/
avrdude: auto set sck period (because given equals null)
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Note: je vois bien dans le log qu'il me conseille de mettre a jour mon USBasp mais :
- il marche avec un autre ATtiny
- il n'y a pas eu de mise à jour depuis mai 2011 donc je suppose qu'il est à jour (acheté en septembre)
- je ne trouve pas de consignes claires pour reflasher un USBasp (j'ai bien compris le but de JP2, j'ai 2 USBasp mais jene trouve pas les commandes avrdude à passer)
===================================
SOLUCE
Convertir la broche RESET en IO supprime la possibilité de reprogrammer en ICSP (cf les références données ci-après).
Il faut alors reflasher les fusibles en utilisant la méthode HVSP (High-voltage Serial Programming).
Après avoir bricolé sur un shield proto un montage équivalent à celui du AVR HV Rescue Shield 2 et son sketch, j'ai pu rétablir les fusibles dans leur version d'origine.