arduino nano与M24C08的通讯示例
时间: 2023-12-05 21:05:33 浏览: 30
以下是Arduino Nano与M24C08的通讯示例代码:
```C++
#include <Wire.h>
#define EEPROM_ADDR 0x50 // M24C08的地址
void setup() {
Wire.begin(); // 初始化I2C总线
Serial.begin(9600); // 初始化串口
}
void loop() {
byte data = 0x12; // 要写入EEPROM的数据
byte addr = 0x00; // 写入EEPROM的地址
// 写入数据到EEPROM中
Wire.beginTransmission(EEPROM_ADDR);
Wire.write(addr);
Wire.write(data);
Wire.endTransmission();
delay(10); // 等待EEPROM写入完成
// 读取EEPROM中的数据
byte readData;
Wire.beginTransmission(EEPROM_ADDR);
Wire.write(addr);
Wire.endTransmission();
Wire.requestFrom(EEPROM_ADDR, 1);
if (Wire.available()) {
readData = Wire.read();
}
// 输出读取到的数据
Serial.print("Read data: ");
Serial.println(readData, HEX);
delay(1000); // 等待1秒后再次执行
}
```
在这个示例代码中,我们将Arduino Nano连接到M24C08芯片,并向EEPROM中写入数据,然后读取它。代码中使用了Arduino的Wire库来实现I2C通信。在setup函数中,我们初始化了I2C总线和串口。在loop函数中,我们首先定义了要写入EEPROM中的数据和地址,然后使用Wire库向EEPROM中写入数据。接着等待EEPROM写入完成后,再读取EEPROM中的数据并输出到串口中。最后,等待1秒后再次执行。