Hi all,
I have a design were I need many chip select on a DAB receiver . The core is an ESP32 with a adding a MCPS17 IO expander 16 IO pins. I have also need 7 chip select. (sorry I can't put the schematic in the post.
for made ESP32 chip selection I use a 74HC138 decoder
here under the code.
//SPI Ports for BIT on "ESP32_DAB_SI4684_commande" PCB board
#define A0 1 // pin ESP32 IO 1
#define A1 2 // pin ESP32 IO 2
#define A2 3 // pin ESP32 IO 3
#define SCK_Pin 12
#define MISO_Pin 13
#define MOSI_Pin 11
#define CS_TFT digitalWrite(A2, LOW) , digitalWrite(A1, LOW), digitalWrite(A0, LOW)
#define CS_SDCARD digitalWrite(A2, LOW) , digitalWrite(A1, LOW), digitalWrite(A0, HIGH)
#define CS_TOUCH digitalWrite(A2, LOW) , digitalWrite(A1, HIGH), digitalWrite(A0, LOW)
#define CS_GPIO digitalWrite(A2, LOW) , digitalWrite(A1, HIGH), digitalWrite(A0, HIGH)
#define CS_DAB digitalWrite(A2, HIGH) , digitalWrite(A1, LOW), digitalWrite(A0, LOW)
#define CS_MEMORY digitalWrite(A2, HIGH) , digitalWrite(A1, LOW), digitalWrite(A0, HIGH)
#define CS_LCD digitalWrite(A2, HIGH) , digitalWrite(A1, HIGH), digitalWrite(A0, LOW)
#define CS_ALL_OFF digitalWrite(A2, HIGH) , digitalWrite(A1, HIGH) , digitalWrite(A0, HIGH)
I don't how to use these system definition in the class off the MCP23S17.cpp library.
CS_GPIO is not a value and the MCP23S17 mcp23S17 object don't understand the CS_GPIO
#define CS_GPIO digitalWrite(A2, LOW) , digitalWrite(A1, HIGH), digitalWrite(A0, HIGH)
MCP23S17 mcp23S17(CS_GPIO, MOSI_Pin, MISO_Pin, SCK_Pin, 2); // select CS_GPIO adress 2
Did you have somme solutions to solve my problems?
Thanks for your answers. Joël
2 posts - 2 participants