未验证 提交 9f1ceb4f 编写于 作者: B Bernard Xiong 提交者: GitHub

Merge pull request #2619 from willianchanlovegithub/469

[bsp][stm32][f469-disco]Add sdcard drivers
......@@ -107,7 +107,34 @@ CONFIG_FINSH_ARG_MAX=10
#
# Device virtual file system
#
# CONFIG_RT_USING_DFS is not set
CONFIG_RT_USING_DFS=y
CONFIG_DFS_USING_WORKDIR=y
CONFIG_DFS_FILESYSTEMS_MAX=2
CONFIG_DFS_FILESYSTEM_TYPES_MAX=2
CONFIG_DFS_FD_MAX=16
# CONFIG_RT_USING_DFS_MNTTABLE is not set
CONFIG_RT_USING_DFS_ELMFAT=y
#
# elm-chan's FatFs, Generic FAT Filesystem Module
#
CONFIG_RT_DFS_ELM_CODE_PAGE=437
CONFIG_RT_DFS_ELM_WORD_ACCESS=y
# CONFIG_RT_DFS_ELM_USE_LFN_0 is not set
# CONFIG_RT_DFS_ELM_USE_LFN_1 is not set
# CONFIG_RT_DFS_ELM_USE_LFN_2 is not set
CONFIG_RT_DFS_ELM_USE_LFN_3=y
CONFIG_RT_DFS_ELM_USE_LFN=3
CONFIG_RT_DFS_ELM_MAX_LFN=255
CONFIG_RT_DFS_ELM_DRIVES=2
CONFIG_RT_DFS_ELM_MAX_SECTOR_SIZE=512
# CONFIG_RT_DFS_ELM_USE_ERASE is not set
CONFIG_RT_DFS_ELM_REENTRANT=y
CONFIG_RT_USING_DFS_DEVFS=y
# CONFIG_RT_USING_DFS_ROMFS is not set
# CONFIG_RT_USING_DFS_RAMFS is not set
# CONFIG_RT_USING_DFS_UFFS is not set
# CONFIG_RT_USING_DFS_JFFS2 is not set
#
# Device Drivers
......@@ -125,12 +152,18 @@ CONFIG_RT_SERIAL_RB_BUFSZ=64
CONFIG_RT_USING_PIN=y
# CONFIG_RT_USING_ADC is not set
# CONFIG_RT_USING_PWM is not set
# CONFIG_RT_USING_MTD_NOR is not set
CONFIG_RT_USING_MTD_NOR=y
# CONFIG_RT_USING_MTD_NAND is not set
# CONFIG_RT_USING_MTD is not set
# CONFIG_RT_USING_PM is not set
# CONFIG_RT_USING_RTC is not set
# CONFIG_RT_USING_SDIO is not set
CONFIG_RT_USING_SDIO=y
CONFIG_RT_SDIO_STACK_SIZE=512
CONFIG_RT_SDIO_THREAD_PRIORITY=15
CONFIG_RT_MMCSD_STACK_SIZE=1024
CONFIG_RT_MMCSD_THREAD_PREORITY=22
CONFIG_RT_MMCSD_MAX_PARTITION=16
# CONFIG_RT_SDIO_DEBUG is not set
# CONFIG_RT_USING_SPI is not set
# CONFIG_RT_USING_WDT is not set
# CONFIG_RT_USING_AUDIO is not set
......@@ -150,8 +183,13 @@ CONFIG_RT_USING_PIN=y
#
# POSIX layer and C standard library
#
# CONFIG_RT_USING_LIBC is not set
CONFIG_RT_USING_LIBC=y
# CONFIG_RT_USING_PTHREADS is not set
CONFIG_RT_USING_POSIX=y
# CONFIG_RT_USING_POSIX_MMAP is not set
# CONFIG_RT_USING_POSIX_TERMIOS is not set
# CONFIG_RT_USING_POSIX_AIO is not set
# CONFIG_RT_USING_MODULE is not set
#
# Network
......@@ -162,6 +200,11 @@ CONFIG_RT_USING_PIN=y
#
# CONFIG_RT_USING_SAL is not set
#
# Network interface device
#
# CONFIG_RT_USING_NETDEV is not set
#
# light weight TCP/IP stack
#
......@@ -185,7 +228,6 @@ CONFIG_RT_USING_PIN=y
#
# Utilities
#
# CONFIG_RT_USING_LOGTRACE is not set
# CONFIG_RT_USING_RYM is not set
# CONFIG_RT_USING_ULOG is not set
# CONFIG_RT_USING_UTEST is not set
......@@ -357,6 +399,8 @@ CONFIG_SOC_STM32F469NI=y
# CONFIG_BSP_USING_SDRAM is not set
# CONFIG_BSP_USING_LCD_OTM8009A is not set
# CONFIG_BSP_USING_QSPI_FLASH is not set
# CONFIG_BSP_USING_SDCARD is not set
# CONFIG_BSP_USING_TOUCH is not set
#
# On-chip Peripheral Drivers
......@@ -365,9 +409,12 @@ CONFIG_BSP_USING_GPIO=y
CONFIG_BSP_USING_UART=y
CONFIG_BSP_USING_UART3=y
# CONFIG_BSP_UART3_RX_USING_DMA is not set
# CONFIG_BSP_USING_I2C1 is not set
# CONFIG_BSP_USING_SPI is not set
# CONFIG_BSP_USING_QSPI is not set
# CONFIG_BSP_USING_ON_CHIP_FLASH is not set
# CONFIG_BSP_USING_FMC is not set
# CONFIG_BSP_USING_SDIO is not set
# CONFIG_BSP_USING_USBD_FS is not set
# CONFIG_BSP_USING_LTDC is not set
......
......@@ -39,10 +39,23 @@ STM32F469-ST-DISCO 是 ST 推出的一款基于 ARM Cortex-M4 内核的开发板
本 BSP 目前对外设的支持情况如下:
| **片上外设** | **支持情况** | **备注** |
| **板载外设** | **支持情况** | **备注** |
| :-----: | :-----: | :-----: |
| SDRAM | 支持 | 16MB |
| LCD | 支持 | MIPI屏,otm8009a |
| SDCARD | 支持 | |
| TOUCH | 支持 | ft6206 |
| **片上外设** | **支持情况** | **备注** |
| GPIO | 支持 | |
| USART | 支持 | USART3 |
| SPI | 支持 | SPI3 |
| QSPI | 支持 | |
| I2C | 支持 | 软件I2C |
| FLASH | 支持 | 已适配 [FAL](https://github.com/RT-Thread-packages/fal) |
| SDIO | 支持 | |
| USB Device | 支持 | |
| **扩展模块** | **支持情况** | **备注** |
| 暂无 | 暂不支持 | 暂不支持 |
## 使用说明
......
......@@ -41,10 +41,11 @@ Mcu.Family=STM32F4
Mcu.IP0=CRC
Mcu.IP1=DMA2D
Mcu.IP10=RCC
Mcu.IP11=SYS
Mcu.IP12=TIM4
Mcu.IP13=USART3
Mcu.IP14=USB_OTG_FS
Mcu.IP11=SDIO
Mcu.IP12=SYS
Mcu.IP13=TIM4
Mcu.IP14=USART3
Mcu.IP15=USB_OTG_FS
Mcu.IP2=DSIHOST
Mcu.IP3=FMC
Mcu.IP4=GFXSIMULATOR
......@@ -53,99 +54,105 @@ Mcu.IP6=LTDC
Mcu.IP7=NVIC
Mcu.IP8=PDM2PCM
Mcu.IP9=QUADSPI
Mcu.IPNb=15
Mcu.IPNb=16
Mcu.Name=STM32F469NIHx
Mcu.Package=TFBGA216
Mcu.Pin0=PE1
Mcu.Pin1=PE0
Mcu.Pin10=PA12
Mcu.Pin11=PI4
Mcu.Pin12=PD1
Mcu.Pin13=PI3
Mcu.Pin14=PI2
Mcu.Pin15=PA11
Mcu.Pin16=PF0
Mcu.Pin17=PI5
Mcu.Pin18=PI7
Mcu.Pin19=PI10
Mcu.Pin10=PD0
Mcu.Pin11=PC11
Mcu.Pin12=PC10
Mcu.Pin13=PA12
Mcu.Pin14=PI4
Mcu.Pin15=PD1
Mcu.Pin16=PI3
Mcu.Pin17=PI2
Mcu.Pin18=PA11
Mcu.Pin19=PF0
Mcu.Pin2=PB3
Mcu.Pin20=PI6
Mcu.Pin21=PH15
Mcu.Pin22=PI1
Mcu.Pin23=PC14/OSC32_IN
Mcu.Pin24=PF1
Mcu.Pin25=PI9
Mcu.Pin26=PH13
Mcu.Pin27=PH14
Mcu.Pin28=PI0
Mcu.Pin29=PC15/OSC32_OUT
Mcu.Pin3=PA15
Mcu.Pin30=DSIHOST_D1P
Mcu.Pin31=DSIHOST_D1N
Mcu.Pin32=PH0/OSC_IN
Mcu.Pin33=PF2
Mcu.Pin34=PH1/OSC_OUT
Mcu.Pin35=PF3
Mcu.Pin36=DSIHOST_CKP
Mcu.Pin37=DSIHOST_CKN
Mcu.Pin38=PG8
Mcu.Pin39=PF4
Mcu.Pin4=PA14
Mcu.Pin40=PH3
Mcu.Pin41=DSIHOST_D0P
Mcu.Pin42=DSIHOST_D0N
Mcu.Pin43=PF7
Mcu.Pin44=PF6
Mcu.Pin45=PF5
Mcu.Pin46=PH2
Mcu.Pin47=PD15
Mcu.Pin48=PD10
Mcu.Pin49=PF10
Mcu.Pin5=PA13
Mcu.Pin50=PF9
Mcu.Pin51=PF8
Mcu.Pin52=PD14
Mcu.Pin53=PD9
Mcu.Pin54=PD8
Mcu.Pin55=PC0
Mcu.Pin56=PF12
Mcu.Pin57=PG1
Mcu.Pin58=PF15
Mcu.Pin59=PD12
Mcu.Pin6=PB6
Mcu.Pin60=PD13
Mcu.Pin61=PH12
Mcu.Pin62=PF13
Mcu.Pin63=PG0
Mcu.Pin64=PE8
Mcu.Pin65=PG5
Mcu.Pin66=PG4
Mcu.Pin67=PH9
Mcu.Pin68=PH11
Mcu.Pin69=PF14
Mcu.Pin7=PG15
Mcu.Pin70=PF11
Mcu.Pin71=PE9
Mcu.Pin72=PE11
Mcu.Pin73=PE14
Mcu.Pin74=PB10
Mcu.Pin75=PH8
Mcu.Pin76=PH10
Mcu.Pin77=PE7
Mcu.Pin78=PE10
Mcu.Pin79=PE12
Mcu.Pin8=PD6
Mcu.Pin80=PE15
Mcu.Pin81=PE13
Mcu.Pin82=PB11
Mcu.Pin83=VP_CRC_VS_CRC
Mcu.Pin84=VP_DMA2D_VS_DMA2D
Mcu.Pin85=VP_LTDC_DSIMode
Mcu.Pin86=VP_PDM2PCM_VS_PDM2PCM
Mcu.Pin87=VP_SYS_VS_Systick
Mcu.Pin88=VP_TIM4_VS_ControllerModeClock
Mcu.Pin9=PD0
Mcu.PinsNb=89
Mcu.Pin20=PI5
Mcu.Pin21=PI7
Mcu.Pin22=PI10
Mcu.Pin23=PI6
Mcu.Pin24=PD2
Mcu.Pin25=PH15
Mcu.Pin26=PI1
Mcu.Pin27=PC14/OSC32_IN
Mcu.Pin28=PF1
Mcu.Pin29=PI9
Mcu.Pin3=PC12
Mcu.Pin30=PH13
Mcu.Pin31=PH14
Mcu.Pin32=PI0
Mcu.Pin33=PC15/OSC32_OUT
Mcu.Pin34=DSIHOST_D1P
Mcu.Pin35=DSIHOST_D1N
Mcu.Pin36=PC9
Mcu.Pin37=PH0/OSC_IN
Mcu.Pin38=PF2
Mcu.Pin39=PC8
Mcu.Pin4=PA15
Mcu.Pin40=PH1/OSC_OUT
Mcu.Pin41=PF3
Mcu.Pin42=DSIHOST_CKP
Mcu.Pin43=DSIHOST_CKN
Mcu.Pin44=PG8
Mcu.Pin45=PF4
Mcu.Pin46=PH3
Mcu.Pin47=DSIHOST_D0P
Mcu.Pin48=DSIHOST_D0N
Mcu.Pin49=PF7
Mcu.Pin5=PA14
Mcu.Pin50=PF6
Mcu.Pin51=PF5
Mcu.Pin52=PH2
Mcu.Pin53=PD15
Mcu.Pin54=PD10
Mcu.Pin55=PF10
Mcu.Pin56=PF9
Mcu.Pin57=PF8
Mcu.Pin58=PD14
Mcu.Pin59=PD9
Mcu.Pin6=PA13
Mcu.Pin60=PD8
Mcu.Pin61=PC0
Mcu.Pin62=PF12
Mcu.Pin63=PG1
Mcu.Pin64=PF15
Mcu.Pin65=PD12
Mcu.Pin66=PD13
Mcu.Pin67=PH12
Mcu.Pin68=PF13
Mcu.Pin69=PG0
Mcu.Pin7=PB6
Mcu.Pin70=PE8
Mcu.Pin71=PG5
Mcu.Pin72=PG4
Mcu.Pin73=PH9
Mcu.Pin74=PH11
Mcu.Pin75=PF14
Mcu.Pin76=PF11
Mcu.Pin77=PE9
Mcu.Pin78=PE11
Mcu.Pin79=PE14
Mcu.Pin8=PG15
Mcu.Pin80=PB10
Mcu.Pin81=PH8
Mcu.Pin82=PH10
Mcu.Pin83=PE7
Mcu.Pin84=PE10
Mcu.Pin85=PE12
Mcu.Pin86=PE15
Mcu.Pin87=PE13
Mcu.Pin88=PB11
Mcu.Pin89=VP_CRC_VS_CRC
Mcu.Pin9=PD6
Mcu.Pin90=VP_DMA2D_VS_DMA2D
Mcu.Pin91=VP_LTDC_DSIMode
Mcu.Pin92=VP_PDM2PCM_VS_PDM2PCM
Mcu.Pin93=VP_SYS_VS_Systick
Mcu.Pin94=VP_TIM4_VS_ControllerModeClock
Mcu.PinsNb=95
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F469NIHx
......@@ -189,10 +196,20 @@ PB6.Mode=Single Bank 1
PB6.Signal=QUADSPI_BK1_NCS
PC0.Locked=true
PC0.Signal=FMC_SDNWE
PC10.Mode=SD_4_bits_Wide_bus
PC10.Signal=SDIO_D2
PC11.Mode=SD_4_bits_Wide_bus
PC11.Signal=SDIO_D3
PC12.Mode=SD_4_bits_Wide_bus
PC12.Signal=SDIO_CK
PC14/OSC32_IN.Mode=LSE-External-Oscillator
PC14/OSC32_IN.Signal=RCC_OSC32_IN
PC15/OSC32_OUT.Mode=LSE-External-Oscillator
PC15/OSC32_OUT.Signal=RCC_OSC32_OUT
PC8.Mode=SD_4_bits_Wide_bus
PC8.Signal=SDIO_D0
PC9.Mode=SD_4_bits_Wide_bus
PC9.Signal=SDIO_D1
PCC.Checker=false
PCC.Line=STM32F469/479
PCC.MCU=STM32F469NIHx
......@@ -210,6 +227,8 @@ PD13.Locked=true
PD13.Signal=S_TIM4_CH2
PD14.Signal=FMC_D0_DA0
PD15.Signal=FMC_D1_DA1
PD2.Mode=SD_4_bits_Wide_bus
PD2.Signal=SDIO_CMD
PD6.GPIOParameters=GPIO_Speed
PD6.GPIO_Speed=GPIO_SPEED_FREQ_HIGH
PD6.Locked=true
......@@ -315,7 +334,7 @@ ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=MDK-ARM V5
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=false
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_USART3_UART_Init-USART3-false-HAL-true,3-MX_FMC_Init-FMC-false-HAL-true,4-MX_QUADSPI_Init-QUADSPI-false-HAL-true,5-MX_GFXSIMULATOR_Init-GFXSIMULATOR-false-HAL-true,6-MX_CRC_Init-CRC-false-HAL-true,7-MX_I2S3_Init-I2S3-false-HAL-true,8-MX_TIM4_Init-TIM4-false-HAL-true,9-MX_PDM2PCM_Init-PDM2PCM-false-HAL-true,10-MX_USB_OTG_FS_PCD_Init-USB_OTG_FS-false-HAL-true,11-SystemClock_Config-RCC-false-HAL-false,12-MX_LTDC_Init-LTDC-false-HAL-true,13-MX_DMA2D_Init-DMA2D-false-HAL-true,14-MX_DSIHOST_DSI_Init-DSIHOST-false-HAL-true
ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-MX_USART3_UART_Init-USART3-false-HAL-true,3-MX_FMC_Init-FMC-false-HAL-true,4-MX_QUADSPI_Init-QUADSPI-false-HAL-true,5-MX_GFXSIMULATOR_Init-GFXSIMULATOR-false-HAL-true,6-MX_CRC_Init-CRC-false-HAL-true,7-MX_I2S3_Init-I2S3-false-HAL-true,8-MX_TIM4_Init-TIM4-false-HAL-true,9-MX_PDM2PCM_Init-PDM2PCM-false-HAL-true,10-MX_USB_OTG_FS_PCD_Init-USB_OTG_FS-false-HAL-true,11-SystemClock_Config-RCC-false-HAL-false,12-MX_LTDC_Init-LTDC-false-HAL-true,13-MX_DMA2D_Init-DMA2D-false-HAL-true,14-MX_DSIHOST_DSI_Init-DSIHOST-false-HAL-true,15-MX_SDIO_SD_Init-SDIO-false-HAL-true
QUADSPI.ChipSelectHighTime=QSPI_CS_HIGH_TIME_5_CYCLE
QUADSPI.ClockPrescaler=1
QUADSPI.FifoThreshold=4
......
......@@ -71,7 +71,7 @@
/* #define HAL_RNG_MODULE_ENABLED */
/* #define HAL_RTC_MODULE_ENABLED */
/* #define HAL_SAI_MODULE_ENABLED */
/* #define HAL_SD_MODULE_ENABLED */
#define HAL_SD_MODULE_ENABLED
/* #define HAL_MMC_MODULE_ENABLED */
/* #define HAL_SPI_MODULE_ENABLED */
#define HAL_TIM_MODULE_ENABLED
......
......@@ -55,6 +55,8 @@ LTDC_HandleTypeDef hltdc;
QSPI_HandleTypeDef hqspi;
SD_HandleTypeDef hsd;
TIM_HandleTypeDef htim4;
UART_HandleTypeDef huart3;
......@@ -81,6 +83,7 @@ static void MX_USB_OTG_FS_PCD_Init(void);
static void MX_LTDC_Init(void);
static void MX_DMA2D_Init(void);
static void MX_DSIHOST_DSI_Init(void);
static void MX_SDIO_SD_Init(void);
/* USER CODE BEGIN PFP */
/* USER CODE END PFP */
......@@ -130,6 +133,7 @@ int main(void)
MX_LTDC_Init();
MX_DMA2D_Init();
MX_DSIHOST_DSI_Init();
MX_SDIO_SD_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
......@@ -195,8 +199,8 @@ void SystemClock_Config(void)
{
Error_Handler();
}
PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_I2S|RCC_PERIPHCLK_CLK48
|RCC_PERIPHCLK_LTDC;
PeriphClkInitStruct.PeriphClockSelection = RCC_PERIPHCLK_I2S|RCC_PERIPHCLK_SDIO
|RCC_PERIPHCLK_CLK48|RCC_PERIPHCLK_LTDC;
PeriphClkInitStruct.PLLI2S.PLLI2SN = 192;
PeriphClkInitStruct.PLLI2S.PLLI2SR = 2;
PeriphClkInitStruct.PLLSAI.PLLSAIN = 192;
......@@ -204,6 +208,7 @@ void SystemClock_Config(void)
PeriphClkInitStruct.PLLSAI.PLLSAIP = RCC_PLLSAIP_DIV4;
PeriphClkInitStruct.PLLSAIDivR = RCC_PLLSAIDIVR_2;
PeriphClkInitStruct.Clk48ClockSelection = RCC_CLK48CLKSOURCE_PLLSAIP;
PeriphClkInitStruct.SdioClockSelection = RCC_SDIOCLKSOURCE_CLK48;
if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInitStruct) != HAL_OK)
{
Error_Handler();
......@@ -553,6 +558,42 @@ static void MX_QUADSPI_Init(void)
}
/**
* @brief SDIO Initialization Function
* @param None
* @retval None
*/
static void MX_SDIO_SD_Init(void)
{
/* USER CODE BEGIN SDIO_Init 0 */
/* USER CODE END SDIO_Init 0 */
/* USER CODE BEGIN SDIO_Init 1 */
/* USER CODE END SDIO_Init 1 */
hsd.Instance = SDIO;
hsd.Init.ClockEdge = SDIO_CLOCK_EDGE_RISING;
hsd.Init.ClockBypass = SDIO_CLOCK_BYPASS_DISABLE;
hsd.Init.ClockPowerSave = SDIO_CLOCK_POWER_SAVE_DISABLE;
hsd.Init.BusWide = SDIO_BUS_WIDE_1B;
hsd.Init.HardwareFlowControl = SDIO_HARDWARE_FLOW_CONTROL_DISABLE;
hsd.Init.ClockDiv = 0;
if (HAL_SD_Init(&hsd) != HAL_OK)
{
Error_Handler();
}
if (HAL_SD_ConfigWideBusOperation(&hsd, SDIO_BUS_WIDE_4B) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN SDIO_Init 2 */
/* USER CODE END SDIO_Init 2 */
}
/**
* @brief TIM4 Initialization Function
* @param None
......@@ -729,13 +770,13 @@ static void MX_GPIO_Init(void)
/* GPIO Ports Clock Enable */
__HAL_RCC_GPIOE_CLK_ENABLE();
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_GPIOC_CLK_ENABLE();
__HAL_RCC_GPIOA_CLK_ENABLE();
__HAL_RCC_GPIOG_CLK_ENABLE();
__HAL_RCC_GPIOD_CLK_ENABLE();
__HAL_RCC_GPIOI_CLK_ENABLE();
__HAL_RCC_GPIOF_CLK_ENABLE();
__HAL_RCC_GPIOH_CLK_ENABLE();
__HAL_RCC_GPIOC_CLK_ENABLE();
}
......
......@@ -438,6 +438,91 @@ void HAL_QSPI_MspDeInit(QSPI_HandleTypeDef* hqspi)
}
/**
* @brief SD MSP Initialization
* This function configures the hardware resources used in this example
* @param hsd: SD handle pointer
* @retval None
*/
void HAL_SD_MspInit(SD_HandleTypeDef* hsd)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
if(hsd->Instance==SDIO)
{
/* USER CODE BEGIN SDIO_MspInit 0 */
/* USER CODE END SDIO_MspInit 0 */
/* Peripheral clock enable */
__HAL_RCC_SDIO_CLK_ENABLE();
__HAL_RCC_GPIOC_CLK_ENABLE();
__HAL_RCC_GPIOD_CLK_ENABLE();
/**SDIO GPIO Configuration
PC12 ------> SDIO_CK
PC11 ------> SDIO_D3
PC10 ------> SDIO_D2
PD2 ------> SDIO_CMD
PC9 ------> SDIO_D1
PC8 ------> SDIO_D0
*/
GPIO_InitStruct.Pin = GPIO_PIN_12|GPIO_PIN_11|GPIO_PIN_10|GPIO_PIN_9
|GPIO_PIN_8;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF12_SDIO;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
GPIO_InitStruct.Pin = GPIO_PIN_2;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
GPIO_InitStruct.Alternate = GPIO_AF12_SDIO;
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
/* USER CODE BEGIN SDIO_MspInit 1 */
/* USER CODE END SDIO_MspInit 1 */
}
}
/**
* @brief SD MSP De-Initialization
* This function freeze the hardware resources used in this example
* @param hsd: SD handle pointer
* @retval None
*/
void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd)
{
if(hsd->Instance==SDIO)
{
/* USER CODE BEGIN SDIO_MspDeInit 0 */
/* USER CODE END SDIO_MspDeInit 0 */
/* Peripheral clock disable */
__HAL_RCC_SDIO_CLK_DISABLE();
/**SDIO GPIO Configuration
PC12 ------> SDIO_CK
PC11 ------> SDIO_D3
PC10 ------> SDIO_D2
PD2 ------> SDIO_CMD
PC9 ------> SDIO_D1
PC8 ------> SDIO_D0
*/
HAL_GPIO_DeInit(GPIOC, GPIO_PIN_12|GPIO_PIN_11|GPIO_PIN_10|GPIO_PIN_9
|GPIO_PIN_8);
HAL_GPIO_DeInit(GPIOD, GPIO_PIN_2);
/* USER CODE BEGIN SDIO_MspDeInit 1 */
/* USER CODE END SDIO_MspDeInit 1 */
}
}
/**
* @brief TIM_Base MSP Initialization
* This function configures the hardware resources used in this example
......
......@@ -26,6 +26,22 @@ menu "Onboard Peripheral Drivers"
select FAL_USING_SFUD_PORT
default n
config BSP_MOUNT_QSPI_WITH_LFS
bool "Mount QSPI flash to / with little fs"
depends on BSP_USING_QSPI_FLASH
select PKG_USING_LITTLEFS
select RT_USING_MTD_NOR
select RT_USING_DFS
default y
config BSP_USING_SDCARD
bool "Enable SDCARD (sdio)"
select BSP_USING_SDIO
select RT_USING_DFS
select RT_USING_DFS_ELMFAT
select RT_USING_PIN
default n
config BSP_USING_TOUCH
bool "Enable TOUCH"
select BSP_USING_I2C1
......@@ -38,14 +54,6 @@ menu "Onboard Peripheral Drivers"
string "I2C Bus Name"
default "i2c1"
endif
config BSP_MOUNT_QSPI_WITH_LFS
bool "Mount QSPI flash to / with little fs"
depends on BSP_USING_QSPI_FLASH
select PKG_USING_LITTLEFS
select RT_USING_MTD_NOR
select RT_USING_DFS
default y
endmenu
menu "On-chip Peripheral Drivers"
......@@ -56,8 +64,8 @@ menu "On-chip Peripheral Drivers"
menuconfig BSP_USING_UART
bool "Enable UART"
default y
select RT_USING_SERIAL
default y
if BSP_USING_UART
config BSP_USING_UART3
bool "Enable UART3"
......@@ -71,10 +79,10 @@ menu "On-chip Peripheral Drivers"
menuconfig BSP_USING_I2C1
bool "Enable I2C1 BUS (software simulation)"
default n
select RT_USING_I2C
select RT_USING_I2C_BITOPS
select RT_USING_PIN
default n
if BSP_USING_I2C1
comment "Notice: PB8 --> 24; PB9 --> 25"
config BSP_I2C1_SCL_PIN
......@@ -87,6 +95,27 @@ menu "On-chip Peripheral Drivers"
default 25
endif
menuconfig BSP_USING_SPI
bool "Enable SPI BUS"
select RT_USING_SPI
default n
if BSP_USING_SPI
config BSP_USING_SPI3
bool "Enable SPI3 BUS"
default n
config BSP_SPI3_TX_USING_DMA
bool "Enable SPI3 TX DMA"
depends on BSP_USING_SPI3
default n
config BSP_SPI3_RX_USING_DMA
bool "Enable SPI3 RX DMA"
depends on BSP_USING_SPI3
select BSP_SPI3_TX_USING_DMA
default n
endif
config BSP_USING_QSPI
bool "Enable QSPI BUS"
select RT_USING_QSPI
......@@ -98,7 +127,13 @@ menu "On-chip Peripheral Drivers"
default n
config BSP_USING_FMC
bool
bool "Enable FMC"
default n
config BSP_USING_SDIO
bool "Enable SDIO"
select RT_USING_SDIO
select RT_USING_DFS
default n
config BSP_USING_USBD_FS
......
......@@ -23,6 +23,12 @@ if GetDepend(['BSP_USING_LCD_OTM8009A']):
if GetDepend(['BSP_USING_TOUCH']):
src += Glob('ports/touch/*.c')
if GetDepend(['BSP_USING_SDCARD']):
src += Glob('ports/drv_sdcard.c')
if GetDepend(['BSP_USING_QSPI']):
src += Glob('ports/drv_qspi_flash.c')
path = [cwd]
path += [cwd + '/CubeMX_Config/Inc']
......
/*
* Copyright (c) 2006-2018, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2018-12-13 balanceTWK add sdcard port file
*/
#include <rtthread.h>
#ifdef BSP_USING_SDCARD
#include <dfs_elm.h>
#include <dfs_fs.h>
#include <dfs_posix.h>
#include "drv_gpio.h"
#define DBG_TAG "app.card"
#define DBG_LVL DBG_INFO
#include <rtdbg.h>
void sd_mount(void *parameter)
{
while (1)
{
rt_thread_mdelay(500);
if(rt_device_find("sd0") != RT_NULL)
{
if (dfs_mount("sd0", "/", "elm", 0, 0) == RT_EOK)
{
LOG_I("sd card mount to '/'");
break;
}
else
{
LOG_W("sd card mount to '/' failed!");
}
}
}
}
int stm32_sdcard_mount(void)
{
rt_thread_t tid;
tid = rt_thread_create("sd_mount", sd_mount, RT_NULL,
1024, RT_THREAD_PRIORITY_MAX - 2, 20);
if (tid != RT_NULL)
{
rt_thread_startup(tid);
}
else
{
LOG_E("create sd_mount thread err!");
}
return RT_EOK;
}
INIT_APP_EXPORT(stm32_sdcard_mount);
#endif /* BSP_USING_SDCARD */
......@@ -216,6 +216,9 @@
<name>CCDefines</name>
<state />
<state>STM32F469xx</state>
<state>RT_USING_DLIBC</state>
<state>_DLIB_FILE_DESCRIPTOR</state>
<state>_DLIB_THREAD_SUPPORT</state>
<state>USE_HAL_DRIVER</state>
</option>
<option>
......@@ -342,16 +345,21 @@
<option>
<name>CCIncludePath2</name>
<state />
<state>$PROJ_DIR$\..\..\..\components\dfs\filesystems\devfs</state>
<state>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\CMSIS\Include</state>
<state>$PROJ_DIR$\..\..\..\components\finsh</state>
<state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
<state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4</state>
<state>$PROJ_DIR$\..\..\..\components\dfs\include</state>
<state>$PROJ_DIR$\board\ports</state>
<state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\common</state>
<state>$PROJ_DIR$\.</state>
<state>$PROJ_DIR$\applications</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers\config</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib</state>
<state>$PROJ_DIR$\board</state>
<state>$PROJ_DIR$\..\..\..\components\dfs\filesystems\elmfat</state>
<state>$PROJ_DIR$\board\CubeMX_Config\Inc</state>
<state>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include</state>
<state>$PROJ_DIR$\..\..\..\include</state>
......@@ -1246,6 +1254,9 @@
<option>
<name>CCDefines</name>
<state>STM32F469xx</state>
<state>RT_USING_DLIBC</state>
<state>_DLIB_FILE_DESCRIPTOR</state>
<state>_DLIB_THREAD_SUPPORT</state>
<state>USE_HAL_DRIVER</state>
</option>
<option>
......@@ -1372,16 +1383,21 @@
<option>
<name>CCIncludePath2</name>
<state />
<state>$PROJ_DIR$\..\..\..\components\dfs\filesystems\devfs</state>
<state>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\CMSIS\Include</state>
<state>$PROJ_DIR$\..\..\..\components\finsh</state>
<state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
<state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m4</state>
<state>$PROJ_DIR$\..\..\..\components\dfs\include</state>
<state>$PROJ_DIR$\board\ports</state>
<state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\common</state>
<state>$PROJ_DIR$\.</state>
<state>$PROJ_DIR$\applications</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers\config</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib</state>
<state>$PROJ_DIR$\board</state>
<state>$PROJ_DIR$\..\..\..\components\dfs\filesystems\elmfat</state>
<state>$PROJ_DIR$\board\CubeMX_Config\Inc</state>
<state>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include</state>
<state>$PROJ_DIR$\..\..\..\include</state>
......@@ -2135,9 +2151,6 @@
<file>
<name>$PROJ_DIR$\..\libraries\HAL_Drivers\drv_usart.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\libraries\HAL_Drivers\drv_soft_i2c.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\libraries\HAL_Drivers\drv_common.c</name>
</file>
......@@ -2161,19 +2174,61 @@
</file>
</group>
<group>
<name>DeviceDrivers</name>
<name>Filesystem</name>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\dfs.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\dfs_file.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\dfs_fs.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\dfs_posix.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\poll.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\src\select.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\dfs\filesystems\devfs\devfs.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\i2c\i2c_core.c</name>
<name>$PROJ_DIR$\..\..\..\components\dfs\filesystems\elmfat\dfs_elm.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\i2c\i2c_dev.c</name>
<name>$PROJ_DIR$\..\..\..\components\dfs\filesystems\elmfat\ff.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\i2c\i2c-bit-ops.c</name>
<name>$PROJ_DIR$\..\..\..\components\dfs\filesystems\elmfat\option\ccsbcs.c</name>
</file>
</group>
<group>
<name>DeviceDrivers</name>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\misc\pin.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\mtd\mtd_nor.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\sdio\block_dev.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\sdio\mmcsd_core.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\sdio\sd.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\sdio\sdio.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\sdio\mmc.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\drivers\serial\serial.c</name>
</file>
......@@ -2250,6 +2305,51 @@
<name>$PROJ_DIR$\..\..\..\components\finsh\finsh_token.c</name>
</file>
</group>
<group>
<name>libc</name>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\common\gmtime_r.c</name>
</file>
</group>
<group>
<name>dlib</name>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\environ.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\libc.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\rmtx.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\stdio.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_close.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_lseek.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_mem.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_open.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_read.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_remove.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\syscall_write.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\dlib\time.c</name>
</file>
</group>
<group>
<name>STM32_HAL</name>
<file>
......@@ -2304,10 +2404,13 @@
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_usart.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</name>
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_sdmmc.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sd.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</name>
<name>$PROJ_DIR$\..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_nor.c</name>
</file>
</group>
</project>
......@@ -357,9 +357,9 @@
<useXO>0</useXO>
<VariousControls>
<MiscControls />
<Define>USE_HAL_DRIVER, STM32F469xx</Define>
<Define>USE_HAL_DRIVER, STM32F469xx, RT_USING_ARM_LIBC</Define>
<Undefine />
<IncludePath>.;..\..\..\include;applications;board;board\CubeMX_Config\Inc;board\ports;..\libraries\HAL_Drivers;..\libraries\HAL_Drivers\config;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m4;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\finsh;..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Inc;..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include;..\libraries\STM32F4xx_HAL\CMSIS\Include</IncludePath>
<IncludePath>.;..\..\..\include;applications;board;board\CubeMX_Config\Inc;board\ports;..\libraries\HAL_Drivers;..\libraries\HAL_Drivers\config;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m4;..\..\..\components\dfs\include;..\..\..\components\dfs\filesystems\devfs;..\..\..\components\dfs\filesystems\elmfat;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\finsh;..\..\..\components\libc\compilers\armlibc;..\..\..\components\libc\compilers\common;..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Inc;..\libraries\STM32F4xx_HAL\CMSIS\Device\ST\STM32F4xx\Include;..\libraries\STM32F4xx_HAL\CMSIS\Include</IncludePath>
</VariousControls>
</Cads>
<Aads>
......@@ -561,13 +561,6 @@
<FilePath>..\libraries\HAL_Drivers\drv_usart.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>drv_soft_i2c.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\HAL_Drivers\drv_soft_i2c.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>drv_common.c</FileName>
......@@ -615,28 +608,80 @@
</Files>
</Group>
<Group>
<GroupName>DeviceDrivers</GroupName>
<GroupName>Filesystem</GroupName>
<Files>
<File>
<FileName>dfs.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\dfs.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>dfs_file.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\dfs_file.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>dfs_fs.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\dfs_fs.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>dfs_posix.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\dfs_posix.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>poll.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\poll.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>select.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\src\select.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>i2c_core.c</FileName>
<FileName>devfs.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\i2c\i2c_core.c</FilePath>
<FilePath>..\..\..\components\dfs\filesystems\devfs\devfs.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>i2c_dev.c</FileName>
<FileName>dfs_elm.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\i2c\i2c_dev.c</FilePath>
<FilePath>..\..\..\components\dfs\filesystems\elmfat\dfs_elm.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>i2c-bit-ops.c</FileName>
<FileName>ff.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\i2c\i2c-bit-ops.c</FilePath>
<FilePath>..\..\..\components\dfs\filesystems\elmfat\ff.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>ccsbcs.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\dfs\filesystems\elmfat\option\ccsbcs.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>DeviceDrivers</GroupName>
<Files>
<File>
<FileName>pin.c</FileName>
......@@ -644,6 +689,48 @@
<FilePath>..\..\..\components\drivers\misc\pin.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>mtd_nor.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\mtd\mtd_nor.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>block_dev.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\sdio\block_dev.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>mmcsd_core.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\sdio\mmcsd_core.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>sd.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\sdio\sd.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>sdio.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\sdio\sdio.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>mmc.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\sdio\mmc.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>serial.c</FileName>
......@@ -816,6 +903,51 @@
</File>
</Files>
</Group>
<Group>
<GroupName>libc</GroupName>
<Files>
<File>
<FileName>libc.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\armlibc\libc.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>mem_std.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\armlibc\mem_std.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>stdio.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\armlibc\stdio.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>stubs.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\armlibc\stubs.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>time.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\armlibc\time.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>gmtime_r.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\libc\compilers\common\gmtime_r.c</FilePath>
</File>
</Files>
</Group>
<Group>
<GroupName>STM32_HAL</GroupName>
<Files>
......@@ -939,16 +1071,23 @@
</Files>
<Files>
<File>
<FileName>stm32f4xx_hal_i2c.c</FileName>
<FileName>stm32f4xx_ll_sdmmc.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_ll_sdmmc.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>stm32f4xx_hal_sd.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c.c</FilePath>
<FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_sd.c</FilePath>
</File>
</Files>
<Files>
<File>
<FileName>stm32f4xx_hal_i2c_ex.c</FileName>
<FileName>stm32f4xx_hal_nor.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_i2c_ex.c</FilePath>
<FilePath>..\libraries\STM32F4xx_HAL\STM32F4xx_HAL_Driver\Src\stm32f4xx_hal_nor.c</FilePath>
</File>
</Files>
</Group>
......
......@@ -74,6 +74,24 @@
/* Device virtual file system */
#define RT_USING_DFS
#define DFS_USING_WORKDIR
#define DFS_FILESYSTEMS_MAX 2
#define DFS_FILESYSTEM_TYPES_MAX 2
#define DFS_FD_MAX 16
#define RT_USING_DFS_ELMFAT
/* elm-chan's FatFs, Generic FAT Filesystem Module */
#define RT_DFS_ELM_CODE_PAGE 437
#define RT_DFS_ELM_WORD_ACCESS
#define RT_DFS_ELM_USE_LFN_3
#define RT_DFS_ELM_USE_LFN 3
#define RT_DFS_ELM_MAX_LFN 255
#define RT_DFS_ELM_DRIVES 2
#define RT_DFS_ELM_MAX_SECTOR_SIZE 512
#define RT_DFS_ELM_REENTRANT
#define RT_USING_DFS_DEVFS
/* Device Drivers */
......@@ -83,6 +101,13 @@
#define RT_SERIAL_USING_DMA
#define RT_SERIAL_RB_BUFSZ 64
#define RT_USING_PIN
#define RT_USING_MTD_NOR
#define RT_USING_SDIO
#define RT_SDIO_STACK_SIZE 512
#define RT_SDIO_THREAD_PRIORITY 15
#define RT_MMCSD_STACK_SIZE 1024
#define RT_MMCSD_THREAD_PREORITY 22
#define RT_MMCSD_MAX_PARTITION 16
/* Using WiFi */
......@@ -92,12 +117,17 @@
/* POSIX layer and C standard library */
#define RT_USING_LIBC
#define RT_USING_POSIX
/* Network */
/* Socket abstraction layer */
/* Network interface device */
/* light weight TCP/IP stack */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册