#include <Wire.h>
#include <Adafruit_PWMServoDriver.h>
class LEDKey
{
private:
Adafruit_PWMServoDriver &driver;
public:
LEDKey(Adafruit_PWMServoDriver &driver): driver{driver} {} //0x40 oder 0x41
void begin()
{
driver.begin();
driver.setPWMFreq(1000);
}
void pinOff(int p) {driver.setPWM(p , 0 , 4096); Serial.print(p); Serial.println(" pinOff"); }
void pinOn(int p) {driver.setPWM(p , 4096 , 0); Serial.print(p); Serial.println(" pinOn"); }
};
constexpr byte addr = 0x40;
Adafruit_PWMServoDriver driver{addr};
LEDKey led {driver};
void setup()
{
Serial.begin(9600);
led.begin();
Wire.setClock(400000);
led.pinOn(0);
led.pinOn(1);
led.pinOn(2);
led.pinOff(3);
}
void loop(
){
led.pinOn(0);
delay(1000);
led.pinOff(0);
delay(1000);
}