Problème d'affichage sur un afficheur 7 segments 4 digits I2C Adafruit

Bonjour,

J'essaie de créer une alarme pour mon frigo mais je n'arrive pas à afficher la température sur le "Adafruit 7 segments 4 digits I2C". Le circuit que j'ai chez moi est disponible en virtuel ici.

J'utilise un capteur TMP36, un afficheur Adafruit 7 segments 4 digits I2C, un buzzer actif, une Arduino UNO R3 SMD et un circuit imprimé Fritzing Fab dont il faut importer le fichier mis sur GitHub

Importer la branche GitHub pour le circuit imprimé
Importer la branche GitHub pour téléverser le code vers L'Arduino UNO

Attention !!!
Il faut téléverser le code par le site internet d'Arduino en ayant un compte et en installant Arduino Create Agent.
Sinon, il y aura un problème avec la librairie Adafruit_LEDBackpack.h .

Pourriez-vous m'aider ?
Merci !

Déjà, on va t'aider à être poli. On n'écrit pas en gras c'est grossier.

Oups, désolé.
J'ai dû avoir une erreur dans mon code.
Je recommence.

Bonjour,

J'essaie de créer une alarme pour mon frigo mais je n'arrive pas à afficher la température sur le "Adafruit 7 segments 4 digits I2C". Le circuit que j'ai chez moi est disponible en virtuel ici.

J'utilise un capteur TMP36, un afficheur Adafruit 7 segments 4 digits I2C, un buzzer actif, une Arduino UNO R3 SMD, un boîtier à piles pour l'alimentation et un circuit imprimé Fritzing Fab dont il faut importer le fichier mis sur GitHub

Importer la branche GitHub pour le circuit imprimé
Importer la branche GitHub pour téléverser le code vers L'Arduino UNO

Attention !!!
Il faut téléverser le code par le site internet d'Arduino en ayant un compte et en installant Arduino Create Agent.
Sinon, il y aura un problème avec la librairie Adafruit_LEDBackpack.h .

Pourriez-vous m'aider ?
Merci !

L'alimentation par un I/O ce n'est pas une bonne idée. Une I/O ne peut pas fournir le courant nécessaire au fonctionnement de l'afficheur.

Je ne crois pas car quand je démarre le circuit (le vrai je sais que l'on ne peut pas le voir), une petite led derrière m'indique que c'est allumé.

C'est autre chose.
Aussi, j'utilise du fil basique seulement pour cet afficheur.
J'ai remarqué que le circuit imprimé ne marchait pas pour ce dernier.
Par contre, le virtuel montre bien ce que j'ai fait.

What is the current draw of the backpacks?
It depends on how many LEDs you have lit at once!
But a rough estimation is 20 milliamps per segment. Note that segments are multiplexed per row so that means
7-segment backpacks (7 segments + 1 dot) = 8 x 20mA = 160 mA

Une sortie ne peut guère fournir plus de 20mA et encore cela ne garantie pas qu'elle donnera 5V.

Donc je dois mettre une résistance ?

Non tu dois connecter la broche Vcc de l'afficheur sur le 5V de l'arduino comme indiqué ici

je viens de le faire mais ça ne marche pas.

la led "on" est toujours allumée mais les segments ne s'allument pas.

l'alimentation est fournie par le boitier.

  if (c >= tmax) {
    while (ac < c) {
      digitalWrite(VCCBUZZER, HIGH);
      delay(5);
      digitalWrite(VCCBUZZER, LOW);
      delay(495);
      digitalWrite(VCCBUZZER, HIGH);
      delay(5);
      digitalWrite(VCCBUZZER, LOW);
      delay(495);
    }

Tu as ici 1 boucle while dans laquelle tu restes bloqué une fois que tu y es entré car c n'est pas mis à jour dans la boucle

OK je le corrige tout de suite.

C fait.
Ça donne ça :

if (c >= tmax) {
    while (ac < c) {
      digitalWrite(VCCBUZZER, HIGH);
      delay(5);
      digitalWrite(VCCBUZZER, LOW);
      maj();
      delay(495);
      digitalWrite(VCCBUZZER, HIGH);
      delay(5);
      digitalWrite(VCCBUZZER, LOW);
      maj();
      delay(495);
    }
  
  }

G mis à jour sur GitHub.

Je teste

Les problèmes s'enchaînent :frowning_face:.
À voir => Problème pour capter la température

Oui, mais comme on n'est pas devins il vaudrait mieux que tu détailles un peu les problèmes que tu rencontre.

Inutile de faire des doublons cela fait perdre l'historique.

G connecté les broches de l'afficheur avec du fer résistant...
ET ÇA MARCHE !
Bon je sais pas pourquoi mais au moins la prochaine fois je saurais.
Et pour le capteur TMP36, je vais le remplacer par le capteur DHT22 avec le code:

#include <DHT.h>

Merci pour ton aide, @fdufnews .