Go Down

Topic: Aide programation afficheur led digit (Read 389 times) previous topic - next topic

zobyo

Bonjour,
J'ai fait l'acquisition d'un module LED SPI 8X7segment => http://www.dfrobot.com/wiki/index.php?title=SPI_LED_Module_(SKU:DFR0090)
Mon but est de pouvoir afficher les différents nombres que je rentre via serial.
Apres branchement sur un arduino nano (en direct, sans passer par leurs "interface shield" ) . L'afficheur fonctionne parfaitement mais c'est au niveau du code que ce trouve les problemes :
-Les chiffres affiché sont dans le mauvais ordre ( ex : je rentre 123 et cela va m'afficher 321) existe t'il une fonction pour inverser la position des chiffre ?
-Un caractere de debut de ligne est affiché après chaque ajout de nombre (ex : je rentre 12345 et cela va m'afficher e.54321 et de temps en temps P.54321 )
-L'afficheur n'est pas remis a zero si j'ajoute un autre numero a la suite (ex : je rentre 123 puis je valide et je rentre 23 et je valide , cela va m'afficher e.32e.321
-Et enfin comment gerer les point ?

Au final ce que je voudrai c'est : je rentre le nombre 154.235 et il s'affiche , je rentre le nombre 23.20 et il s'affiche en remplaçant le précédent.
Voici le code original que j'utilise (avec les n° de pin utilisé modifié pour qu'il tourne sur l'arduino nano) :
Code: [Select]
//Pin connected to latch pin (ST_CP) of 74HC595
const int latchPin = 10;
//Pin connected to clock pin (SH_CP) of 74HC595
const int clockPin = 13;
////Pin connected to Data in (DS) of 74HC595
const int dataPin = 11;
byte Tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xff};
void setup() {
  pinMode(latchPin, OUTPUT);
  pinMode(dataPin, OUTPUT); 
  pinMode(clockPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("reset");
}
void loop() {
  if (Serial.available() > 0) {
  int bitToSet = Serial.read() - 48;
  digitalWrite(latchPin, LOW);
  shiftOut(dataPin, clockPin, MSBFIRST, Tab[bitToSet]);
  digitalWrite(latchPin, HIGH);
  }
}


Merci de votre aide

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy