#include <Arduino.h>
#include <Adafruit_MCP23X17.h>
#define LED_PIN 0
#define BUTTON_PIN 1
Adafruit_MCP23X17 mcp;
// https://github.com/adafruit/Adafruit-MCP23017-Arduino-Library
void setup() {
Serial.begin(9600);
//while (!Serial);
Serial.println("MCP23xxx Blink Test!");
// uncomment appropriate mcp.begin
if (!mcp.begin_I2C()) {
//if (!mcp.begin_SPI(CS_PIN)) {
Serial.println("Error.");
while (1);
}
// configure pin for output
mcp.pinMode(LED_PIN, OUTPUT);
// configure pin for input with pull up
mcp.pinMode(BUTTON_PIN, INPUT_PULLUP);
Serial.println("Looping...");
}
void loop() {
mcp.digitalWrite(LED_PIN, HIGH);
delay(500);
mcp.digitalWrite(LED_PIN, LOW);
delay(500);
// LOW = pressed, HIGH = not pressed
if (!mcp.digitalRead(BUTTON_PIN)) {
Serial.println("Button Pressed!");
delay(250);
}
}