@@ -210,7 +210,7 @@ uint8_t Adafruit_MCP23XXX::getLastInterruptPin() {
210
210
211
211
// Port A
212
212
Adafruit_BusIO_Register INTFA (i2c_dev, spi_dev, MCP23XXX_SPIREG,
213
- getRegister (MCP23XXX_INTF));
213
+ getRegister (MCP23XXX_INTF, 0 ));
214
214
INTFA.read (&intf);
215
215
for (uint8_t pin = 0 ; pin < 8 ; pin++) {
216
216
if (intf & (1 << pin)) {
@@ -222,7 +222,7 @@ uint8_t Adafruit_MCP23XXX::getLastInterruptPin() {
222
222
// Port B and still not found?
223
223
if ((pinCount > 8 ) && (intpin == 255 )) {
224
224
Adafruit_BusIO_Register INTFB (i2c_dev, spi_dev, MCP23XXX_SPIREG,
225
- getRegister (MCP23XXX_INTF) , 1 );
225
+ getRegister (MCP23XXX_INTF, 1 ) );
226
226
INTFB.read (&intf);
227
227
for (uint8_t pin = 0 ; pin < 8 ; pin++) {
228
228
if (intf & (1 << pin)) {
@@ -234,8 +234,9 @@ uint8_t Adafruit_MCP23XXX::getLastInterruptPin() {
234
234
235
235
// clear if found
236
236
if (intpin != 255 ) {
237
- Adafruit_BusIO_Register INTCAP (i2c_dev, spi_dev, MCP23XXX_SPIREG,
238
- getRegister (MCP23XXX_INTCAP));
237
+ Adafruit_BusIO_Register INTCAP (
238
+ i2c_dev, spi_dev, MCP23XXX_SPIREG,
239
+ getRegister (MCP23XXX_INTCAP, MCP_PORT (intpin)));
239
240
INTCAP.read ();
240
241
}
241
242
0 commit comments