目錄
一、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(二)