芯科BG22学习笔记:7-如何添加SPI
实验目的:BG22芯片添加SPI功能
实验环境:Simplicity Studio V5
实验器材:Wireless Starter Kit Mainboard (BRD4001A Rev A01) + EFR32xG22 2.4 GHz 6 dBm QFN32 Radio Board (BRD4183A)
实验开始:
1. 新建工程,蓝牙工程输入soc empty, 普通MCU工程输入empty c
2. 打开SOFTWARE COMPONENTS,搜索对话框输入spi,点击Install
名字使用默认,点击完成
点击配置SPI
配置SPI
BG22的SPI有两组,一组是USART0,另一组是USART1,可以参考BG22的数据手册
选择使用哪个模块作为SPI
配置相应的管脚CS片选信号、CLK时钟信号、MISO主收从发信号和MOSI主发从收信号
此时我们可以打开pintool工具检查管脚配置状态:
3. 在app.c文件加入头文件
#include "sl_spidrv_instances.h"
4. app.c中添加如下例程
uint8_t txBuffer[3]; uint8_t rxBuffer[3]; //单发送2个字节的数据 SPIDRV_MTransmitB(sl_spidrv_inst_handle, txBuffer, 2); //发并收3个字节的数据 SPIDRV_MTransferB(sl_spidrv_inst_handle, txBuffer, rxBuffer, 3);
完