Go Down

Topic: ARDUINO PRO MINI 3.3V 8MHz (Read 1 time) previous topic - next topic

hbachetti

Salut à tous
J'avais déjà posté en janvier un article décrivant un thermomètre sur batterie.
J'ai regroupé ici les informations concernant l'utilisation de l'ARDUINO PRO MINI.
La partie chargement par FTDI a été complétée et décrit les branchements à utiliser avec différents FTDI du commerce.
Bonne lecture et n'hésitez pas à apporter critiques et suggestions.

HB
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

astuces-education


hbachetti

#2
Oct 27, 2018, 11:09 am Last Edit: Oct 27, 2018, 12:51 pm by hbachetti
Comparativement à une PRO MINI, une carte ARDUINO NANO possède un convertisseur USB / série ou FT232RL ou GH340G et un régulateur 5V AMS1117.

On peut identifier sur cette carte trois sources de consommation de courant :

    la LED PWR : 5mA
    le CH340G : 80 µA non actif
    le régulateur 5V : 5mA typiques

Essayons de mesurer le courant consommé après avoir chargé un sketch LOW-POWER.
Une fois le sketch chargé, la carte est alimentée en 5V via la pin 5V bien entendu.

    carte d'origine : 8.8mA
    sans la LED : 3.8mA
    sans la LED et sans le régulateur : 90µA

Il est possible d'obtenir avec une NANO modifiée une consommation en veille 100 fois inférieure à celle d'une carte d'origine, sans toutefois atteindre celle d'une PRO MINI.

BLOG mis à jour.

@+

Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

hbachetti

https://riton-duino.blogspot.fr/2018/02/arduino-pro-mini-basse-consommation.html

J'ai ajouté un paragraphe qui expose les calculs de consommation en mode veille et en mode éveillé. Le but est de déterminer la capacité de la batterie à employer.

7. Autonomie

@+
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

IDEFIX_82

Bonjour,

Suite à lecture de votre blog, j'ai tenté quelques Pro Mini 8Mhz.
1 sur 5 n'avait pas de bootloader visiblement, ou alors, mal programmé.
Ce qui m'amène aux questions suivantes, après avoir réussi à charger le bootloader.

Je me suis redu compte que les 4 mini allaient 2 fois plus vite que prévu. D'où sans doute un problème de Fuse , à l'enregistrement initial, du bootloader , sur ces 4..
J'ai donc reprogrammé en choisissant l'option 5V 16 Mhz, et la je retrouve la vitesse attendue. (avec le FTDI toujours en 3.3, bien sur)
(Je n'ai pas encore mis le scope, pour vérifier les résonateurs, vu qu'ils sont marqués A N , seulement, mais je subodore déjà que cela pourrait etre du 16Mhz, et par là je verifierai la tension de 3.3 du régulateur, des fois que la boutique m'ait livré ..du 16M/5v, car pour l'instant j'alimente via le FTDI, commuté sur 3.3v, ou derrière le regul, pour le reflashage du boot)
Donc, comment comprendre ce qui est affiché dans la fenetre de compilation de l'IDE?
Il y a bien des lignes sur les fuses, mais je ne comprends pas l'affichage .

Pour ce qui est du N°5, je n'ai réussi à charger le  bootloader qu'en choisissant Arduino nano comme cible.
Et donc, les "Fuses", toujours incapable de comprendre l'affichage.

Ou lit on la valeur des fuses que l'IDE lit?
J'ai cela comme sortie:
Memory Detail                 :

                                  Block Poll               Page                       Polled
           Memory Type Mode Delay Size  Indx Paged  Size   Size #Pages MinW  MaxW   ReadBack
           ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
           eeprom        65    20     4    0 no       1024    4      0  3600  3600 0xff 0xff
           flash         65     6   128    0 yes     32768  128    256  4500  4500 0xff 0xff
           lfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           hfuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           efuse          0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           lock           0     0     0    0 no          1    0      0  4500  4500 0x00 0x00
           calibration    0     0     0    0 no          1    0      0     0     0 0x00 0x00
           signature      0     0     0    0 no          3    0      0     0     0 0x00 0x00

 

hbachetti

#5
Nov 14, 2018, 10:31 pm Last Edit: Nov 14, 2018, 11:05 pm by hbachetti
Quote
Je me suis rendu compte que les 4 mini allaient 2 fois plus vite que prévu. D'où sans doute un problème de Fuse , à l'enregistrement initial, du bootloader , sur ces 4..
Non, sans doute un problème de quartz.
On peut diviser par 8 avec les fuses ou sélectionner la source d'horloge, pas plus.

Quote
J'ai donc reprogrammé en choisissant l'option 5V 16 Mhz, et la je retrouve la vitesse attendue. (avec le FTDI toujours en 3.3, bien sur)
La vitesse prévue ? Sur la ligne série par exemple ?
Je les programme avec l'option ATmega328P 8MHz 3.3V.

Quote
mais je subodore déjà que cela pourrait etre du 16Mhz,
Possible, mais ils ne tourneraient pas en 3.3V, ou difficilement.
J'ai essayé de faire fonctionner par erreur une NANO à 3.7V. Pas terrible.

J'utilise avrdude et un USBASP pour lire ou modifier les fuses. C'est beaucoup plus clair.

Il existe des calculateurs de fuses : http://www.engbedded.com/fusecalc/

Et la datasheet bien évidemment.

Pas trop mal : https://www.allaboutcircuits.com/projects/atmega328p-fuse-bits-and-an-external-crystal-oscillator/

##### EDIT #####
J'ai deux séries de cartes PRO MINI 8MHz différentes. J'avoue que je ne parviens pas à lire les marquages des oscillateurs.
Elles ont toutes un bootloader. Je les programme toutes avec l'option ATmega328P 8MHz 3.3V.
La ligne série tourne à la bonne vitesse, un sketch blink aussi.

ICI et ICI

@+
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

IDEFIX_82

Bonsoir.

Après un petit tour à l'établi.
Régulateurs : 3.26 à 3.29 selon modèle.
Résonateur céramique : 16 MHz.  (pour la mesure au scope, il faut bien-sûr mettre une résistance en série avec la sonde d'au moins 470 ohm pour masquer la capa de la sonde, et ne pas trop perturber l'oscillateur)
Et ils tournent correctement, à température ambiante.
Mais comme ils vont avoir à travailler entre -10 et 40 , il faut impérativement que je passe sur de 8Mhz, ou moins.
Je les achetés chez Thinary, mais les boutiques ne sont que des revendeurs, pour la plupart.
J'en attends d'un autre "détaillant" , en espérant que ce sera conforme. 

OK pour le calculateur de Fuse je l'avais déjà chargé, mais si quelqu'un connait la signification de ce que donne l'IDE, je suis preneur.

Et la carte USBASP est en route..




hbachetti

Quote
Je les achetés chez Thinary
Moi aussi. Ils ont tous les modèles : 168, 328, 8MHz, 16MHz.

Tu es sûr ne ne pas avoir fait d'erreur ?
Attention de ne pas commander des 168.

@+
Linux is like a wigwam: no Windows, no Gates, and an Apache inside ...

IDEFIX_82

Bonjour,
Je les ai commandés par 5, et j'étais focalisé sur le 3.3v. Et je n'ai pas prêté attention au fait que c'etait des 3.3V 16MHz dans l'annonce. Ce qui est clairement hors spec d'Atmel. Et c'est bien un ATMega 328.
Faut tout lire ...

Pour moi, il était implicite que 3.3V impliquait une réduction de la vitesse. Mais non, pas pour une épicerie qui vend du tout venant.....

Donc commande de résonateur murata 8 Mhz sur Mouser , à ma prochaine commande. mais vu les frais de port, il faut que je globalise..

Je viens également de découvrir que sur les 2 cartes FTDI que j'ai , (pour simplifier je dirai une rouge et une bleue), toutes les deux ont une commutation 3.3V et 5V, certes, mais en fait, en position 3.3V, l'une des 2 cartes passe bien ses niveaux en 3.3 approximativement, mais pas le VCC sur le connecteur de sortie, qui lui , reste en 5V.  Dangereux pour les blue pill..


Go Up