结构体

struct  aos_spi_msg_t
 

宏定义

#define AOS_SPI_MCFG_MODE_MASK   ((uint32_t)0x3 << 0)
 
#define AOS_SPI_MCFG_MODE_0   ((uint32_t)0x0 << 0)
 
#define AOS_SPI_MCFG_MODE_1   ((uint32_t)0x1 << 0)
 
#define AOS_SPI_MCFG_MODE_2   ((uint32_t)0x2 << 0)
 
#define AOS_SPI_MCFG_MODE_3   ((uint32_t)0x3 << 0)
 
#define AOS_SPI_MCFG_WIDTH_MASK   ((uint32_t)0x3 << 2)
 
#define AOS_SPI_MCFG_WIDTH_1   ((uint32_t)0x0 << 2)
 
#define AOS_SPI_MCFG_WIDTH_2   ((uint32_t)0x1 << 2)
 
#define AOS_SPI_MCFG_WIDTH_4   ((uint32_t)0x2 << 2)
 
#define AOS_SPI_MCFG_WIDTH_8   ((uint32_t)0x3 << 2)
 
#define AOS_SPI_MCFG_MSB_FIRST   ((uint32_t)0x0 << 4)
 
#define AOS_SPI_MCFG_LSB_FIRST   ((uint32_t)0x1 << 4)
 
#define AOS_SPI_MSG_INIT_VAL
 
#define aos_spi_msg_init(x)   do { *(x) = (aos_spi_msg_t)AOS_SPI_MSG_INIT_VAL; } while (0)
 

类型定义

typedef aos_dev_ref_t aos_spi_ref_t
 

函数

aos_status_t aos_spi_get (aos_spi_ref_t *ref, uint32_t id)
 Get a SPI device. 更多...
 
void aos_spi_put (aos_spi_ref_t *ref)
 Release a SPI device. 更多...
 
aos_status_t aos_spi_transfer (aos_spi_ref_t *ref, const aos_spi_msg_t *msgs, size_t num_msgs)
 Synchronous SPI data transfer. 更多...
 

详细描述

给应用提供SPI操作的AOS API.

宏定义说明

◆ AOS_SPI_MCFG_LSB_FIRST

#define AOS_SPI_MCFG_LSB_FIRST   ((uint32_t)0x1 << 4)

在文件 spi.h29 行定义.

◆ AOS_SPI_MCFG_MODE_0

#define AOS_SPI_MCFG_MODE_0   ((uint32_t)0x0 << 0)

在文件 spi.h19 行定义.

◆ AOS_SPI_MCFG_MODE_1

#define AOS_SPI_MCFG_MODE_1   ((uint32_t)0x1 << 0)

在文件 spi.h20 行定义.

◆ AOS_SPI_MCFG_MODE_2

#define AOS_SPI_MCFG_MODE_2   ((uint32_t)0x2 << 0)

在文件 spi.h21 行定义.

◆ AOS_SPI_MCFG_MODE_3

#define AOS_SPI_MCFG_MODE_3   ((uint32_t)0x3 << 0)

在文件 spi.h22 行定义.

◆ AOS_SPI_MCFG_MODE_MASK

#define AOS_SPI_MCFG_MODE_MASK   ((uint32_t)0x3 << 0)

在文件 spi.h18 行定义.

◆ AOS_SPI_MCFG_MSB_FIRST

#define AOS_SPI_MCFG_MSB_FIRST   ((uint32_t)0x0 << 4)

在文件 spi.h28 行定义.

◆ AOS_SPI_MCFG_WIDTH_1

#define AOS_SPI_MCFG_WIDTH_1   ((uint32_t)0x0 << 2)

在文件 spi.h24 行定义.

◆ AOS_SPI_MCFG_WIDTH_2

#define AOS_SPI_MCFG_WIDTH_2   ((uint32_t)0x1 << 2)

在文件 spi.h25 行定义.

◆ AOS_SPI_MCFG_WIDTH_4

#define AOS_SPI_MCFG_WIDTH_4   ((uint32_t)0x2 << 2)

在文件 spi.h26 行定义.

◆ AOS_SPI_MCFG_WIDTH_8

#define AOS_SPI_MCFG_WIDTH_8   ((uint32_t)0x3 << 2)

在文件 spi.h27 行定义.

◆ AOS_SPI_MCFG_WIDTH_MASK

#define AOS_SPI_MCFG_WIDTH_MASK   ((uint32_t)0x3 << 2)

在文件 spi.h23 行定义.

◆ aos_spi_msg_init

#define aos_spi_msg_init (   x)    do { *(x) = (aos_spi_msg_t)AOS_SPI_MSG_INIT_VAL; } while (0)

在文件 spi.h60 行定义.

◆ AOS_SPI_MSG_INIT_VAL

#define AOS_SPI_MSG_INIT_VAL
值:
{ \
.cfg = 0, \
.cs = 0, \
.hz = 0, \
.pre_cs = 0, \
.post_cs = 0, \
.pre_clk = 0, \
.post_clk = 0, \
.count = 0, \
.rx_buf = NULL, \
.tx_buf = NULL, \
}

在文件 spi.h46 行定义.

类型定义说明

◆ aos_spi_ref_t

typedef aos_dev_ref_t aos_spi_ref_t

在文件 spi.h31 行定义.

函数说明

◆ aos_spi_get()

aos_status_t aos_spi_get ( aos_spi_ref_t ref,
uint32_t  id 
)

Get a SPI device.

参数
[out]refSPI ref to operate
[in]idSPI device ID
返回
0: on success; < 0: on failure

◆ aos_spi_put()

void aos_spi_put ( aos_spi_ref_t ref)

Release a SPI device.

参数
[in]refSPI ref to operate
返回
None

◆ aos_spi_transfer()

aos_status_t aos_spi_transfer ( aos_spi_ref_t ref,
const aos_spi_msg_t msgs,
size_t  num_msgs 
)

Synchronous SPI data transfer.

参数
[in]refSPI ref to operate
[in]msgsarray of messages
[in]num_msgsnumber of messages
返回
0: on success; < 0: on failure