-- spi flash 擦除接口调用HAL库不同函数的区别
【描述】
在使用STM32F429操作W25Q128时,为验证flash工作正常,做简单的读写数据校验,在擦除接口中使用 HAL_SPI_Transmit 方法一直工作异常,使用 HAL_SPI_TransmitReceive 方法后则正常
1 void SPI_FLASH_SectorErase(uint32_t SectorAddr) 2 { 3 uint8_t txData[4]; 4 5 txData[0] = W25X_SectorErase; 6 txData[1] = (SectorAddr & 0xFF0000) >> 16; 7 txData[2] = (SectorAddr & 0xFF00) >> 8; 8 txData[3] = SectorAddr & 0xFF; 9 10 SPI_FLASH_WriteEnable(); 11 HAL_GPIO_WritePin(W25Q_SPI_CS_GPIO_Port, W25Q_SPI_CS_Pin, GPIO_PIN_RESET); 12 13 // HAL_SPI_Transmit(&hspi5, txData, sizeof(txData), 1000000); 14 HAL_SPI_TransmitReceive(&hspi5, txData, NULL, sizeof(txData), 1000000); 15 16 HAL_GPIO_WritePin(W25Q_SPI_CS_GPIO_Port, W25Q_SPI_CS_Pin, GPIO_PIN_SET); 17 18 SPI_FLASH_WaitForWriteEnd(); 19 }
【分析】
暂记。。。
再牛逼的梦想也架不住傻逼似的坚持