请选择 进入手机版 | 继续访问电脑版
    查看: 618|回复: 4

    [经验分享] 基于ESP32 Arduino I2C使用的一个例子

    [复制链接]

    签到天数: 178 天

    [LV.7]化身百千

    发表于 2018-10-10 17:41:30 | 显示全部楼层 |阅读模式
    1. #include <Wire.h>
    2. void setup() {
    3. // 启动 i2c 总线
    4. Wire.begin();
    5. // 初始化串口
    6. Serial.begin(9600);
    7. }
    8. int reading = 0;
    9. void loop() {
    10. // step 1: 启动与从设备 #112 0x70 的数据交互
    11. Wire.beginTransmission(112);
    12. // 发送数据
    13. Wire.write(byte(0x00));
    14. Wire.write(byte(0x50));
    15. // 结束通信
    16. Wire.endTransmission();
    17. // step 2: 等待读数据
    18. delay(70);
    19. // step 3: 读取指定寄存器
    20. Wire.beginTransmission(112);
    21. Wire.write(byte(0x02));
    22. Wire.endTransmission();
    23. // step 4: 请求读 2 字节数据
    24. Wire.requestFrom(112, 2);
    25. // step 5: 接收数据
    26. if (2 <= Wire.available()) {
    27. reading = Wire.read();
    28. reading = reading << 8;
    29. reading |= Wire.read();
    30. Serial.println(reading);
    31. }
    32. delay(250);
    33. }
    复制代码




    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    返回顶部