parent
56a3de9743
commit
3f11c32ff1
@ -1,55 +0,0 @@
|
|||||||
// Wire Master Reader
|
|
||||||
// by Nicholas Zambetti <http://www.zambetti.com>
|
|
||||||
|
|
||||||
// Demonstrates use of the Wire library
|
|
||||||
// Reads data from an I2C/TWI slave device
|
|
||||||
// Refer to the "Wire Slave Sender" example for use with this
|
|
||||||
|
|
||||||
// Created 29 March 2006
|
|
||||||
|
|
||||||
// This example code is in the public domain.
|
|
||||||
|
|
||||||
// modified by Alan Johnston to show reading registers 0 - 3
|
|
||||||
// code based on https://forum.arduino.cc/index.php?topic=211587.0
|
|
||||||
//
|
|
||||||
// This code is to simulate the Raspberry Pi acting as I2C bus master
|
|
||||||
|
|
||||||
#include <Wire.h>
|
|
||||||
#define I2C_ADDRESS 0x4B
|
|
||||||
#define REGISTER_0 0x00
|
|
||||||
#define REGISTER_1 0x01
|
|
||||||
#define REGISTER_2 0x02
|
|
||||||
#define REGISTER_3 0x03
|
|
||||||
|
|
||||||
uint8_t reg; // I2C read register
|
|
||||||
|
|
||||||
void setup() {
|
|
||||||
Wire.begin(); // join i2c bus (address optional for master)
|
|
||||||
Serial.begin(9600); // start serial for output
|
|
||||||
pinMode(LED_BUILTIN, OUTPUT);
|
|
||||||
Serial.println("Starting");
|
|
||||||
}
|
|
||||||
|
|
||||||
void loop() {
|
|
||||||
for (reg=0; reg < 4; reg++) {
|
|
||||||
delay(5000);
|
|
||||||
digitalWrite(LED_BUILTIN, HIGH);
|
|
||||||
Wire.beginTransmission(I2C_ADDRESS);
|
|
||||||
Wire.write(reg);
|
|
||||||
Wire.endTransmission();
|
|
||||||
delay(100);
|
|
||||||
digitalWrite(LED_BUILTIN, LOW);
|
|
||||||
|
|
||||||
|
|
||||||
Wire.requestFrom(I2C_ADDRESS, 2); // request 2 bytes from I2C device
|
|
||||||
byte LSB = Wire.read();
|
|
||||||
byte MSB = Wire.read();
|
|
||||||
|
|
||||||
uint16_t register_value = ((MSB << 8) | LSB);
|
|
||||||
|
|
||||||
Serial.print("Read ");
|
|
||||||
Serial.print(register_value, HEX); // display register value in HEXADECIMAL
|
|
||||||
Serial.print(" from register ");
|
|
||||||
Serial.println(reg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Loading…
Reference in new issue