First init.
This commit is contained in:
@@ -0,0 +1,96 @@
|
||||
/*
|
||||
* This example shows how read arcade buttons and PWM the LEDs on the Adafruit Arcade QT!
|
||||
*/
|
||||
|
||||
#include "Adafruit_seesaw.h"
|
||||
#include <seesaw_neopixel.h>
|
||||
|
||||
#define DEFAULT_I2C_ADDR 0x3A
|
||||
|
||||
#define SWITCH1 18 // PA01
|
||||
#define SWITCH2 19 // PA02
|
||||
#define SWITCH3 20 // PA03
|
||||
#define SWITCH4 2 // PA06
|
||||
#define PWM1 12 // PC00
|
||||
#define PWM2 13 // PC01
|
||||
#define PWM3 0 // PA04
|
||||
#define PWM4 1 // PA05
|
||||
|
||||
|
||||
Adafruit_seesaw ss;
|
||||
|
||||
void setup() {
|
||||
Serial.begin(115200);
|
||||
|
||||
while (!Serial) delay(10); // wait until serial port is opened
|
||||
|
||||
Serial.println(F("Adafruit PID 5296 I2C QT 4x LED Arcade Buttons test!"));
|
||||
|
||||
if (!ss.begin(DEFAULT_I2C_ADDR)) {
|
||||
Serial.println(F("seesaw not found!"));
|
||||
while(1) delay(10);
|
||||
}
|
||||
|
||||
uint16_t pid;
|
||||
uint8_t year, mon, day;
|
||||
|
||||
ss.getProdDatecode(&pid, &year, &mon, &day);
|
||||
Serial.print("seesaw found PID: ");
|
||||
Serial.print(pid);
|
||||
Serial.print(" datecode: ");
|
||||
Serial.print(2000+year); Serial.print("/");
|
||||
Serial.print(mon); Serial.print("/");
|
||||
Serial.println(day);
|
||||
|
||||
if (pid != 5296) {
|
||||
Serial.println(F("Wrong seesaw PID"));
|
||||
while (1) delay(10);
|
||||
}
|
||||
|
||||
Serial.println(F("seesaw started OK!"));
|
||||
ss.pinMode(SWITCH1, INPUT_PULLUP);
|
||||
ss.pinMode(SWITCH2, INPUT_PULLUP);
|
||||
ss.pinMode(SWITCH3, INPUT_PULLUP);
|
||||
ss.pinMode(SWITCH4, INPUT_PULLUP);
|
||||
ss.analogWrite(PWM1, 127);
|
||||
ss.analogWrite(PWM2, 127);
|
||||
ss.analogWrite(PWM3, 127);
|
||||
ss.analogWrite(PWM4, 127);
|
||||
}
|
||||
|
||||
uint8_t incr = 0;
|
||||
|
||||
void loop() {
|
||||
if (! ss.digitalRead(SWITCH1)) {
|
||||
Serial.println("Switch 1 pressed");
|
||||
ss.analogWrite(PWM1, incr);
|
||||
incr += 5;
|
||||
} else {
|
||||
ss.analogWrite(PWM1, 0);
|
||||
}
|
||||
|
||||
if (! ss.digitalRead(SWITCH2)) {
|
||||
Serial.println("Switch 2 pressed");
|
||||
ss.analogWrite(PWM2, incr);
|
||||
incr += 5;
|
||||
} else {
|
||||
ss.analogWrite(PWM2, 0);
|
||||
}
|
||||
|
||||
if (! ss.digitalRead(SWITCH3)) {
|
||||
Serial.println("Switch 3 pressed");
|
||||
ss.analogWrite(PWM3, incr);
|
||||
incr += 5;
|
||||
} else {
|
||||
ss.analogWrite(PWM3, 0);
|
||||
}
|
||||
|
||||
if (! ss.digitalRead(SWITCH4)) {
|
||||
Serial.println("Switch 4 pressed");
|
||||
ss.analogWrite(PWM4, incr);
|
||||
incr += 5;
|
||||
} else {
|
||||
ss.analogWrite(PWM4, 0);
|
||||
}
|
||||
delay(10);
|
||||
}
|
||||
Reference in New Issue
Block a user