[Résolu] Précisions sur quelques principes généraux.

Bonjour à tous,

Je n'ai pas trouvé de réponses satisfaisantes sur ce point : cas d'école. (et je ne sais pas lire l'anglais.)

  1. J'ai réalisé un montage sur une carte UNO et tout va bien. Ce montage est donc piloté par un quartz.
    J'ai réaliser "ma propre" carte.
    Je dépose le CI ATméga328P de la carte UNO pour le mettre sur ma carte personnelle, mais je ne veux pas de quartz,
    je veux utiliser l'horloge interne. (1 MHz semble-t-il)
    Indépendamment de la fréquence qui ne sera plus la même, est ce que cela va fonctionner ?
    (Problèmes des bits fusibles CKSEL 0 à 3. Ou est-ce automatique ?)

  2. suite logique pour les débutants
    (mais là je sais que je peux trouver la solution, je l'ai déjà lu. Il faut que juste que je le retrouve)
    J'achète un nouveau CI pour ma carte UNO. Je le mets en place.
    Est ce que cela fonctionne directement ?
    (Problème d'amorçage ?) Sur un PIC16F84 ça fonctionne immédiatement.

PS
3) si un chargement d'amorçage est nécessaire, l'IDE Arduino saura-t-il le faire?

Merci à tous.

Salut,

  1. Oui mais reprogrammation des fuses nécessaires (donc programmateur externe nécessaire)
    2)nan il faut flasher le bootloader préalablement (via prog externe). sauf si tu ne veux programmer que par programmateur externe (courant sur une carte définitive). Tu sélectionnes alors 'programmation avec programmateur externe' (ou un truc dans ce gout la) dans "fichier"
  2. oui avec un programmateur externe :slight_smile: => "graver bootloader" dans le menu

Bonjour,

Merci b@tto,

Désolé mais ce n'est pas clair. Tes réponses ne correspondent pas à mes questions.
Je vois :

  1. Non ça ne vas pas fonctionner puisqu'il faut reprogrammer avec un prog extérieur ?
  2. je te cite : "nan il faut flasher le bootloader préalablement (via prog externe)." OK
  3. Non puisqu'il faut reprogrammer avec un prog extérieur. Ll'IDE Arduino ne sais pas faire ?

Par contre, on peut raccorder un programmateur externe sur la prise ICSP de la carte UNO et
"avec un programmateur externe :slight_smile: => graver bootloader" dans le menu" du programmateur.

C'est bien cela ? (Je sais que je suis pénible mais je veux bien comprendre.)
Mon explication n'est peut-être pas très claire non plus ?

Merci

je veux utiliser l'horloge interne. (1 MHz semble-t-il)

Non l'horloge interne tourne à 8 MHz.
Par contre si tu ne modifies pas le bon fuse un diviseur par 8 est activé par défaut dans la config sortie usine.
Ce diviseur activé par défaut est à l'origine de la confusion qui règne sur le sujet.

Pour le reste je laisse @Bato répondre mais je pense qu'il a bien répondu à tes questions, tu devrait relire sa réponse.

Bonsoir à tous,

@68tjs : OK pour la fréquence d'horloge. Merci.
Détail intéressant pour résoudre un problème de rapidité mais doit être facile à constater.

Pour le reste, désolé, je voudrais comprendre à 100% et non à 80%
Mon IDE = Arduino 1.0.5-r2 (L'aide est en anglais)
Considérons si vous le voulez bien la dernière question N°3. (je verrai la N°2 après)

ma question.. : 3) si un chargement d'amorçage est nécessaire, l'IDE Arduino saura-t-il le faire?
réponse b@tto 3) oui avec un programmateur externe :slight_smile: => "graver bootloader" dans le menu

Dans Outils de mon IDE je vois, entre autres :

  • Formatage automatique Ctrl T (que je n'utilise pas , je ne sais pas à quoi cela sert)
  • Graver la séquence d'initialisation

ça ressemble bien à "graver bootloader" mais comme il faut un programmateur externe, je me dis que c'est dans le menu du programmateur ?
Il faut dire que je n'ai pas de programmateur externe, je ne sais donc pas comment on l'utilise !
Je suppose que le port COM Arduino ne sert plus ? Il faut le déconnecter ou il ne sert qu'à alimenter ?
C'est le port ICSP de la carte UNO qui prend en charge le microcontrôleur ?
J'utilisais un programmateur pour des EPROM 2716 au siècle dernier, ou pour des PIC16F84 c'est ainsi.
Conclusion : C'est peut-être là mon problème. Pour moi ce n'est pas clair.
Comme bien souvent, c'est évident quand on connait.

Des fois on a le temps, et on pond un pavé, des fois on est pressé et on va à l'essentiel :wink:

Tous les microcontroleurs on besoin en fait d'un programmateur externe pour justement être programmer. Mais tu vas me dire que ton Arduino n'en a pas ... En effet, il existe une "astuce" sur les microcontroleurs modernes qui peuvent s'écrire eux-même dans leur mémoire, c'est le bootloader. C'est un programme qui va permettre de recevoir les données du programme sous un autre format pour les écrire dans la mémoire du micro. Sur arduino, le bootloader reçois les infos par liaison série, et les écrit dans la flash. Mais comme tout programme il faut le programmer ... C'est un peu le serpent qui se mort la queue. Il faut donc préalablement flasher le bootloader si on veut rester dans l'univers "pur" arduino, avec usage du bootloader.

Les programmateur externe à pas cher, trouvable sur ebay, aliexpress, banggood ... Sont l'USBTiny ISP ou l'USBasp. On peut aussi utiliser une autre Arduino, avec le bon programme, pour faire le job. Le programmateur externe est également nécessaire pour flasher les fuses qui configure les fonctions de base (style, type d'ocsillateur).

Si tu tapes "Arduino ISP bootloader" t'auras plein d'info.

De plus, comme j'essayais de l'expliquer, en fait on peut se passer du bootloader si on a un programmateur externe : on peut directement flasher son programme avec (attention ça écrase le bootloader).

Pour les menu j'ai fait de mémoire, en effet c'est séquence d'initialisation en français :wink:

Bonjour,

B@tto:
Si tu tapes "Arduino ISP bootloader" t'auras plein d'info...

En anglais.
Comme geryko, j'ai des lacunes dans la langue de Shakespeare et j'aurais aimé trouver un tuto en français.

Par exemple, comment fait-on avec un autre arduino ?

J'ai trouvé ça http://www.pobot.org/Flasher-le-bootloader-d-une-carte

Mais pour activer l'horloge interne comme demandé ?

Bonjour b@tto, @68tjs , et à tous les autres

J'ai lu 3 fois ton message et 2 fois ce site en français.
Super pour comprendre le mécanisme.

De ce fait cela répond à ma question N°1 si j'ai bien compris. (qui n'était peut-être pas assez claire ?)
Tu avais répondu : Oui mais reprogrammation des fuses nécessaires (donc programmateur externe nécessaire)
il fallait répondre : Non car la reprogrammation des fuses nécessaire.
C'est bien ainsi ?
Excuse-moi si je suis tatillon, c'est ce que j'appelle comprendre à 100%
S'il en est bien ainsi, nous pouvons en rester là.

Encore merci pour tout, Bravo !

@achess : Je rappelle que c'est un cas d'école, sur la plan pratique je n'en suis pas encore là.

  1. La question était "est-ce que celà va fonctionner" : oui si tu fais les bonnes choses, non si tu ne fais pas ce qui faut. Je peux pas te répondre oui tout court alors que si tu le fais "comme ça" ça ne marchera pas. Et je ne peux pas te répondre non car c'est loin d'être impossible et dépend simplement du fait que tu as une autre Arduino ou un programmateur externe qui vaut 5€ ou aucun des deux. Si je suis ta logique y'a énormément de gens à qui je vais répondre non alors qu'on est plus proche d'un oui que d'un non à mon sens.

Bonjour, Re

Nous sommes d'accord.

Merci toujours