Archived
1
0
This repo is archived. You can view files and clone it, but cannot push or open issues or pull requests.
keybrd/unit_tests/PortRead_MCP23S17/PortRead_MCP23S17.ino
2016-08-31 20:29:59 -06:00

33 lines
1009 B
C++

/* unit test for PortRead_MCP23S17
The setup is an MCP23S17 I/O expander on a Teensy LC controller.
MCP23S17 port-B pins are alternately grounded and energized.
portBState is a bitwise reading of port B.
output is: 10101010
posted on http://arduino.stackexchange.com/questions/tagged/spi
http://arduino.stackexchange.com/questions/28792/reading-an-mcp23s17-i-o-expander-port-with-the-arduino-spi-library
*/
#include "PortIOE.h"
#include "PortRead_MCP23S17.h"
#include "PortWrite_MCP23S17.h"
const uint8_t PortIOE::ADDR = 0x20; //MCP23S17 address, all 3 ADDR pins are grounded
PortIOE portB(1, 0);
PortRead_MCP23S17 portBRead(portB);
PortWrite_MCP23S17 portBWrite(portB); //PortBWrite needed for begin()
void setup()
{
uint8_t portBState; //bit wise
delay(6000);
portBWrite.begin();
portBState = portBRead.read();
Keyboard.print("portBState = ");
Keyboard.println(portBState, BIN); //should print 10101010
}
void loop() { }