WS63 SDK 文档 7021f4f@fbb_ws63
ws63 和 ws63e 解决方案的 SDK 文档
载入中...
搜索中...
未找到
hal_i2c.h 文件参考
#include <stdint.h>
#include "errcode.h"
#include "i2c_porting.h"
hal_i2c.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

结构体

struct  hal_i2c_prepare_config
 I2C准备收发的参数数据结构定义。 更多...
 
struct  hal_i2c_buffer_wrap
 I2C缓存数据封装数据结构定义。 更多...
 

宏定义

#define I2C_SS_MODE_BAUDRATE_HIGH_LIMIT   (100 * 1000)
 
#define I2C_FS_MODE_BAUDRATE_HIGH_LIMIT   (400 * 1000)
 
#define I2C_HS_MODE_BAUDRATE_HIGH_LIMIT   (3400 * 1000)
 
#define I2C_HS_MODE_MASTER_CODE_MAX   7
 

类型定义

typedef enum hal_i2c_speed_mode hal_i2c_speed_mode_t
 I2C速率模式定义
 
typedef enum hal_i2c_data_operation_type hal_i2c_data_operation_type_t
 I2C数据操作类型定义。
 
typedef enum hal_i2c_evt_id hal_i2c_evt_id_t
 I2C事件ID的定义。
 
typedef enum hal_i2c_ctrl_id hal_i2c_ctrl_id_t
 I2C控制ID定义。
 
typedef struct hal_i2c_prepare_config hal_i2c_prepare_config_t
 I2C准备收发的参数数据结构定义。
 
typedef struct hal_i2c_buffer_wrap hal_i2c_buffer_wrap_t
 I2C缓存数据封装数据结构定义。
 
typedef errcode_t(* hal_i2c_callback_t) (i2c_bus_t bus, hal_i2c_evt_id_t evt, uintptr_t param)
 I2C的回调函数
 

枚举

enum  hal_i2c_speed_mode {
  I2C_SPEED_MODE_HARDCODE = 0 , I2C_SPEED_MODE_SS = 0 , I2C_SPEED_MODE_FS , I2C_SPEED_MODE_HS ,
  I2C_SPEED_MODE_MAX_NUM
}
 I2C速率模式定义 更多...
 
enum  hal_i2c_data_operation_type { I2C_DATA_OPERATION_TYPE_POLL , I2C_DATA_OPERATION_TYPE_INT , I2C_DATA_OPERATION_TYPE_DMA , I2C_DATA_OPERATION_TYPE_INVLAID }
 I2C数据操作类型定义。 更多...
 
enum  hal_i2c_evt_id {
  I2C_EVT_TX_READY = 0 , I2C_EVT_RX_READY , I2C_EVT_TX_AVAILABLE , I2C_EVT_TRANSMITION_START ,
  I2C_EVT_TRANSMITION_DONE , I2C_EVT_TRANSMITION_ABRT , I2C_EVT_TRANSMITION_BUSY , I2C_EVT_INVALID = 0xF
}
 I2C事件ID的定义。 更多...
 
enum  hal_i2c_ctrl_id {
  I2C_CTRL_WRITE_PREPARE = 0 , I2C_CTRL_WRITE_RESTORE , I2C_CTRL_READ_PREPARE , I2C_CTRL_READ_RESTORE ,
  I2C_CTRL_GET_WRITE_NUM , I2C_CTRL_GET_READ_NUM , I2C_CTRL_CHECK_TX_AVAILABLE , I2C_CTRL_CHECK_RX_AVAILABLE ,
  I2C_CTRL_FLUSH_RX_FIFO , I2C_CTRL_CHECK_TX_PROCESS_DONE , I2C_CTRL_CHECK_RX_PROCESS_DONE , I2C_CTRL_CHECK_RESTART_READY ,
  I2C_CTRL_NORMAL_MAX = I2C_CTRL_CHECK_RESTART_READY , I2C_CTRL_CHECK_TRANSMIT_ABRT , I2C_CTRL_GET_DMA_DATA_ADDR , I2C_CTRL_CHECK_TX_FIFO_EMPTY ,
  I2C_CTRL_MAX , I2C_CTRL_ID_INVALID = 0x1F
}
 I2C控制ID定义。 更多...
 

函数

errcode_t hal_i2c_master_init (i2c_bus_t bus, uint32_t baudrate, uint8_t hscode, hal_i2c_callback_t callback)
 HAL层I2C初始化为主机。
 
errcode_t hal_i2c_slave_init (i2c_bus_t bus, uint32_t baudrate, uint16_t addr, hal_i2c_callback_t callback)
 HAL层I2C初始化为主机。
 
errcode_t hal_i2c_deinit (i2c_bus_t bus)
 HAL层I2C去初始化接口
 
errcode_t hal_i2c_ctrl (i2c_bus_t bus, hal_i2c_ctrl_id_t id, uintptr_t param)
 HAL层I2C控制接口。
 
errcode_t hal_i2c_write (i2c_bus_t bus, hal_i2c_buffer_wrap_t *data)
 HAL层I2C发送数据接口。
 
errcode_t hal_i2c_read (i2c_bus_t bus, hal_i2c_buffer_wrap_t *data)
 HAL层I2C读取数据接口。