Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of MCP23S17_Basic_IO_Demo by
Diff: main.cpp
- Revision:
- 1:70e1ebe47253
- Parent:
- 0:12f4911d7ba0
- Child:
- 2:934a0500abde
--- a/main.cpp Thu Jan 27 03:16:18 2011 +0000
+++ b/main.cpp Fri Jan 28 01:44:27 2011 +0000
@@ -22,16 +22,22 @@
// mbed p20 is connected to ~chipSelect on the MCP23S17
MCP23S17 chip = MCP23S17(spi, p20, writeOpcode);
+// Optional software reset - mbed p20 to MCP23S17 reset pin
+// DigitalOut reset(p20);
+
DigitalOut led1(LED1); // mbed LED1 is used for test status display
int main() {
-// Nothing has to be connected to the MCP23S17 reset pin since it has a power on reset circuit.
-// It can be used for a software forced reset by pulling it low with an mbed GPIO pin.
-// But just leave it unconnected for this simple demo code. It is possible to lock up the chip
-// if you happen to reset the mbed in the middle of an SPI transfer (not too likely).
-// If it happens just remove and attach the USB cable to reset by cycling the power.
+// The MCP23S17 reset pin can just be pulled high, since it has a power on reset circuit.
+// The reset pin can be used for a software forced reset by pulling it low with an mbed GPIO pin.
+// But just leave it pulled high for this simple demo code.
// After a power on reset, both IO ports default to input mode
//
+// Here is the optional code for a software reset
+// reset = 0;
+// wait_us(1);
+// reset = 1;
+//
// Set all 8 Port A bits to output direction
chip.direction(PORT_A, 0x00);
// Set all 8 Port B bits to input direction
