Se connecter

S'inscrire

Les Afficheurs 7 segments…

Dans un système d’affichage, le multiplexage est un procédé qui consiste à utiliser plusieurs LED’s ou plusieurs afficheurs car on a envie de ne pas les en même temps, en vue d’économiser de l’énergie et de limiter le nombre de fils de câblage. Par exemple, l’affichage de votre tapis de course, réveil numérique, de votre four micro-onde qui normalement multiplexé. Dans un système d’affichage, le multiplexage est un procédé qui consiste à utiliser plusieurs voyants ou plusieurs afficheurs et à ne pas tous les allumer à la fois, en vue d’économiser de l’énergie et de limiter le nombre de fils de câblage. Par exemple, l’affichage de votre radio réveil numérique, de votre machine à laver ou de votre four micro-onde est fort probablement multiplexé.

7-segment


1 - Composants à se procurere pour se projet

Arduino Uno ou Arduino Nano

  • 4-digit 7-segment LED
  • 4 1KΩ résistances
  • 4 P2N222A NPN transistor
  • Potentiomètre/Variable Résistance

 


2 - schema des composants

img_0059


3 - Le schema du montage

img_0062

pin = les pins de l’arduino (exemple: pin 8 = pin 8 de l’arduino)

transistor01

Ceci est un transistor

Inventé dans les années 50, le transistor est un composant à semi-conducteur qui remplit deux fonctions vitales en électronique: celles d’amplificateur (c’est un générateur de fort courant en sortie commandé par un faible courant en entrée) et de commutateur (à la manière d’un interrupteur marche/arrêt).

 

 


4 - Le code

const int numeral[10]= {
B11111100, //0
B01100000, //1
B11011010, //2
B11110010, //3
B01100110, //4
B10110110, //5
B00111110, //6
B11100000, //7
B11111110, //8
B11100110, //9
};

//pins for decimal point and each segment
//dp, G, F, E, D, C, B, A
const int segmentPins[]= { 4, 7, 8, 6, 5, 3, 2, 9};
const int numberofDigits=4;
const int digitPins[numberofDigits] = { 10,11,12, 13}; //digits 1, 2, 3, 4
const int sensorPin = A0;
void setup()
{
//http://arduinoworks.com/arduino-with-4-digit-7-segment-led-display/
for (int i=0; i < 8; i++)
pinMode(segmentPins[i], OUTPUT); //set segment and DP pins to output

//sets the digit pins as outputs
for (int i=0; i < numberofDigits; i++)
pinMode(digitPins[i], OUTPUT);

pinMode(sensorPin,INPUT);
}

void loop()
{
int value= analogRead(sensorPin);
showNumber(value);
}

void showNumber (int number)
{
if (number == 0)
showDigit (0, numberofDigits-1); //display 0 in the rightmost digit
else
{
for (int digit= numberofDigits-1; digit >=0; digit–)
{
if (number > 0)
{
showDigit(number % 10, digit);
number= number/10;
}
}
}
}

//Displays given number on a 7-segment display at the given digit position
void showDigit (int number, int digit)
{
digitalWrite(digitPins[digit], HIGH);
for (int segment= 1; segment < 8; segment++)
{
boolean isBitSet= bitRead(numeral[number], segment);

isBitSet= ! isBitSet; //remove this line if common cathode display
digitalWrite(segmentPins[segment], isBitSet);
}
delay(5);
digitalWrite(digitPins[digit], LOW);
}

——————————————————————————————————–

Maintenant les afficheurs 7 segment à multiplexage sont plus un secret pour vous

AMUSEZ VOUS BIEN!!!!

Joyeux Noël…..


Les Afficheurs 7 segments…

Réalisé par , mise en ligne le 25 décembre 2016 - Dernière modification : 25 décembre 2016

Documenter