XFusion API v1.3.0
载入中...
搜索中...
未找到
xf_hal_i2c.c 文件参考
#include "xf_hal_i2c.h"
#include "../kernel/xf_hal_dev.h"
xf_hal_i2c.c 的引用(Include)关系图:

浏览源代码.

结构体

struct  _xf_hal_i2c_t
 

宏定义

#define TAG   "hal_i2c"
 
#define XF_HAL_I2C_TYPE   XF_HAL_I2C
 
#define XF_HAL_I2C_CHECK(condition, retval, format, ...)    XF_CHECK(condition, retval, TAG, format, ##__VA_ARGS__)
 

类型定义

typedef struct _xf_hal_i2c_t xf_hal_i2c_t
 

函数

static xf_hal_dev_ti2c_constructor (xf_i2c_num_t i2c_num)
 
xf_err_t xf_hal_i2c_register (const xf_driver_ops_t *driver_ops)
 i2c 设备注册。
 
xf_err_t xf_hal_i2c_init (xf_i2c_num_t i2c_num, xf_hal_i2c_hosts_t hosts, uint32_t speed)
 i2c 初始化函数。使用 i2c 之前必须要进行初始化。
 
xf_err_t xf_hal_i2c_deinit (xf_i2c_num_t i2c_num)
 i2c 反初始化函数,恢复到未初始化状态且回收相关资源。
 
xf_err_t xf_hal_i2c_enable (xf_i2c_num_t i2c_num)
 i2c 启用函数。i2c 配置好功能后,可以调用 i2c 启用函数进行激活。
 
xf_err_t xf_hal_i2c_disable (xf_i2c_num_t i2c_num)
 i2c 禁用函数。
 
xf_err_t xf_hal_i2c_set_gpio (xf_i2c_num_t i2c_num, xf_gpio_num_t scl_num, xf_gpio_num_t sda_num)
 i2c 设置 gpio。
 
xf_err_t xf_hal_i2c_set_address_width (xf_i2c_num_t i2c_num, xf_hal_i2c_address_width_t address_width)
 i2c 设置地址宽度。
 
xf_err_t xf_hal_i2c_set_address (xf_i2c_num_t i2c_num, uint16_t address)
 i2c 设置 i2c 从机地址。
 
xf_err_t xf_hal_i2c_set_mem_addr_width (xf_i2c_num_t i2c_num, xf_hal_i2c_mem_addr_width_t mem_addr_width)
 i2c 设置 i2c 内存地址宽度。
 
int xf_hal_i2c_write_mem (xf_i2c_num_t i2c_num, uint32_t mem_addr, const uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
 i2c 指定从机内存写入。
 
int xf_hal_i2c_read_mem (xf_i2c_num_t i2c_num, uint32_t mem_addr, uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
 i2c 指定从机内存读取。
 
int xf_hal_i2c_write (xf_i2c_num_t i2c_num, const uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
 i2c 写入数据。
 
int xf_hal_i2c_read (xf_i2c_num_t i2c_num, uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
 i2c 读取数据。
 

详细描述

作者
cangyu (sky.k.nosp@m.irto.nosp@m.@qq.c.nosp@m.om)
版本
0.1
日期
2024-05-16

在文件 xf_hal_i2c.c 中定义.

宏定义说明

◆ TAG

#define TAG   "hal_i2c"

在文件 xf_hal_i2c.c22 行定义.

◆ XF_HAL_I2C_TYPE

#define XF_HAL_I2C_TYPE   XF_HAL_I2C

在文件 xf_hal_i2c.c23 行定义.

◆ XF_HAL_I2C_CHECK

#define XF_HAL_I2C_CHECK (   condition,
  retval,
  format,
  ... 
)     XF_CHECK(condition, retval, TAG, format, ##__VA_ARGS__)

在文件 xf_hal_i2c.c40 行定义.

类型定义说明

◆ xf_hal_i2c_t

typedef struct _xf_hal_i2c_t xf_hal_i2c_t

函数说明

◆ i2c_constructor()

static xf_hal_dev_t * i2c_constructor ( xf_i2c_num_t  i2c_num)
static

在文件 xf_hal_i2c.c380 行定义.

◆ xf_hal_i2c_register()

xf_err_t xf_hal_i2c_register ( const xf_driver_ops_t driver_ops)

i2c 设备注册。

参数
driver_ops驱动操作集。
返回
xf_err_t
  • XF_OK 成功
  • XF_ERR_INVALID_ARG 无效参数
  • XF_FAIL 失败

在文件 xf_hal_i2c.c45 行定义.