Alora Library
Library for using Alora shield
 All Classes Namespaces Files Functions Variables Macros Pages
GpioExpander.h
1 //
2 // Created by Andri Yadi on 8/1/16.
3 // Adapted from: https://github.com/skywodd/pcf8574_arduino_library
4 //
5 
6 #ifndef XBOARD_BASE_GPIOEX_H
7 #define XBOARD_BASE_GPIOEX_H
8 
9 #include "Arduino.h"
10 #include <Wire.h>
11 #include <SPI.h>
12 #include <SparkFunSX1509.h>
13 
14 #define GPIOEXPANDER_ADDRESS 0x3E
15 #define GPIOEXPANDER_BUTTON_PIN 0
16 #define GPIOEXPANDER_LED_PIN 14
17 
18 #define IOX0 0
19 #define IOX1 1
20 #define IOX2 2
21 #define IOX3 3
22 #define IOX4 4
23 #define IOX5 5
24 #define IOX6 6
25 #define IOX7 7
26 #define IOX8 8
27 #define IOX9 9
28 #define IOX10 10
29 #define IOX11 11
30 #define IOX12 12
31 #define IOX13 13
32 #define IOX14 14
33 #define IOX15 15
34 
35 
36 class GpioExpander: public SX1509 {
37 public:
38  GpioExpander(uint8_t address = GPIOEXPANDER_ADDRESS);
39  ~GpioExpander();
40 
41  //byte begin();
42  byte begin(byte address = GPIOEXPANDER_ADDRESS, byte resetPin = 0xFF);
43  void turnOnLED();
44  void turnOffLED();
45  void blinkLED(unsigned long tOn, unsigned long tOff, byte onIntensity = 255, byte offIntensity = 0);
46 
47 private:
48  byte i2cDeviceAddress_;
49 };
50 
51 
52 #endif //XBOARD_BASE_GPIOEX_H
Definition: GpioExpander.h:36