приклеил MCP23017-E/SP к меге 2560. MCP23017-E/SP определяется сканером I2C. а вот тест с MCP23017-E/SP не проходит. На экране: 23:13:53.884 -> Scanning... 23:13:53.930 -> I2C device found at address 0x25 ! 23:13:53.976 -> done 23:13:53.976 -> 23:13:53.976 -> MCP23xxx Blink Test! 23:13:53.976 -> Error. Код (C++): #include <Adafruit_MCP23X17.h> #include <Wire.h> #define LED_PIN 0 // MCP23XXX pin LED is attached to Adafruit_MCP23X17 mcp; void setup() { Wire.begin(); Serial.begin(9600); //while (!Serial); int nDevices; Serial.println("Scanning..."); byte error, address; nDevices = 0; for(address = 8; address < 127; address++ ){ Wire.beginTransmission(address); error = Wire.endTransmission(); if (error == 0){ Serial.print("I2C device found at address 0x"); if (address<16) Serial.print("0"); Serial.print(address,HEX); Serial.println(" !"); nDevices++; } else if (error==4) { Serial.print("Unknow error at address 0x"); if (address<16) Serial.print("0"); Serial.println(address,HEX); } } if (nDevices == 0) Serial.println("No I2C devices found\n"); else Serial.println("done\n"); // uncomment appropriate mcp.begin Serial.println("MCP23xxx Blink Test!"); if (!mcp.begin_I2C()) { //if (!mcp.begin_SPI(CS_PIN)) { Serial.println("Error."); while (1); } // configure pin for output mcp.pinMode(LED_PIN, OUTPUT); Serial.println("Looping..."); } void loop() { mcp.digitalWrite(LED_PIN, HIGH); delay(500); mcp.digitalWrite(LED_PIN, LOW); delay(500); } в чём подвох?