目录
一、MX配置
如果片选引脚没有连接 SPI1_NSS(PA4),则需要选择软件片选
左键对应的软件片选引脚,选择GPIO_Output
二、生成的代码
1. <spi.c> 初始化配置
2. <main.h> 片选引脚用户标识定义
三、使用
1. 片选引脚
//以W25Q128为例
#define W25Qx_Enable() HAL_GPIO_WritePin(SPI1_CS_GPIO_Port, SPI1_CS_Pin, GPIO_PIN_RESET)
#define W25Qx_Disable() HAL_GPIO_WritePin(SPI1_CS_GPIO_Port, SPI1_CS_Pin, GPIO_PIN_SET)
2. 通信函数
//HAL_SPI_Transmit(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size, uint32_t Timeout)
HAL_SPI_Transmit(&hspi1, cmd, 1, 1000);
//HAL_SPI_Receive(SPI_HandleTypeDef *hspi, uint8_t *pData, uint16_t Size, uint32_t Timeout)
HAL_SPI_Receive(&hspi1, pData, Size, 1000);
参考(举例W25Q128):
STM32CubeMX系列教程11:串行外设接口SPI(二)