Bonjour.
J'ai fais l’acquisition de deux 1-502G-10 branchés en parallèle . D'après la datasheet, ces composants sont en cathodes communes . J'ai donc décidé, pour écrire plusieurs caractères sur les 4 digits, de faire un système de balayage de gauche à droite avec un délai de 1ms .
Mais pour les modifications de segments, j'ai aucune idée du câblage (sauf qu'il me faudra 8 transistors ...) .
Je voudrais, à la fin, me faire une petite horloge synchronisée avec un programme Lua (déjà fait) .
En gros pour l'instant, mon code ressemble à ça:
int digit1 = 2;
int digit2 = 3;
int digit3 = 4;
int digit4 = 5;
int delai = 1;
/*
bit1: haut
bit2: haut-gauche
bit3: haut-droit
bit4: milieu
bit5: bas-gauche
bit6: bas-droit
bit7: bas
bit8: point
*/
int n1 = 0b00100100;
int n2 = 0b10111010;
int n3 = 0b10111010;
int n4 = 0b01110100;
int n5 = 0b11010110;
int n6 = 0b11011110;
int n7 = 0b11001000;
int n8 = 0b11111110;
int n9 = 0b11111010;
int n0 = 0b11101110;
void setup() {
Serial.begin(9600);
pinMode(digit1, OUTPUT);
pinMode(digit2, OUTPUT);
pinMode(digit3, OUTPUT);
pinMode(digit4, OUTPUT);
//init sequence (pour vérifier les segments)
Serial.write("Init ...");
digitalWrite(digit1, HIGH);
digitalWrite(digit2, HIGH);
digitalWrite(digit3, HIGH);
digitalWrite(digit4, HIGH);
delay(1000);
digitalWrite(digit1, LOW);
digitalWrite(digit2, LOW);
digitalWrite(digit3, LOW);
digitalWrite(digit4, LOW);
Serial.write(" Done!");
//end
}
void loop() {
if (Serial.available() != false) {
while (true) {
}
}
digitalWrite(digit4, LOW);
digitalWrite(digit1, HIGH);
Serial.write("\nDigit 1");
//nb du digit 1
//
delay(delai);
digitalWrite(digit1, LOW);
digitalWrite(digit2, HIGH);
Serial.write("\nDigit 2");
//nb du digit 2
//
delay(delai);
digitalWrite(digit2, LOW);
digitalWrite(digit3, HIGH);
Serial.write("\nDigit 3");
//nb du digit3
//end
delay(delai);
digitalWrite(digit3, LOW);
digitalWrite(digit4, HIGH);
Serial.write("\nDigit 4");
Serial.write("\nEnd");
//nb du digit 4
//end
delay(delai);
}
Autre chose: j'ai codé les chiffres, mais je ne sais pas comment les interpréter ! Parce que j'utilise des binaires, mais je ne sais pas les lire donc si vous avez une solution ...
Merci de vos réponses !