Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1228 connectés 

 


Dernière réponse
Sujet : Faire changer les LEDs en fonction des chiffres
rat de combat Bon, tu as fais un effort alors je veux bien en faire un aussi. :o

 

Renseigne toi sur le code ASCII et la différence entre les lettres (eh oui!) '0' à '9' et les chiffres 0 à 9. Et puis si tu veux entrer un nombre p.ex. entre 0 et 255 (je suppose que cette PWM c'est du 8 bit?) il faudra créer le code qui va bien. Pour rappel, si on a trois chiffres a,b,c on peut calculer le nombre avec 100*a+10*b+c.

 

Je ne vais pas te faire le code car je pense que ce sont des exercices scolaires, donc ...


Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
rat de combat Bon, tu as fais un effort alors je veux bien en faire un aussi. :o

 

Renseigne toi sur le code ASCII et la différence entre les lettres (eh oui!) '0' à '9' et les chiffres 0 à 9. Et puis si tu veux entrer un nombre p.ex. entre 0 et 255 (je suppose que cette PWM c'est du 8 bit?) il faudra créer le code qui va bien. Pour rappel, si on a trois chiffres a,b,c on peut calculer le nombre avec 100*a+10*b+c.

 

Je ne vais pas te faire le code car je pense que ce sont des exercices scolaires, donc ...

ellis13 Oui, j'utilise le PWM, mais je n'ai pas l'impression de l'utiliser correctement.
 

Code :
  1. uint8_t rxspeed[8] = {0xA5, 0x5A, 0x06, 0x82, 0x00, 0x01, 0x00, 0x00};
  2. uint8_t rxdose[8] = {0xA5, 0x5A, 0x06, 0x82, 0x00, 0x02, 0x00, 0x00};
  3. uint8_t rxrf[8] = {0xA5, 0x5A, 0x06, 0x82, 0x00, 0x03, 0x00, 0x00};
  4. uint8_t aa;
  5. uint8_t Recieved[40];
  6. uint32_t PWM_DUTY=20;//占空比
  7. void setup() {
  8.   // put your setup code here, to run once:
  9.   Serial.begin(115200);
  10.   pinMode(3, OUTPUT);
  11.   pinMode(9, OUTPUT);
  12. }
  13. void loop() {
  14.   // put your main code here, to run repeatedly:
  15. if(Serial.available() != 0)
  16.   {
  17.     for(aa = 0; aa < 8; aa ++)
  18.     {
  19.         Recieved[aa] = Serial.read();
  20.     }
  21.     switch(Recieved[4])
  22.     {
  23.       case 0x01://speed
  24.       rxspeed[7] = Recieved[7];
  25.       Serial.write(rxspeed, 8);
  26.       break;
  27.       case 0x02://dose
  28.       rxdose[7] = Recieved[7];
  29.       Serial.write(rxdose, 8);
  30.       break;
  31.       case 0x03://rf
  32.       rxrf[7] = Recieved[7];
  33.       Serial.write(rxrf, 8);
  34.       break;
  35.       default:
  36.       break;
  37.     }
  38.   }
  39.     analogWrite(3,rxspeed[7]);
  40.     analogWrite(9,rxdose[7]);
  41.   }

rat de combat ellis13, je te conseille vivement
1) de lire le règlement du forum qui dit qu'on ne fait pas les devoirs
2) de relire tes cours
3) d'apprendre à poser des questions précises si tu bloques avec toutes les informations nécessaires.
TotalRecall Oui c'est tout à fait possible.

 

Il suffit de piloter la LED en PWM  depuis l'Arduino (selon la consommation de la LED, prévoir l'ajout d'un transistor pour ne pas l'attaquer directement)
-> go tutorial arduino "PWM" et les bases du langage pour faire le compteur.

 

Et pour ce qui est de commander ça depuis l'écran, go tutorial sur comment brancher ton écran à ton arduino.

ellis13 Faites en sorte que la LED change de luminosité en fonction du changement de chiffre.
Lorsque l'on appuie sur le bouton "+" de l'écran tactile, le nombre augmente et la luminosité de la LED s'accroît ; à l'inverse, elle devient faible.
Est-ce possible à mettre en œuvre ? Quelqu'un a-t-il un exemple de code similaire ?
J'utilise un Arduino UNO et une F5LED.

Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR