准备硬件

SCL,SDA默认引脚画反了,但是ESP8266的i2c引脚是可以任意的GPIO口。

这个是实物啦
代码
在SDK基础上照猫画虎…
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#include "driver/uart.h"
#include "driver/i2c.h"
#define GPIO_LED_PIN 16
#define GPIO_RLY_PIN 12
#define GPIO_DIR_PIN 5
#define GPIO_OUTPUT_PIN_SEL ((1ULL << GPIO_LED_PIN) | (1ULL << GPIO_RLY_PIN)|(1ULL << GPIO_DIR_PIN))
//i2c
#define I2C_MASTER_SCL_IO 14 /*!< gpio number for I2C master clock */
#define I2C_MASTER_SDA_IO 2 /*!< gpio number for I2C master data */
#define ACK_CHECK_EN 0x1 /*!< I2C master will check ack from slave*/
#define ACK_CHECK_DIS 0x0 /*!< I2C master will not check ack from slave */
#define ACK_VAL 0x0 /*!< I2C ack value */

该博客介绍了如何在ESP8266上通过I2C协议初始化和操作AT24CXX存储器,包括设置I2C引脚、配置I2C接口、读写数据的函数实现,并展示了向0x0010地址写入数据0x33然后读取并经UART发送的测试代码。
最低0.47元/天 解锁文章
8957

被折叠的 条评论
为什么被折叠?



