Récupérer un programme depuis une carte uno

Bonjour,

Je souhaiterais récupérer un programme depuis une carte uno (contraire du televersement) - pas la source évidemment. Pour le transférer tel quel sur d'autres cartes.
J'ai perdu le programme source.

Est-ce possible ?

Merci et bonne année

Jtonet:
Bonjour,

Je souhaiterais récupérer un programme depuis une carte uno (contraire du televersement) - pas la source évidemment. Pour le transférer tel quel sur d'autres cartes.
J'ai perdu le programme source.

Est-ce possible ?

Merci et bonne année

Bonjour
Si il n'y a pas eu d'autres protections prevues sur la memoire flash du 328P
pour récupérer un .HEX il suffit de faire un read avec avrdude

Bonjour,

Artouste:
pour récupérer un .HEX il suffit de faire un read avec avrdude

:smiling_imp:

AlienArea51:
Très intéressant , mais comment faire ?
Question bête et méchante .

:grin:

Oui , sur ce coup là , j'ai peut etre été un peu trop... laconique :wink:

Le plus simple est de se procurer pour qq € un petit USBASP

exemple

si le croquis a été téléversé avec ide arduino, il n'y a pas de protections lockfuses

si c'est un 328p dip 28, enlever le 328 et lire avec un tl866,

pour un 328 smd 32 pins, un usbasp sur le connecteur icsp, il y a des gui pour avrdude : avrdudess, xtremeburner, d'autres existent, une version du tl866 avec connecteur icsp par exemple
ICPROG et les pic est plus simple lire,ecrire, etc.. surtout point de vue fusibles, je ne saurais jamais pourquoi il y a autant de choix de config horloge pour un 328p, alors qu'il y a 4 choix horloge pour le 16f84 / 876

Le plus simple est de suivre le conseil d'Artouste : approvisionner un usbasp et lire la documentation d'avrdude. Surtout s'il y a plusieurs cartes à programmer.
La documentation d'avrdude est très bien faite et comprend de nombreux exemples clairs.

La remarque du message précédent est juste : dans un micro "neuf" encore en configuration "sortie usine" il y a les "fuses" à configurer avant de transférer le programme.
Les "fuses" ne sont plus des fusibles depuis longtemps mais une zone particulière dans le micro qui est interdite d'accès en temps normal mais avrdude peut y accéder.

Pourquoi faut-il régler ces fuses ?
Parce que en sortie de fab l'horloge est configurée pour faire les vérifications de fonctionnement le plus simplement possible. Oscillateur interne à 8MHz et diviseur par 8 soit une horloge à 1 MHz. Il y a quelques petites modifications à faire pour fonctionner en oscillateur externe.

Si on ne veut pas se prendre le tête à comprendre cette configuration il suffit de lire la valeur des fuses du micro fonctionnel toujours avec avrdude.
Juste un détail qui peut surprendre : le type de mémoire utilisé fait que non programmée la mémoire est à 1.
Et donc pour changer quelque chose il faut écrire un 0.
Exemple si le bit qui correspoond au choix de l'oscillateur est à 1 le choix sera "sortie usine".
Si ce bit est à 0 le choix sera oscillateur externe.

C'est pour cela que je dit que le plus simple est de lire les valeurs dans un micro déjà réglé.
Pour ceux qui veulent comprendre les choix dans la configuration des fuses il suffit de lire la datasheet du micro concerné.

Tous les programmes que l'on peut citer ne sont que des interfaces graphiques à avrdude qui est LE programme indispensable.

68tjs:
...

Pourquoi faut-il régler ces fuses ?
Parce que en sortie de fab l'horloge est configurée pour faire les vérifications de fonctionnement le plus simplement possible. Oscillateur interne à 8MHz et diviseur par 8 soit une horloge à 1 MHz. Il y a quelques petites modifications à faire pour fonctionner en oscillateur externe.

Si on ne veut pas se prendre le tête à comprendre cette configuration il suffit de lire la valeur des fuses du micro fonctionnel toujours avec avrdude.

Bonjour 68tjs
oui avec avr , les "fuses" peuvent sembler assez déconcertants lors des 1eres approches 8)

Perso et comme je n'utilise pas ça tout les jours non plus :grin:

avrdude (GUI avrdudess) + USBASP me suffit amplement

Perso et comme je n'utilise pas ça tout les jours non plus :grin:

Moi c'était juste pour comprendre donc une fois. Le mode console et les exemples d'application de la doc d'avrdude m'ont suffit. Mais tu devait être encore windowsien :grin: