Télécharger Imprimer la page

Raspberry PICO Mode D'emploi page 104

Publicité

17.2.1 Scan du bus I2C
#include <Wire.h>
//include Wire.h library
void
setup()
{
Wire.setSDA(16);
Wire.setSCL(17);
Wire.begin();
// Wire communication begin
Wire.setClock(10000);
Serial.begin(9600);
while
(!Serial);
// Waiting for Serial Monitor
Serial.println("\nI2C
}
void
loop()
{
byte
error, address;
int
nDevices;
Serial.println("Scanning...");
nDevices
= 0;
for
(address
= 1;
{
// The i2c_scanner uses the return value of
// the Write.endTransmisstion to see if
// a device did acknowledge to the address.
Wire.beginTransmission(address);
error
= Wire.endTransmission();
if
(error
== 0)
{
Serial.print("I2C device found at address
if
(address
< 16)
Serial.print("0");
Serial.print(address, HEX);
Serial.println("
nDevices++;
}
else if
(error
== 4)
{
Serial.print("Unknown error at address
if
(address
< 16)
Serial.print("0");
Serial.println(address, HEX);
}
}
if
(nDevices
== 0)
Serial.println("No I2C devices
else
Serial.println("done\n");
delay(5000);
// wait 5 seconds for the next I2C scan
}
// The baudrate of Serial monitor is set in 9600
Scanner");
//variable for error and I2C address
address
< 127; address++ )
!");
found\n");
0x");
0x");

Publicité

loading

Ce manuel est également adapté pour:

Pico w