STM32HAL I2C函数

8.5 使用IIC协议读写EEPROM 硬件方式实现 (HAL库)

**HAL_I2C_Mem_Write() : **

c 复制代码
/**
  * @brief  以阻塞模式向指定的内存地址写入数据
  * @param  hi2c 指向 I2C_HandleTypeDef 结构体的指针,包含指定 I2C 的配置信息
  * @param  DevAddress 目标设备地址:设备在数据手册中的 7 位地址值
  *         在调用该接口之前必须向左移一位
  * @param  MemAddress 内部存储器地址
  * @param  MemAddSize 内部存储器地址的大小
  * @param  pData 指向数据缓冲区的指针
  * @param  Size 要发送的数据量
  * @param  Timeout 超时时间
  * @retval HAL 状态
  */
HAL_StatusTypeDef HAL_I2C_Mem_Write(
    I2C_HandleTypeDef *hi2c, 
    uint16_t DevAddress, 
    uint16_t MemAddress, 
    uint16_t MemAddSize, 
    uint8_t *pData, 
    uint16_t Size, 
    uint32_t Timeout
)

**HAL_I2C_Mem_Read() : **

c 复制代码
/**
  * @brief  以阻塞模式从指定的内存地址读取数据
  * @param  hi2c 指向 I2C_HandleTypeDef 结构体的指针,包含指定 I2C 的配置信息
  * @param  DevAddress 目标设备地址:设备在数据手册中的 7 位地址值
  *         在调用该接口之前必须向左移一位
  * @param  MemAddress 内部存储器地址
  * @param  MemAddSize 内部存储器地址的大小
  * @param  pData 指向数据缓冲区的指针
  * @param  Size 要读取的数据量
  * @param  Timeout 超时时间
  * @retval HAL 状态
  */
HAL_StatusTypeDef HAL_I2C_Mem_Read(
    I2C_HandleTypeDef *hi2c, 
    uint16_t DevAddress, 
    uint16_t MemAddress, 
    uint16_t MemAddSize, 
    uint8_t *pData, 
    uint16_t Size, 
    uint32_t Timeout
);
相关推荐
SundayBear2 小时前
基于STM32的RT-Thread移植
单片机·嵌入式硬件
R6bandito_3 小时前
STM32中printf的重定向详解
开发语言·经验分享·stm32·单片机·嵌入式硬件·mcu
清风6666664 小时前
基于单片机的元胞自动机仿真系统设计
单片机·嵌入式硬件·毕业设计·课程设计
千千道4 小时前
利用keil +RASC给瑞萨RA8D1编译烧写程序
单片机·嵌入式硬件·mcu·物联网
武文斌774 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
充哥单片机设计4 小时前
【STM32项目开源】基于STM32的智能家居安防系统
stm32·嵌入式硬件·智能家居
点灯小铭5 小时前
基于单片机的N型热电偶PID锅炉温度控制系统
单片机·嵌入式硬件·毕业设计·课程设计
GilgameshJSS5 小时前
STM32H743-ARM例程15-RTC
c语言·arm开发·stm32·实时音视频
机器视觉知识推荐、就业指导7 小时前
STM32 外设驱动模块【含代码】:SG90 舵机模块
stm32·单片机·嵌入式硬件·学习
北京迅为7 小时前
【北京迅为】iTOP-4412精英版使用手册-第三十五章 WEB控制LED
linux·嵌入式硬件·嵌入式·4412