12#ifndef __XF_HAL_SPI_H__
13#define __XF_HAL_SPI_H__
28#if XF_HAL_SPI_IS_ENABLE
uint32_t xf_gpio_num_t
gpio 序号。
xf_err_t xf_hal_spi_enable(xf_spi_num_t spi_num)
spi 启用函数。
_xf_hal_spi_cmd_t
用于对接 spi 设置的命令。
xf_err_t xf_hal_spi_set_mode(xf_spi_num_t spi_num, xf_hal_spi_mode_t mode)
设置 spi 模式。
enum _xf_hal_spi_bit_order_t xf_hal_spi_bit_order_t
spi 传输位顺序。
_xf_hal_spi_data_width_t
spi 传输数据位宽。
int xf_hal_spi_write(xf_spi_num_t spi_num, const uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
spi 写入数据函数。
void(* xf_hal_spi_cb_t)(xf_spi_num_t spi_num, void *user_data)
spi 回调函数原型。
xf_err_t xf_hal_spi_set_gpio(xf_spi_num_t spi_num, const xf_hal_spi_gpio_t *spi_gpio)
设置 spi 的输出 io。
xf_err_t xf_hal_spi_disable(xf_spi_num_t spi_num)
spi 禁用函数。
enum _xf_hal_spi_hosts_t xf_hal_spi_hosts_t
spi 的主从模式。
_xf_hal_spi_hosts_t
spi 的主从模式。
struct _xf_hal_spi_config_t xf_hal_spi_config_t
用于对接 SPI 设置的参数。
enum _xf_hal_spi_mode_t xf_hal_spi_mode_t
spi 模式。
uint32_t xf_spi_num_t
spi 序号。
enum _xf_hal_spi_cmd_t xf_hal_spi_cmd_t
用于对接 spi 设置的命令。
xf_err_t xf_hal_spi_set_data_width(xf_spi_num_t spi_num, xf_hal_spi_data_width_t data_width)
设置 spi 的传输数据宽度。
int xf_hal_spi_read(xf_spi_num_t spi_num, uint8_t *buffer, uint32_t size, uint32_t timeout_ms)
spi 读取数据函数。
xf_err_t xf_hal_spi_set_post_cb(xf_spi_num_t spi_num, xf_hal_spi_cb_t callback, void *user_data)
设置 spi 传输后回调。
xf_err_t xf_hal_spi_set_speed(xf_spi_num_t spi_num, uint32_t speed)
设置 spi 的传输速度。
xf_err_t xf_hal_spi_init(xf_spi_num_t spi_num, xf_hal_spi_hosts_t hosts, uint32_t speed)
spi 初始化函数。
struct _xf_hal_spi_gpio_t xf_hal_spi_gpio_t
spi 的引脚设置。
enum _xf_hal_spi_data_width_t xf_hal_spi_data_width_t
spi 传输数据位宽。
xf_err_t xf_hal_spi_set_prev_cb(xf_spi_num_t spi_num, xf_hal_spi_cb_t callback, void *user_data)
设置 spi 传输前回调。
struct _xf_hal_spi_callback_t xf_hal_spi_callback_t
spi 的回调函数结构体。
xf_err_t xf_hal_spi_set_bit_order(xf_spi_num_t spi_num, xf_hal_spi_bit_order_t bit_order)
设置 spi 输出的字节序。
_xf_hal_spi_mode_t
spi 模式。
xf_err_t xf_hal_spi_deinit(xf_spi_num_t spi_num)
spi 反初始化函数。
_xf_hal_spi_bit_order_t
spi 传输位顺序。
@ XF_HAL_SPI_CMD_DATA_WIDTH
@ XF_HAL_SPI_CMD_BIT_ORDER
@ XF_HAL_SPI_DATA_WIDTH_32_BITS
@ XF_HAL_SPI_DATA_WIDTH_16_BITS
@ _XF_HAL_SPI_DATA_WIDTH_BASE
@ _XF_HAL_SPI_DATA_WIDTH_MAX
@ XF_HAL_SPI_DATA_WIDTH_8_BITS
@ XF_HAL_SPI_HOSTS_MASTER
@ _XF_HAL_SPI_BIT_ORDER_MAX
@ _XF_HAL_SPI_BIT_ORDER_BASE
@ XF_HAL_SPI_BIT_ORDER_MSB_FIRST
@ XF_HAL_SPI_BIT_ORDER_LSB_FIRST
int32_t xf_err_t
整形错误类型。 错误码具体值见 xf_err_code_t.
xf_hal_spi_callback_t post_cb
xf_hal_spi_callback_t prev_cb
xf_hal 设备配置(仅 xf_hal device 内部使用)。
xf_hal 的 gpio(通用输入输出) 设备抽象。