RT-Thread: STM32 SPI使用流程

1.添加驱动

①点开设置界面

②勾选看门 SPI 驱动

③点击保存

④查看添加的驱动文件 drv_spi.c

2.打开驱动头文件定义

①打开配置文件

②打开定义

3.打开需要开启的SPI总线

打开 drivers 目录下的 board.h 用SPI搜索,找到如下文字,打开对应的宏。

cpp 复制代码
/*-------------------------- SPI CONFIG BEGIN --------------------------*/

/** if you want to use spi bus you can use the following instructions.
 *
 * STEP 1, open spi driver framework support in the RT-Thread Settings file
 *
 * STEP 2, define macro related to the spi bus
 *                 such as     #define BSP_USING_SPI1
 *
 * STEP 3, copy your spi init function from stm32xxxx_hal_msp.c generated by stm32cubemx to the end of board.c file
 *                 such as     void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
 *
 * STEP 4, modify your stm32xxxx_hal_config.h file to support spi peripherals. define macro related to the peripherals
 *                 such as     #define HAL_SPI_MODULE_ENABLED
 */

/*#define BSP_USING_SPI1*/
#define BSP_USING_SPI2
/*#define BSP_USING_SPI3*/

4.查看设备

添加好后,把程序编译,并下载到mcu,在系统启动到输出 mch 时,通过串口发送命令 list_device,系统会回复 设备清单,如下图 sp1,sp2就是新增的设备。

5.打开STM32CubeMX配置初始化代码

①在时钟已经配好的情况下进行如下操作

②根据硬件接口选择SPI对应的管脚

③配置SPI

输出项目设置

代码生成器 设置

生成代码.

打开文件夹找到代码生成目录:

需要的代码在如下②,③文件,也有可能因为选择项的不同生成的文件是独立 spi.c

6.把生成的驱动添加到工程

相关推荐
Bardb几秒前
01-STM32基本知识点和keil5的安装
stm32·c#
迷路的小灰仔21 分钟前
ESP32 搭建IDF+Vscode环境(详细教程)
c语言·arm开发·单片机·mcu·物联网·visual studio·iot
补三补四1 小时前
蓝耘平台介绍:算力赋能AI创新的智算云平台
人工智能·嵌入式硬件·深度学习·机器学习·visual studio
国科安芯2 小时前
高安全低功耗MCU:机器人控制系统的智能化与可靠性提升
单片机·安全·机器人
时光の尘3 小时前
FreeRTOS菜鸟入门(七)·创建任务·静态任务创建
c语言·stm32·单片机·嵌入式硬件·freertos
define菜鸟#4 小时前
51单片机实验四:键盘检测原理及应用实现
单片机·嵌入式硬件
lin辰傍边的风6 小时前
关于STM32G030和G070未初始化看门狗,程序里面喂狗会导致擦除Flash失败或进入‘HardFault_Handler’
stm32·单片机·嵌入式硬件
冻结的鱼7 小时前
STM32N6 平台如何使用 MCO2 输出 Clock
stm32·单片机·嵌入式硬件
FreakStudio8 小时前
一文速通Python并行计算:09 Python多进程编程-进程之间的数据同步-基于互斥锁、递归锁、信号量、条件变量、事件和屏障
单片机·嵌入式·大学生·面向对象·多进程·技术栈·并行计算·电子diy
Rousson8 小时前
硬件学习笔记--57 MCU相关资源介绍
笔记·单片机·mcu·学习