#include <Wire.h> #include "gw_grayscale_sensor.h" // SDA : A4 // SCL : A5 int addr = 0; void setup() { // 初始化I2C Wire.begin(); // 初始化串口 Serial.begin(115200); } void loop() { // 发送PING命令 if (addr == 0) { Serial.println("begin scanning"); } Wire.beginTransmission(addr); Wire.write(GW_GRAY_PING); Wire.endTransmission(); // 查看传感器回复 Wire.requestFrom(addr, 1); char ping_rep = Wire.read(); if (ping_rep == 0x66) { Serial.print(addr, HEX); Serial.print(" "); Serial.println("PING OK"); } addr += 1; addr = addr % 128; delay(10); }