这是最新(主)开发分支的文档。如果您正在查找以前版本的文档,使用左侧的下拉菜单选择所需的版本。

SPI Master

简介

SPI(Serial Peripheral Interface)是一种常用的串行通信协议,主要用于微控制器和各种外围设备之间的数据传输。它是一种全双工通信方式,允许数据同时在两个方向上传输。 在开始 AT 命令之前,需提前将 SPI master 和 SPI slave 连接好

功能列表

  1. AT+DRVSPIMCONFGPIO: 配置 SPI GPIO

  2. AT+DRVSPIMINIT: 初始化SPI Master驱动

  3. AT+DRVSPIMRD: 读取 SPI 数据

  4. AT+DRVSPIMWR: 写入 SPI 数据

功能概述

AT+DRVSPIMCONFGPIO: 配置 SPI GPIO

设置命令

命令:

AT+DRVSPIMCONFGPIO=<mosi>,<miso>,<sclk>,<cs>

响应:

OK

参数

  • <mosi>: 主设备到从设备的数据线

  • <miso>: 从设备到主设备的数据线

  • <sclk>: 主设备生成的时钟信号线

  • <cs>: 用于选择特定的从设备

示例

AT+DRVSPIMCONFGPIO=7,16,17,0 //配置 mosi:GPIO7, miso:GPIO16, sclk:GPIO17, cs:GPIO0,

AT+DRVSPIMINIT: 初始化 SPI 主机驱动

设置命令

命令:

AT+DRVSPIMINIT=<clock>,<mode>

响应:

OK

参数

  • <clock>: 时钟速度,目前支持1MHz,2MHz,3MHz,4MHz,5MHz,6MHz,10MHz,20MHz

  • <mode>: SPI 模式,范围:0 ~ 3

说明

  • 需在 SPI 初始化前配置 SPI GPIO

示例

AT+DRVSPIMINIT=2,0  //设置 SPI 模式为 0, 2MHz clock

AT+DRVSPIMRD: 读取 SPI 数据

设置命令

命令:

AT+DRVSPIMRD=<data_len>

响应:

OK

参数

  • <data_len>: 读取数据长度

示例

AT+DRVSPIRD=10  // 读取 10 字节数据

AT+DRVSPIMWR: 写入 SPI 数据

设置命令

命令:

AT+DRVSPIMWR=<data_len>

响应:

OK

参数

  • <data_len>: 写入数据长度

示例

AT+DRVSPIMWR=10  // 写入 10 字节数据