Direct Register Access for MCP23xxx
gsexton opened this issue · 1 comments
What kind of new feature are you looking for?
I'm trying to figure out how to get direct access to the MCP23008 GPIO register using the MCP23xxx package. The only interface I see exposed is via pins. I'm writing a driver for the Adafruit I2c/SPI backpack, and it uses the MCP23008.
The need is because to send a character to the backpack you have to:
Set the reset pin on the GPIO
Write A value to pins 3-6 (data), and pin 2 low (enable)
Toggle Pin 2 High
Wait a period
Toggle Pin 2 Low
Write A value to pins 3-6 (data), and pin 2 low (enable)
Toggle Pin 2 High
Wait a period
Toggle Pin 2 Low
If I have to set each pin individually, that stacks up to a fair number of I2c transactions.
- Hardware: MCP23008 (on Adafruit i2c/SPI backpack)
- Software: Linux, Raspbian, I2C
Do you plan to:
If there's not a method, I could contribute a patch.
- Contribute an initial driver: I could contribute a patch.
- Write unit tests: Yes
- Update https://github.com/periph/cmd to use the new functionality: No
Thanks
George
I'm fine with a specific new method on the Dev struct. I wished I had to time to make a pure mechanism but still hasn't done that.