Le TM1367 n'affiche rien

Bonjour à tous,

Matériel : Mega2560 ou Arduino Nano, afficheur sept segments TM1367

Je suis en possession de 2 afficheurs 4 digit 7 segments du type TM1367. lorsque je connecte l'un ou l'autre sur une Mega2560 ou même un Nano et que je téléverse le programme ci-dessous ou même un autre utilisant l'include 'TM1367Display.h', le résultat est le même, pas l'ombre d'une lumière (oxymore) en vue.
Les 2 afficheurs sortent de leur emballage, donc très peu de probabilité qu'ils soient défectueux tous les deux.

Merci à tous ceux qui auraient une idée

Otermale

#include <TM1637.h>

int CLK = 10;
int DIO = 9;
int nombre = 1234;
int result[4] = {0};

TM1637 tm(CLK,DIO);


void setup() {
             tm.init();
             //Définir la luminosité 0-7
             tm.set(7);
             Serial.begin(9600);
             }

void loop() {
  nombre = nombre + 1;
             int tab[4];
             result[0] = (nombre /1000);
             result[1] = ((nombre /100)%10);
             result[2] = ((nombre /10)%10);
             result[3] = nombre % 10;
      
            Serial.print(result[0]);
            Serial.print(result[1]);
            Serial.print(result[2]);
            Serial.print(result[3]);
            Serial.println(" ");

            tm.display(0,result[0]);
            tm.display(1,result[1]);
            tm.display(2,result[2]);
            tm.display(3,result[3]);
            tm.init();

            delay(3000);
            }

Bonjour,

Tu mets tm.init() qui efface l'affichage, juste après avoir affiché.
Effaces ce tm.init()

En effet, l'init efface l'affichage, mais il aurait du faire scintiller l'afficheur, ce qu'il ne faisait pas.

Je suis tombé au fil de mes recherche, sur un bout de programme qui affichait lui quelque chose et j'ai vu ce qui n'allait pas, il faut pour chaque affichage, écrire "tm1637.display" et non pas "tm.display".

Je poste le programme pour ceux qui comme moi se sont arraché les cheveux là dessus.

#include "TM1637.h"

#define CLK 2//pins definitions for TM1637 and can be changed to other ports    
#define DIO 3
TM1637 tm1637 (CLK,DIO);

void setup () {
  tm1637.init();
  tm1637.set (BRIGHT_TYPICAL);  //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;
  tm1637.display (0, 0);
  tm1637.display (1, 1);
  tm1637.display (2, 2);
  tm1637.display (3, 3);
  delay (1000);
  tm1637.clearDisplay ();
}

void loop () {
  static int i = 0;
  int d = i;

  if (i > 9999) i = 1;
  
  tm1637.display (0, d/1000);
  d = d % 1000;
  tm1637.display (1, d/100);
  tm1637.point ((int (d / 100) % 2) ? 1 : 0);
  d = d % 100;
  tm1637.display (2, d/10);
  d = d % 10;
  tm1637.display (3, d);

  delay (10);
  i++;
}

otermale:
Je suis tombé au fil de mes recherche, sur un bout de programme qui affichait lui quelque chose et j'ai vu ce qui n'allait pas, il faut pour chaque affichage, écrire "tm1637.display" et non pas "tm.display".

Non! Le premier programme fonction très bien (mis à part le tm.init().
Il faut utiliser le nom qui est défini
Si tu définis TM1637 tm(CLK,DIO); tu utilises tm.
Si tu définis TM1637 tm1637(CLK,DIO); tu utilises tm1637.

Les deux programmes n'utilisent pas les mêmes pins. Ton afficheur est connecté en 2 3 ou 10 9??