打印
[PIC®/AVR®/dsPIC®产品]

Arduino下使用I2C读写FM24C02C两线制EEPROM

[复制链接]
940|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
AVR很适合用Arduino开发,可以使用通用的编程规范与库函数。
#include "Wire.h"

#define I2C_DEV_ADDR 0x50


uint8_t read_fm24c02(uint8_t reg)
{
  uint8_t dat=0;
  Wire.beginTransmission(I2C_DEV_ADDR);
  Wire.write(reg);
  Wire.endTransmission();  
  Wire.requestFrom(I2C_DEV_ADDR,1);
  if (Wire.available())
  {
    dat = Wire.read();          // 读取数据字节
  }
  return dat;
}

void write_fm24c02(uint8_t reg,uint8_t dat)
{
  Wire.beginTransmission(I2C_DEV_ADDR);
  Wire.write(reg);
  Wire.write(dat);
  Wire.endTransmission();
}

void setup()
{
  Serial.begin(115200);
  Wire.begin();
  write_fm24c02(11,0xF0);
  for(uint8_t i=0;i<0xFF;i++)
  {
    Serial.print("REG[");Serial.print(i);Serial.print("]= 0x");Serial.println(read_fm24c02(i),HEX);   
  }
}

void loop()
{

}
测试数据

执行效果非常好。

使用特权

评论回复
沙发
gaoyang9992006|  楼主 | 2023-11-26 12:39 | 只看该作者

地址与写时序

使用特权

评论回复
板凳
gaoyang9992006|  楼主 | 2023-11-26 12:39 | 只看该作者
读时序

使用特权

评论回复
地板
Bowclad| | 2023-11-27 14:03 | 只看该作者
感觉avr也就在arduino上用的多了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:如果你觉得我的分享或者答复还可以,请给我点赞,谢谢。

1974

主题

15994

帖子

210

粉丝