Le but de la manoeuvre : afficher la valeur d'une entrée analogique (0 à 1023 par exemple) sur un afficheur 4 x 7 segments Led
Matériels : que du Seeedstudio Grove !
Infos sur l'afficheur : http://www.seeedstudio.com/wiki/Grove_-_4-Digit_Display
ça donne ça :
Le programme :
#include "TM1637.h"
#define CLK 2//pins definitions for TM1637 and can be changed to other ports
#define DIO 3
TM1637 tm1637(CLK,DIO);
int _ABVAR_1_var;
void setup()
{
Serial.begin(9600);
tm1637.init();
tm1637.set(BRIGHT_TYPICAL);//BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;
_ABVAR_1_var = 0;
}
void loop()
{
_ABVAR_1_var = analogRead(A1) ;
static unsigned long t = 0;//Refreshment of the display quite 250ms
if(millis() - t > 250)
{
tm1637.display(0,(_ABVAR_1_var / 1000) % 10); //Display of thousands
tm1637.display(1,(_ABVAR_1_var / 100) % 10); //Display of hundreds
tm1637.display(2,(_ABVAR_1_var / 10) % 10); //Display of tens
tm1637.display(3,_ABVAR_1_var % 10); //Display of units
Serial.print( _ABVAR_1_var ); // Show the value of A0 on the serial port
Serial.println("");
t = millis();
}
}
Télécharger le programme : Test_afficheur_4_leds.ino







