STM32CubeIDE HAL库实现SPI通信

目录

一、MX配置

二、生成的代码

三、使用

1. 片选引脚

2. 通信函数


一、MX配置

STM32CubeIDE HAL库实现SPI通信_第1张图片

如果片选引脚没有连接 SPI1_NSS(PA4),则需要选择软件片选

左键对应的软件片选引脚,选择GPIO_Output

STM32CubeIDE HAL库实现SPI通信_第2张图片

STM32CubeIDE HAL库实现SPI通信_第3张图片

 

二、生成的代码

1.  初始化配置

STM32CubeIDE HAL库实现SPI通信_第4张图片

STM32CubeIDE HAL库实现SPI通信_第5张图片

 2.  片选引脚用户标识定义

三、使用

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(二)

 

 

你可能感兴趣的:(STM32,嵌入式)