全部文档
OneOS简介 硬件支持 编译构造工具 API参考文档 高级语言 用户编程手册 应用笔记 FAQ

class machine.SPI

machine.SPI 类是machine模块下面的一个硬件类,用于对 SPI 的配置和控制,提供对 SPI 设备的操作方法。本文档中SPI类对象只支持硬件SPI的master模式。

常量

类型 常量名称 含义
高低位 SPI.MSB 设置从高位开始传输数据
SPI.LSB 设置从低位开始传输数据
电平 SPI.POLARITY_HIGH 设置时钟空闲时的电平为高电平
SPI.POLARITY_LOW 设置时钟空闲时的电平为低电平
相位 SPI.PHASE_0 相位为0,即为第一个边沿取数
SPI.PHASE_1 相位为1,即为第二个边沿取数

构造函数

构造函数 class machine.SPI(id)
功能 构造一个SPI对象
参数说明 id:SPI总线通道,如传入1表示spi1总线
返回值 返回构造的machine.SPI类对象

实例方法

​ machine. UART 类包括如下实例方法

方法名 说明
SPI.init() 初始化SPI总线
SPI.deinit() 关闭SPI总线
SPI.read() 读出n字节的同时不断的写入给定的单字节
SPI.readinto() 读出n字节到 buf 的同时不断地写入给定的单字节
SPI.write() 写入 buf 中包含的字节
SPI.write_readinto() 在读出数据到 readbuf 时,从 writebuf 中写入数据

详细说明如下:

方法名称 SPI.init(baudrate=1000000,*,polarity=SPI.POLARITY_LOW, phase= SPI.PHASE_0, bits=8, firstbit=SPI.MSB)
功能 根据参数初始化SPI配置
参数说明 baudrate:设置SPI波特率,默认1M; polarity:设置空闲时钟电平状态,可选SPI常量中电平部分相关常量,默认为低电平; phase:设置采样相位,可选SPI常量中相位部分相关常量,默认为第一个边沿取数; bits :设置每次传输的数据长度,默认为8位; firstbit:设置传输数据从高位开始还是从低位开始,默认为高位开始;
返回值 固定返回None

方法名称 SPI.deinit()
功能 关闭SPI总线
参数说明 无参数
返回值 固定返回None

​ 注:关闭SPI对象后,需重新init才能正常使用SPI对象。

方法名称 SPI.read(nbytes, write = 0x00, *, timeout=5000)
功能 读出n字节的同时不断的写入 write 给定的单字节
参数说明 nbytes:读取n个字节数; write:读取数据时写入的单字节数,默认为0;
返回值 返回一个存放着读出数据的字节对象
方法名称 SPI.readinto(buf, write=0x00, *, timeout=5000)
功能 读出 n 字节到 buf 的同时不断地写入 write 给定的单字节
参数说明 buf:保存读取到的数据,读取数据长度为buf的字节长度 write:读取数据时写入的单字节数
返回值 返回读入的字节数
方法名称 SPI.write(buf, *, timeout=5000)
功能 写入 buf 中包含的字节数据
参数说明 buf:欲写入的字节数据
返回值 返回写入的字节数
方法名称 SPI.write_readinto(write_buf, read_buf, *, timeout=5000)
功能 在读出数据到 readbuf 时,从 writebuf 中写入数据
参数说明 write_buf:欲写入的字节数据 read_buf:保存读取到的数据 两个缓冲区可以是相同的或不同,但是两个缓冲区必须具有相同的长度
返回值 返回读入的字节数

results matching ""

    No results matching ""

    返回顶部