Refactor F2/local before F3 merge (#220)
* add files from f3 * rollback lfs * Move assets from LFS * remove lfs from build Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
This commit is contained in:
@@ -4,9 +4,6 @@
|
||||
#define SD_CS_LOW() HAL_GPIO_WritePin(SD_CS_GPIO_Port, SD_CS_Pin, GPIO_PIN_RESET)
|
||||
#define SD_CS_HIGH() HAL_GPIO_WritePin(SD_CS_GPIO_Port, SD_CS_Pin, GPIO_PIN_SET)
|
||||
|
||||
#define SPI_SD_INSTANCE SPI3
|
||||
#define SPI_SD_HANDLE hspi3
|
||||
|
||||
const uint32_t SpiTimeout = 1000;
|
||||
extern SPI_HandleTypeDef SPI_SD_HANDLE;
|
||||
uint8_t SD_IO_WriteByte(uint8_t Data);
|
||||
@@ -64,46 +61,6 @@ __attribute__((unused)) static void SPIx_Write(uint8_t Value) {
|
||||
}
|
||||
}
|
||||
|
||||
void SD_SPI_Slow_Init(void) {
|
||||
SPI_SD_HANDLE.Instance = SPI_SD_INSTANCE;
|
||||
SPI_SD_HANDLE.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_SD_HANDLE.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_SD_HANDLE.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_SD_HANDLE.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_SD_HANDLE.Init.CLKPhase = SPI_PHASE_1EDGE;
|
||||
SPI_SD_HANDLE.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_SD_HANDLE.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
|
||||
SPI_SD_HANDLE.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_SD_HANDLE.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCPolynomial = 7;
|
||||
SPI_SD_HANDLE.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_SD_HANDLE.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;
|
||||
if(HAL_SPI_Init(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
void SD_SPI_Fast_Init(void) {
|
||||
SPI_SD_HANDLE.Instance = SPI_SD_INSTANCE;
|
||||
SPI_SD_HANDLE.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_SD_HANDLE.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_SD_HANDLE.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_SD_HANDLE.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_SD_HANDLE.Init.CLKPhase = SPI_PHASE_1EDGE;
|
||||
SPI_SD_HANDLE.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_SD_HANDLE.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
|
||||
SPI_SD_HANDLE.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_SD_HANDLE.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCPolynomial = 7;
|
||||
SPI_SD_HANDLE.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_SD_HANDLE.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;
|
||||
if(HAL_SPI_Init(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
LINK OPERATIONS
|
||||
*******************************************************************************/
|
||||
|
@@ -91,6 +91,7 @@
|
||||
#include "stdlib.h"
|
||||
#include "string.h"
|
||||
#include "stdio.h"
|
||||
#include "spi.h"
|
||||
|
||||
/** @addtogroup BSP
|
||||
* @{
|
||||
@@ -290,7 +291,7 @@ static uint8_t SD_ReadData(void);
|
||||
*/
|
||||
uint8_t BSP_SD_Init(void) {
|
||||
/* Init to maximum slow speed */
|
||||
SD_SPI_Slow_Init();
|
||||
SD_SPI_Reconfigure_Slow();
|
||||
|
||||
/* Configure IO functionalities for SD pin */
|
||||
SD_IO_Init();
|
||||
@@ -300,7 +301,7 @@ uint8_t BSP_SD_Init(void) {
|
||||
uint8_t res = SD_GoIdleState();
|
||||
|
||||
/* Init to maximum fastest speed */
|
||||
SD_SPI_Fast_Init();
|
||||
SD_SPI_Reconfigure_Fast();
|
||||
|
||||
/* SD initialized and set to SPI mode properly */
|
||||
return res;
|
||||
|
@@ -88,7 +88,6 @@ int main(void)
|
||||
SystemClock_Config();
|
||||
|
||||
/* USER CODE BEGIN SysInit */
|
||||
|
||||
/* USER CODE END SysInit */
|
||||
|
||||
/* Initialize all configured peripherals */
|
||||
|
@@ -175,6 +175,101 @@ void HAL_SPI_MspDeInit(SPI_HandleTypeDef* spiHandle)
|
||||
|
||||
/* USER CODE BEGIN 1 */
|
||||
|
||||
void NFC_SPI_Reconfigure() {
|
||||
if (HAL_SPI_DeInit(&SPI_R) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
SPI_R.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_R.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_R.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_R.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_R.Init.CLKPhase = SPI_PHASE_2EDGE;
|
||||
SPI_R.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_R.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_64;
|
||||
SPI_R.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_R.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_R.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_R.Init.CRCPolynomial = 7;
|
||||
SPI_R.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_R.Init.NSSPMode = SPI_NSS_PULSE_DISABLE;
|
||||
|
||||
if (HAL_SPI_Init(&SPI_R) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
void SD_SPI_Reconfigure_Slow(void) {
|
||||
if (HAL_SPI_DeInit(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
SPI_SD_HANDLE.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_SD_HANDLE.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_SD_HANDLE.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_SD_HANDLE.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_SD_HANDLE.Init.CLKPhase = SPI_PHASE_1EDGE;
|
||||
SPI_SD_HANDLE.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_SD_HANDLE.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_256;
|
||||
SPI_SD_HANDLE.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_SD_HANDLE.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCPolynomial = 7;
|
||||
SPI_SD_HANDLE.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_SD_HANDLE.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;
|
||||
|
||||
if(HAL_SPI_Init(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
void SD_SPI_Reconfigure_Fast(void) {
|
||||
if (HAL_SPI_DeInit(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
SPI_SD_HANDLE.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_SD_HANDLE.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_SD_HANDLE.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_SD_HANDLE.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_SD_HANDLE.Init.CLKPhase = SPI_PHASE_1EDGE;
|
||||
SPI_SD_HANDLE.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_SD_HANDLE.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_2;
|
||||
SPI_SD_HANDLE.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_SD_HANDLE.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_SD_HANDLE.Init.CRCPolynomial = 7;
|
||||
SPI_SD_HANDLE.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_SD_HANDLE.Init.NSSPMode = SPI_NSS_PULSE_ENABLE;
|
||||
|
||||
if(HAL_SPI_Init(&SPI_SD_HANDLE) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
|
||||
void CC1101_SPI_Reconfigure(void) {
|
||||
if(HAL_SPI_DeInit(&SPI_R) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
|
||||
SPI_R.Init.Mode = SPI_MODE_MASTER;
|
||||
SPI_R.Init.Direction = SPI_DIRECTION_2LINES;
|
||||
SPI_R.Init.DataSize = SPI_DATASIZE_8BIT;
|
||||
SPI_R.Init.CLKPolarity = SPI_POLARITY_LOW;
|
||||
SPI_R.Init.CLKPhase = SPI_PHASE_1EDGE;
|
||||
SPI_R.Init.NSS = SPI_NSS_SOFT;
|
||||
SPI_R.Init.BaudRatePrescaler = SPI_BAUDRATEPRESCALER_64;
|
||||
SPI_R.Init.FirstBit = SPI_FIRSTBIT_MSB;
|
||||
SPI_R.Init.TIMode = SPI_TIMODE_DISABLE;
|
||||
SPI_R.Init.CRCCalculation = SPI_CRCCALCULATION_DISABLE;
|
||||
SPI_R.Init.CRCPolynomial = 7;
|
||||
SPI_R.Init.CRCLength = SPI_CRC_LENGTH_DATASIZE;
|
||||
SPI_R.Init.NSSPMode = SPI_NSS_PULSE_DISABLE;
|
||||
|
||||
if(HAL_SPI_Init(&SPI_R) != HAL_OK) {
|
||||
Error_Handler();
|
||||
}
|
||||
}
|
||||
/* USER CODE END 1 */
|
||||
|
||||
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
||||
|
Reference in New Issue
Block a user