Prérequis :
- 1 x Carte Arduino Uno
- 1 x Carte PCA9685
- 3 x LED
- 3 x Résistance 220Ω
- 3 x Bouton
- Fils de connexion
Version IDE :
Bibliothèque :
Vidéo de démonstration :
Schéma de câblage :
Code :
int BtJaune = 2;
int BtBleue = 3;
int BtVert = 4;
bool EtatBtVert;
bool EtatBtBleue;
bool EtatBtJaune;
#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
Adafruit_PWMServoDriver pwm = Adafruit_PWMServoDriver();
int pinLedVert = 0;
int ValeurpinLedVert;
int pinLedBleue = 1;
int ValeurpinLedBleue;
int pinLedJaune = 2;
int ValeurpinLedJaune;
unsigned long previousMillis = 0;
const int interval = 15;
void setup() {
pwm.begin();
pinMode(BtVert, INPUT_PULLUP);
pinMode(BtBleue, INPUT_PULLUP);
pinMode(BtJaune, INPUT_PULLUP);
}
void loop() {
unsigned long currentMillis = millis();
EtatBtVert = digitalRead(BtVert);
if (EtatBtVert == LOW) {
ValeurpinLedVert = 4095;
}
EtatBtBleue = digitalRead(BtBleue);
if (EtatBtBleue == LOW) {
ValeurpinLedBleue = 4095;
}
EtatBtJaune = digitalRead(BtJaune);
if (EtatBtJaune == LOW) {
ValeurpinLedJaune = 4095;
}
if (currentMillis - previousMillis >= interval) {
previousMillis = currentMillis;
if (ValeurpinLedVert > 0 && EtatBtVert == HIGH) {
ValeurpinLedVert = ValeurpinLedVert - 100;
}
if (ValeurpinLedBleue > 0 && EtatBtBleue == HIGH) {
ValeurpinLedBleue = ValeurpinLedBleue - 100;
}
if (ValeurpinLedJaune > 0 && EtatBtJaune == HIGH) {
ValeurpinLedJaune = ValeurpinLedJaune - 100;
}
}
pwm.setPWM(pinLedVert, 0, ValeurpinLedVert);
pwm.setPWM(pinLedBleue, 0, ValeurpinLedBleue);
pwm.setPWM(pinLedJaune, 0, ValeurpinLedJaune);
}
Post Views: 136
J’aime ça :
J’aime chargement…