SPIClass(uint32 spiPortNumber)
构造函数,定义SPI接口
参数
spiPortNumber
SPI
接口编号(零知-标准板由两个,编号为 1
、2
)
返回值
无
void attachInterrupt(void)
参数
返回值
void begin(void)
初始化总线
参数
返回值
void beginSlave(uint32 bitOrder, uint32 mode)
初始化总线,并作为从机
参数
bitOrder
传输的字节序,LSBFIRST
或 MSBFIRST
mode
使用的模式,SPI_MODE_0
、SPI_MODE_1
、SPI_MODE_2
、SPI_MODE_3
返回值
void beginSlave(void)
初始化总线,并作为从机,相当于 beginSlave(MSBFIRST, 0)
参数
返回值
void beginTransaction(SPISettings settings)
使用 SPISettings
初始化总线,例如:beginTransaction(SPISettings(14000000, MSBFIRST, SPI_MODE0))
参数
settings
设置参数
返回值
无
void beginTransaction(uint8_t pin, SPISettings settings)
使用 SPISettings
初始化总线
参数
pin
片选引脚,其他参数同上
返回值
无
void beginTransactionSlave(SPISettings settings)
使用 SPISettings
初始化总线,作为从机
参数
返回值
void detachInterrupt(void)
参数
返回值
uint8 dmaSend(const void * transmitBuf, uint16 length, bool minc = 1)
使用DMA进行传输
参数
transmitBuf
要传输的数据
length
传输的数据量
minc
内存增长方式
返回值
uint8 dmaSendAsync(const void * transmitBuf, uint16 length, bool minc = 1)
同上
参数
返回值
uint8 dmaSendRepeat(uint16 length)
同上
参数
返回值
void dmaSendSet(const void * transmitBuf, bool minc)
同上
参数
返回值
uint8 dmaTransfer(const void transmitBuf, void receiveBuf, uint16 length)
使用DMA进行数据的发送接收
参数
transmitBuf
传输的数据
receiveBuf
保存接收的数据
length
传输的数据量
返回值
uint8 dmaTransferRepeat(uint16 length)
同上
参数
返回值
void dmaTransferSet(const void transmitBuf, void receiveBuf)
同上
参数
返回值
void end(void)
停止
参数
返回值
void endTransaction(void)
停止传输,停止使用总线以便其他库来使用SPI
总线
参数
返回值
uint8 misoPin(void)
返回MISO
引脚编号
参数
返回值
uint8 mosiPin(void)
返回MOSI
引脚编号
参数
返回值
uint8 nssPin(void)
返回NSS
引脚编号
参数
返回值
uint16 read(void)
读取下一个还没由读取的数据
参数
返回值
void read(uint8 *buffer, uint32 length)
读取指定长度的数据
参数
buffer
存放读取的数据
length
读取数据的长度
返回值
uint8 sckPin(void)
返回SCK
引脚编号
参数
返回值
void setBitOrder(BitOrder bitOrder)
设置传输的字节序,LSBFIRST
或 MSBFIRST
参数
返回值
void setClockDivider(uint32_t clockDivider)
设置总线的时钟分频
参数
返回值
void setDataMode(uint8_t dataMode)
设置模式,SPI_MODE_0
、SPI_MODE_1
、SPI_MODE_2
、SPI_MODE_3
参数
返回值
void setDataSize(uint32 ds)
设置数据位数为8或16
参数
返回值
uint8 transfer(uint8 data) const
数据的发送和接收
参数
要发送的数据
返回值
接收的数据
uint16_t transfer16(uint16_t data) const
数据的发送和接收
参数
要发送的数据
返回值
接收的数据
void write(uint16 data)
写入数据
参数
返回值
void write(uint16 data, uint32 n)
写入指定次数的数据
参数
返回值
void write(const void * buffer, uint32 length)
写入指定长度的数据数组
参数
返回值
void write16(uint16 data)
在8
位模式时写入2
个字节数据
参数
返回值