Go Down

Topic: [REPRISE] Reprendre la main sur un ATtiny85 (Read 1 time) previous topic - next topic

icare

Oct 04, 2013, 09:18 am Last Edit: Oct 06, 2013, 11:39 am by icare Reason: 1
Bonjour à tous,
J'utilise l'ATtiny85 pour faire des essais en les programmant avec un Arduino Uno en mode ISP (selon une procédure décrite dans la rubrique "Tutoriels et Cours"). Pas de problème particulier tout se passe bien.
Un peu tête en l'air ou dans la précipitation, j'ai télécharger mon programme dans ATtiny85 sans installer préalablement le bootloader. Bien sur je ne peux plus télécharger d'autres programmes (message d'erreur).

Comment peut-on reprendre la main pour installer le bootloader ?

Il est certain que ce n'est pas pour une raison de coût mais pour comprendre comment s'y prendre.
Merci pour votre aide
@+
2B OR NOT(2B) = FF
Arduino 1.0.5 + Notepad++ (sous Linux Fedora et/ou Windows)

B@tto

#1
Oct 04, 2013, 09:33 am Last Edit: Oct 04, 2013, 09:35 am by B@tto Reason: 1
Salut !

bah burn bootloader ! Mais normalement tu n'as pas besoin du bootloader sur attiny sauf si tu veux modifier les fuses
Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

Super_Cinci

effectivement, la première chose que j'aurais tenté, c'est le burn BL. mais après il faut le programmer via série...

B@tto

Blog électronique : http://battomicro.wordpress.com/
Photographie : www.interactive-celebration.fr

haifger

Bonjour,


Bien sur je ne peux plus télécharger d'autres programmes (message d'erreur).


Bon bah déjà ce qui serait bien ce serait de nous le donner, ce message d'erreur.


Comment peut-on reprendre la main pour installer le bootloader ?


Le bootloader en question est fait pour permettre de reprogrammer une puce via son interface série matérielle ; les attiny85 n'en possédant pas, qu'il soit présent ou non n'y changera pas grand chose. Et puis vu que tu programmes ta puce par SPI, il ne te servira à rien de toute façon.

Le problème est donc sans doute ailleurs. Commence déjà par nous donner le message d'erreur exact, et puis les étapes que tu as suivies pour le programmer (quel choix de carte dans boards par exemple, ...).

Ah au fait, le programme que tu as installé sur la puce (et qui doit toujours être dessus), il fonctionne correctement ou pas ?


icare

Bonsoir,
Merci pour toute vos réponses.
J'ai repris toute la procédure (http://forum.arduino.cc/index.php?topic=150870.0) depuis le début. J'ai réussi à re-charger le bootloader et le chargement des applicatifs via Arduino Uno en ISP.

Entre temps, j'ai reçu mon programmeur USBasp et je trouve que la mise en oeuvre est plus simple que la programmation via la carte Arduino.
Pour cette phase, je me suis inspiré de :  http://battomicro.wordpress.com/2013/10/04/tutorial-jouer-avec-les-attiny/
@+

2B OR NOT(2B) = FF
Arduino 1.0.5 + Notepad++ (sous Linux Fedora et/ou Windows)

skywodd

Bonjour,

Ya un truc pas nette dans l'histoire : comment as tu programmais le 1er programme ?

Un bootloader n'est utile que quand on a pas de programmateur d'AVR, or dans ton cas tu sembles en avoir un puisque tu as pu programmer quelque chose sur l'attiny au moins une fois.

Des bootloaders pour Attiny85 ça existe (voir sur le site d'adafruit), mais sur 8Ko de mémoire ça prend presque 2Ko ... soit 1/4 de mémoire perdu !

Ps: l'ATtiny à un USI "universal serial interface", qui peut faire UART, I2C ou SPI ;)
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

icare

Bonsoir,

Bonjour,
Ya un truc pas nette dans l'histoire : comment as tu programmais le 1er programme ?
Un bootloader n'est utile que quand on a pas de programmateur d'AVR, or dans ton cas tu sembles en avoir un puisque tu as pu programmer quelque chose sur l'attiny au moins une fois.
Des bootloaders pour Attiny85 ça existe (voir sur le site d'adafruit), mais sur 8Ko de mémoire ça prend presque 2Ko ... soit 1/4 de mémoire perdu !
Ps: l'ATtiny à un USI "universal serial interface", qui peut faire UART, I2C ou SPI ;)

Le premier programme sur ATtiny85 a été transmis via une carte Arduino Uno en mode ISP, mais sans avoir installé le bootloader. Le programme fonctionnait mais on aurait dit au ralenti (c'était un simple blink).
Après cela plus moyen de changer le programme ou installé le bootloader.
En temps le programmateur USBasp que j'avais commandé est arrivé.
En utilisant dans Arduino USBasp pour le transfert, j'ai pu reprendre la main.
@+
2B OR NOT(2B) = FF
Arduino 1.0.5 + Notepad++ (sous Linux Fedora et/ou Windows)

skywodd


Le premier programme sur ATtiny85 a été transmis via une carte Arduino Uno en mode ISP, mais sans avoir installé le bootloader. Le programme fonctionnait mais on aurait dit au ralenti (c'était un simple blink).

Surement un problème de configuration de l'horloge (F_CPU), soit au niveau du code (exemple : code compilé avec F_CPU = 16MHz, alors qu'en réalité ton Attiny tourne avec un quartz à 8MHz), soit au niveau des fusibles (exemple : utilisation de l'horloge interne au lieu d'un quartz externe).


Après cela plus moyen de changer le programme ou installé le bootloader.

Tant que tu n'as pas désactivé la broche RESET il suffit de repasser par un programmateur ICSP pour changer le programme.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

icare

Bonjour,
J'ai besoin d'éclaircissement sur la programmation des ATtiny85, à savoir si j'ai bien compris :
1) si l'on souhaite programmer l'ATtiny via un carte Arduino, il faut mettre le bootloader sur l'ATtiny
2) si l'on utilise un programmateur USBasp, par exemple, on n'a pas besoin du bootloader
3) le fait d'utiliser l'USBasp, le bootloader est-il supprimé ?
4) dans le cas contraire peut-on effacé le bootloader pour récupérer la mémoire correspondante ?
Merci pour vos éclaircissements
@+
2B OR NOT(2B) = FF
Arduino 1.0.5 + Notepad++ (sous Linux Fedora et/ou Windows)

skywodd


1) si l'on souhaite programmer l'ATtiny via un carte Arduino, il faut mettre le bootloader sur l'ATtiny
2) si l'on utilise un programmateur USBasp, par exemple, on n'a pas besoin du bootloader
3) le fait d'utiliser l'USBasp, le bootloader est-il supprimé ?
4) dans le cas contraire peut-on effacé le bootloader pour récupérer la mémoire correspondante ?


1) Non par forcément, avec ArduinoISP un bootloader est inutile
2) Oui même chose avec ArduinoISP
3) Oui sauf si tu intègres le bootloader ET ton programme dans un même fichier .hex (pas recommandé)
4) Oui bien sûr, il suffit de programmer via le port ICSP un autre programme.
Des news, des tutos et plein de bonnes choses sur http://skyduino.wordpress.com !

icare

Re,
Merci Skywodd pour cette réponse ultra-rapide
@+
2B OR NOT(2B) = FF
Arduino 1.0.5 + Notepad++ (sous Linux Fedora et/ou Windows)

Go Up