summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMeco Man <[email protected]>2023-11-30 11:02:50 +0800
committerguo <[email protected]>2023-11-30 11:39:34 +0800
commit53aa771aa52f1de01fcc848f8a4fa3a0e585e390 (patch)
treeac16add82bb85f0913352c45dbc4fa82aa848a13
parent005828eba71b5e577c49cf5af61accc028b0ae1a (diff)
[stm32][nano] stm32f103-bluepill support nano version
-rw-r--r--bsp/stm32/libraries/HAL_Drivers/SConscript167
-rw-r--r--bsp/stm32/stm32f103-blue-pill/Kconfig11
-rw-r--r--bsp/stm32/stm32f103-blue-pill/applications/main.c10
-rw-r--r--bsp/stm32/stm32f103-blue-pill/board/Kconfig7
-rw-r--r--bsp/stm32/stm32f103-blue-pill/board/board.c7
-rw-r--r--bsp/stm32/stm32f103-blue-pill/board/board.h4
6 files changed, 112 insertions, 94 deletions
diff --git a/bsp/stm32/libraries/HAL_Drivers/SConscript b/bsp/stm32/libraries/HAL_Drivers/SConscript
index 5d379ae42b..afc919360f 100644
--- a/bsp/stm32/libraries/HAL_Drivers/SConscript
+++ b/bsp/stm32/libraries/HAL_Drivers/SConscript
@@ -3,127 +3,126 @@ Import('rtconfig')
from building import *
cwd = GetCurrentDir()
-
-# add the general drivers.
+group = []
src = []
+path = [cwd]
-if GetDepend(['RT_USING_PIN']):
- src += ['drv_gpio.c']
-
-if GetDepend(['RT_USING_SERIAL']):
- if GetDepend(['RT_USING_SERIAL_V2']):
- src += ['drv_usart_v2.c']
- else:
- src += ['drv_usart.c']
+if not GetDepend('PKG_CMSIS_CORE'):
+ path += [cwd + '/CMSIS/Include']
-if GetDepend(['BSP_USING_TIM']):
- src += ['drv_tim.c']
+if not GetDepend(['RT_USING_NANO']):
+ src += ['drv_common.c']
+ if GetDepend(['RT_USING_PIN']):
+ src += ['drv_gpio.c']
-if GetDepend(['BSP_USING_PWM']):
- src += ['drv_pwm.c', 'drv_tim.c']
+ if GetDepend(['RT_USING_SERIAL']):
+ if GetDepend(['RT_USING_SERIAL_V2']):
+ src += ['drv_usart_v2.c']
+ else:
+ src += ['drv_usart.c']
-if GetDepend(['RT_USING_SPI']):
- src += ['drv_spi.c']
+ if GetDepend(['BSP_USING_TIM']):
+ src += ['drv_tim.c']
-if GetDepend(['RT_USING_QSPI']):
- src += ['drv_qspi.c']
+ if GetDepend(['BSP_USING_PWM']):
+ src += ['drv_pwm.c', 'drv_tim.c']
-if GetDepend('RT_USING_SPI_BITOPS'):
- src += ['drv_soft_spi.c']
+ if GetDepend(['RT_USING_SPI']):
+ src += ['drv_spi.c']
-if GetDepend(['RT_USING_I2C', 'RT_USING_I2C_BITOPS']):
- if GetDepend('BSP_USING_I2C1') or GetDepend('BSP_USING_I2C2') or GetDepend('BSP_USING_I2C3') or GetDepend('BSP_USING_I2C4'):
- src += ['drv_soft_i2c.c']
+ if GetDepend(['RT_USING_QSPI']):
+ src += ['drv_qspi.c']
-if GetDepend(['BSP_USING_ETH', 'RT_USING_LWIP']):
- src += ['drv_eth.c']
+ if GetDepend('RT_USING_SPI_BITOPS'):
+ src += ['drv_soft_spi.c']
-if GetDepend(['RT_USING_ADC']):
- src += ['drv_adc.c']
+ if GetDepend(['RT_USING_I2C', 'RT_USING_I2C_BITOPS']):
+ if GetDepend('BSP_USING_I2C1') or GetDepend('BSP_USING_I2C2') or GetDepend('BSP_USING_I2C3') or GetDepend('BSP_USING_I2C4'):
+ src += ['drv_soft_i2c.c']
-if GetDepend(['RT_USING_DAC']):
- src += ['drv_dac.c']
+ if GetDepend(['BSP_USING_ETH', 'RT_USING_LWIP']):
+ src += ['drv_eth.c']
-if GetDepend(['RT_USING_CAN']):
- src += ['drv_can.c']
+ if GetDepend(['RT_USING_ADC']):
+ src += ['drv_adc.c']
-if GetDepend(['RT_USING_PM', 'SOC_SERIES_STM32L4']):
- src += ['drv_pm.c']
- src += ['drv_lptim.c']
+ if GetDepend(['RT_USING_DAC']):
+ src += ['drv_dac.c']
-if GetDepend('BSP_USING_SDRAM'):
- src += ['drv_sdram.c']
+ if GetDepend(['RT_USING_CAN']):
+ src += ['drv_can.c']
-if GetDepend(['BSP_USING_NAND1']):
- src += ['drv_nand.c']
+ if GetDepend(['RT_USING_PM', 'SOC_SERIES_STM32L4']):
+ src += ['drv_pm.c']
+ src += ['drv_lptim.c']
-if GetDepend('BSP_USING_LCD'):
- src += ['drv_lcd.c']
+ if GetDepend('BSP_USING_SDRAM'):
+ src += ['drv_sdram.c']
-if GetDepend('BSP_USING_LCD_MIPI'):
- src += ['drv_lcd_mipi.c']
+ if GetDepend(['BSP_USING_NAND1']):
+ src += ['drv_nand.c']
-if GetDepend('BSP_USING_ONCHIP_RTC'):
- src += ['drv_rtc.c']
+ if GetDepend('BSP_USING_LCD'):
+ src += ['drv_lcd.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32G0']):
- src += ['drv_flash/drv_flash_g0.c']
+ if GetDepend('BSP_USING_LCD_MIPI'):
+ src += ['drv_lcd_mipi.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F0']):
- src += ['drv_flash/drv_flash_f0.c']
+ if GetDepend('BSP_USING_ONCHIP_RTC'):
+ src += ['drv_rtc.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F1']):
- src += ['drv_flash/drv_flash_f1.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32G0']):
+ src += ['drv_flash/drv_flash_g0.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F2']):
- src += ['drv_flash/drv_flash_f2.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F0']):
+ src += ['drv_flash/drv_flash_f0.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F4']):
- src += ['drv_flash/drv_flash_f4.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F1']):
+ src += ['drv_flash/drv_flash_f1.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F7']):
- src += ['drv_flash/drv_flash_f7.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F2']):
+ src += ['drv_flash/drv_flash_f2.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L4']):
- src += ['drv_flash/drv_flash_l4.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F4']):
+ src += ['drv_flash/drv_flash_f4.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32H7']):
- src += ['drv_flash/drv_flash_h7.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32F7']):
+ src += ['drv_flash/drv_flash_f7.c']
-if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32WB']):
- src += ['drv_flash/drv_flash_wb.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32L4']):
+ src += ['drv_flash/drv_flash_l4.c']
-if GetDepend('RT_USING_HWCRYPTO'):
- src += ['drv_crypto.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32H7']):
+ src += ['drv_flash/drv_flash_h7.c']
-if GetDepend(['BSP_USING_WDT']):
- src += ['drv_wdt.c']
+ if GetDepend(['BSP_USING_ON_CHIP_FLASH', 'SOC_SERIES_STM32WB']):
+ src += ['drv_flash/drv_flash_wb.c']
-if GetDepend(['BSP_USING_SDIO']):
- if GetDepend('SOC_SERIES_STM32H7') or GetDepend('SOC_SERIES_STM32F7') or GetDepend('SOC_SERIES_STM32L4') or GetDepend('SOC_SERIES_STM32L5'):
- src += ['drv_sdmmc.c']
- else:
- src += ['drv_sdio.c']
+ if GetDepend('RT_USING_HWCRYPTO'):
+ src += ['drv_crypto.c']
-if GetDepend(['BSP_USING_USBD']):
- src += ['drv_usbd.c']
+ if GetDepend(['BSP_USING_WDT']):
+ src += ['drv_wdt.c']
-if GetDepend(['BSP_USING_PULSE_ENCODER']):
- src += ['drv_pulse_encoder.c']
+ if GetDepend(['BSP_USING_SDIO']):
+ if GetDepend('SOC_SERIES_STM32H7') or GetDepend('SOC_SERIES_STM32F7') or GetDepend('SOC_SERIES_STM32L4') or GetDepend('SOC_SERIES_STM32L5'):
+ src += ['drv_sdmmc.c']
+ else:
+ src += ['drv_sdio.c']
-if GetDepend(['BSP_USING_USBH']):
- src += ['drv_usbh.c']
+ if GetDepend(['BSP_USING_USBD']):
+ src += ['drv_usbd.c']
-src += ['drv_common.c']
+ if GetDepend(['BSP_USING_PULSE_ENCODER']):
+ src += ['drv_pulse_encoder.c']
-path = [cwd]
-path += [cwd + '/config']
+ if GetDepend(['BSP_USING_USBH']):
+ src += ['drv_usbh.c']
-if not GetDepend('PKG_CMSIS_CORE'):
- path += [cwd + '/CMSIS/Include']
+ path += [cwd + '/config']
-if GetDepend('BSP_USING_ON_CHIP_FLASH'):
- path += [cwd + '/drv_flash']
+ if GetDepend('BSP_USING_ON_CHIP_FLASH'):
+ path += [cwd + '/drv_flash']
group = DefineGroup('Drivers', src, depend = [''], CPPPATH = path)
diff --git a/bsp/stm32/stm32f103-blue-pill/Kconfig b/bsp/stm32/stm32f103-blue-pill/Kconfig
index 7a400db91f..5b7fab59c3 100644
--- a/bsp/stm32/stm32f103-blue-pill/Kconfig
+++ b/bsp/stm32/stm32f103-blue-pill/Kconfig
@@ -15,8 +15,17 @@ config PKGS_DIR
option env="PKGS_ROOT"
default "packages"
+config SOC_STM32F103C8
+ bool
+ select SOC_SERIES_STM32F1
+ select RT_USING_COMPONENTS_INIT
+ select RT_USING_USER_MAIN
+ default y
+
source "$RTT_DIR/Kconfig"
source "$PKGS_DIR/Kconfig"
+
+if !RT_USING_NANO
source "../libraries/Kconfig"
source "board/Kconfig"
-
+endif
diff --git a/bsp/stm32/stm32f103-blue-pill/applications/main.c b/bsp/stm32/stm32f103-blue-pill/applications/main.c
index 1fcf936a48..9f4d8cbd95 100644
--- a/bsp/stm32/stm32f103-blue-pill/applications/main.c
+++ b/bsp/stm32/stm32f103-blue-pill/applications/main.c
@@ -12,6 +12,7 @@
#include <rtdevice.h>
#include <board.h>
+#ifndef RT_USING_NANO
/* defined the LED0 pin: PC13 */
#define LED0_PIN GET_PIN(C, 13)
@@ -28,3 +29,12 @@ int main(void)
rt_thread_mdelay(500);
}
}
+#else
+int main(void)
+{
+ while (1)
+ {
+ rt_thread_mdelay(500);
+ }
+}
+#endif
diff --git a/bsp/stm32/stm32f103-blue-pill/board/Kconfig b/bsp/stm32/stm32f103-blue-pill/board/Kconfig
index 424a306a33..ebb05969e9 100644
--- a/bsp/stm32/stm32f103-blue-pill/board/Kconfig
+++ b/bsp/stm32/stm32f103-blue-pill/board/Kconfig
@@ -1,12 +1,5 @@
menu "Hardware Drivers Config"
-config SOC_STM32F103C8
- bool
- select SOC_SERIES_STM32F1
- select RT_USING_COMPONENTS_INIT
- select RT_USING_USER_MAIN
- default y
-
menu "Onboard Peripheral Drivers"
config BSP_USING_USB_TO_USART
diff --git a/bsp/stm32/stm32f103-blue-pill/board/board.c b/bsp/stm32/stm32f103-blue-pill/board/board.c
index 22f1cc14f7..53ddd078b6 100644
--- a/bsp/stm32/stm32f103-blue-pill/board/board.c
+++ b/bsp/stm32/stm32f103-blue-pill/board/board.c
@@ -51,3 +51,10 @@ void SystemClock_Config(void)
Error_Handler();
}
}
+
+#ifdef RT_USING_NANO
+void rt_hw_board_init(void)
+{
+
+}
+#endif
diff --git a/bsp/stm32/stm32f103-blue-pill/board/board.h b/bsp/stm32/stm32f103-blue-pill/board/board.h
index aaa6eeafc0..04f89988a7 100644
--- a/bsp/stm32/stm32f103-blue-pill/board/board.h
+++ b/bsp/stm32/stm32f103-blue-pill/board/board.h
@@ -13,8 +13,8 @@
#include <rtthread.h>
#include <stm32f1xx.h>
-#include "drv_common.h"
-#include "drv_gpio.h"
+#include <drv_common.h>
+#include <drv_gpio.h>
#ifdef __cplusplus
extern "C" {