Changed from MCP23S17 to MCP23017. Lots of changes.

Doesn't really work because of timing stuff.
This commit is contained in:
2019-11-10 14:45:33 +01:00
parent 88655b543d
commit 2ea2ec479a
14 changed files with 423 additions and 156 deletions

View File

@ -20,6 +20,24 @@
#define RX 3
#define TX 1
// Pins for MCP23017
#define GPA0 0
#define GPA1 1
#define GPA2 2
#define GPA3 3
#define GPA4 4
#define GPA5 5
#define GPA6 6
#define GPA7 7
#define GPB0 8
#define GPB1 9
#define GPB2 10
#define GPB3 11
#define GPB4 12
#define GPB5 13
#define GPB6 14
#define GPB7 15
#define SHOW_DEBUG
//#define SHOW_TRACE
#define FTP_DEBUG
@ -30,21 +48,44 @@
#define VS1053_SLEEP_DELAY 5000
#define MQTT_REPORT_INTERVAL 10000
#define PIN_SD_CS(x) (_mcp->digitalWrite(GPB3, x))
#define PIN_SD_CS_SETUP() (_mcp->pinMode(GPB3, OUTPUT))
#define PIN_SD_CS D4
#define PIN_VS1053_XCS D8
#define PIN_VS1053_XRESET 16
#define PIN_MCP D3
#define PIN_VS1053_XDCS D1
#define PIN_VS1053_DREQ D2
#define PIN_RC522_CS D0
#define SPEAKER_L 15
#define SPEAKER_R 14
#define PIN_VS1053_XCS(x) (digitalWrite(D8, x))
#define PIN_VS1053_XCS_SETUP() (pinMode(D8, OUTPUT))
#define PIN_BTN_VOL_UP D4
#define PIN_BTN_VOL_DOWN D5
#define PIN_BTN_TRACK_NEXT D6
#define PIN_BTN_TRACK_PREV D7
#define PIN_VS1053_XRESET(x) (_mcp->digitalWrite(GPB7, x))
#define PIN_VS1053_XRESET_SETUP() (_mcp->pinMode(GPB7, OUTPUT))
#define PIN_VS1053_XDCS(x) (digitalWrite(D3, x))
#define PIN_VS1053_XDCS_SETUP() (pinMode(D3, OUTPUT))
#define PIN_VS1053_DREQ() (_mcp->digitalRead(GPB2))
#define PIN_VS1053_DREQ_SETUP() (_mcp->pinMode(GPB2, INPUT))
#define PIN_RC522_CS(x) (digitalWrite(D0, x))
#define PIN_RC522_CS_SETUP() (pinMode(D0, OUTPUT))
#define PIN_SPEAKER_L(x) (_mcp->digitalWrite(GPB5, x))
#define PIN_SPEAKER_L_SETUP() (_mcp->pinMode(GPB5, OUTPUT))
#define PIN_SPEAKER_R(x) (_mcp->digitalWrite(GPB6, x))
#define PIN_SPEAKER_R_SETUP() (_mcp->pinMode(GPB6, OUTPUT))
#define BTN_PREV() ( ! _mcp->digitalRead(GPA0))
#define BTN_PREV_SETUP() {_mcp->pinMode(GPA0, INPUT); _mcp->pullUp(GPA0, HIGH);}
#define BTN_VOL_UP() ( ! _mcp->digitalRead(GPA1))
#define BTN_VOL_UP_SETUP() {_mcp->pinMode(GPA1, INPUT); _mcp->pullUp(GPA1, HIGH);}
#define BTN_VOL_DOWN() ( ! _mcp->digitalRead(GPA2))
#define BTN_VOL_DOWN_SETUP() {_mcp->pinMode(GPA2, INPUT); _mcp->pullUp(GPA2, HIGH);}
#define BTN_NEXT() ( ! _mcp->digitalRead(GPA3))
#define BTN_NEXT_SETUP() {_mcp->pinMode(GPA3, INPUT); _mcp->pullUp(GPA3, HIGH);}
#define MCP_I2C_ADDR 7
#define NUM_BUTTONS 4
@ -54,6 +95,8 @@
#define VOLUME_MAX 255
#define VOLUME_STEP 0x08
#define MCP_SPI_SETTING_DELAY 1
#define RFID_SCAN_INTERVAL 100