Browse Source

[BSP][STM32F10x_HAL]Add mcu type choose in menuconfig

uestczyh222 7 years ago
parent
commit
9134f48db9

+ 81 - 4
bsp/stm32f10x_HAL/.config

@@ -98,6 +98,10 @@ CONFIG_RT_USING_PIN=y
 # CONFIG_RT_USING_SDIO is not set
 # CONFIG_RT_USING_SPI is not set
 # CONFIG_RT_USING_WDT is not set
+
+#
+# Using USB
+#
 # CONFIG_RT_USING_USB_HOST is not set
 # CONFIG_RT_USING_USB_DEVICE is not set
 
@@ -174,10 +178,83 @@ CONFIG_RT_USING_PIN=y
 # miscellaneous packages
 #
 # CONFIG_PKG_USING_HELLO is not set
-
-#
-# BSP_SPECIAL CONFIG
-#
+# CONFIG_STM32F100C8 is not set
+# CONFIG_STM32F100CB is not set
+# CONFIG_STM32F100R8 is not set
+# CONFIG_STM32F100RB is not set
+# CONFIG_STM32F100RC is not set
+# CONFIG_STM32F100RD is not set
+# CONFIG_STM32F100RE is not set
+# CONFIG_STM32F100V8 is not set
+# CONFIG_STM32F100VB is not set
+# CONFIG_STM32F100VC is not set
+# CONFIG_STM32F100VD is not set
+# CONFIG_STM32F100VE is not set
+# CONFIG_STM32F100ZC is not set
+# CONFIG_STM32F100ZD is not set
+# CONFIG_STM32F100ZE is not set
+# CONFIG_STM32F101C8 is not set
+# CONFIG_STM32F101CB is not set
+# CONFIG_STM32F101R8 is not set
+# CONFIG_STM32F101RB is not set
+# CONFIG_STM32F101RC is not set
+# CONFIG_STM32F101RD is not set
+# CONFIG_STM32F101RE is not set
+# CONFIG_STM32F101RF is not set
+# CONFIG_STM32F101RG is not set
+# CONFIG_STM32F101T8 is not set
+# CONFIG_STM32F101TB is not set
+# CONFIG_STM32F101V8 is not set
+# CONFIG_STM32F101VB is not set
+# CONFIG_STM32F101VC is not set
+# CONFIG_STM32F101VD is not set
+# CONFIG_STM32F101VE is not set
+# CONFIG_STM32F101VF is not set
+# CONFIG_STM32F101VG is not set
+# CONFIG_STM32F101ZC is not set
+# CONFIG_STM32F101ZD is not set
+# CONFIG_STM32F101ZE is not set
+# CONFIG_STM32F101ZF is not set
+# CONFIG_STM32F101ZG is not set
+# CONFIG_STM32F102C8 is not set
+# CONFIG_STM32F102CB is not set
+# CONFIG_STM32F102R8 is not set
+# CONFIG_STM32F102RB is not set
+# CONFIG_STM32F103C8 is not set
+# CONFIG_STM32F103CB is not set
+# CONFIG_STM32F103R8 is not set
+CONFIG_STM32F103RB=y
+# CONFIG_STM32F103RC is not set
+# CONFIG_STM32F103RD is not set
+# CONFIG_STM32F103RE is not set
+# CONFIG_STM32F103RF is not set
+# CONFIG_STM32F103RG is not set
+# CONFIG_STM32F103T8 is not set
+# CONFIG_STM32F103TB is not set
+# CONFIG_STM32F103V8 is not set
+# CONFIG_STM32F103VB is not set
+# CONFIG_STM32F103VC is not set
+# CONFIG_STM32F103VD is not set
+# CONFIG_STM32F103VE is not set
+# CONFIG_STM32F103VF is not set
+# CONFIG_STM32F103VG is not set
+# CONFIG_STM32F103ZC is not set
+# CONFIG_STM32F103ZD is not set
+# CONFIG_STM32F103ZE is not set
+# CONFIG_STM32F103ZF is not set
+# CONFIG_STM32F103ZG is not set
+# CONFIG_STM32F105R8 is not set
+# CONFIG_STM32F105RB is not set
+# CONFIG_STM32F105RC is not set
+# CONFIG_STM32F105V8 is not set
+# CONFIG_STM32F105VB is not set
+# CONFIG_STM32F105VC is not set
+# CONFIG_STM32F107RB is not set
+# CONFIG_STM32F107RC is not set
+# CONFIG_STM32F107VB is not set
+# CONFIG_STM32F107VC is not set
+# CONFIG_RT_USING_HSI is not set
+CONFIG_RT_HSE_VALUE=8000000
 CONFIG_STM32F10X_PIN_NUMBERS=64
 # CONFIG_RT_USING_UART1 is not set
 CONFIG_RT_USING_UART2=y

+ 137 - 7
bsp/stm32f10x_HAL/KConfig

@@ -18,14 +18,144 @@ config $PKGS_DIR
 source "$RTT_DIR/KConfig"
 source "$PKGS_DIR/KConfig"
 
+choice
+    prompt "Device type"
+    default STM32F103RB
+    config STM32F100RC
+        bool "STM32F100RC"
+    config STM32F100RD
+        bool "STM32F100RD"
+    config STM32F100RE
+        bool "STM32F100RE"
+    config STM32F100VC
+        bool "STM32F100VC"
+    config STM32F100VD
+        bool "STM32F100VD"
+    config STM32F100VE
+        bool "STM32F100VE"
+    config STM32F100ZC
+        bool "STM32F100ZC"
+    config STM32F100ZD
+        bool "STM32F100ZD"
+    config STM32F100ZE
+        bool "STM32F100ZE"
+    config STM32F101CB
+        bool "STM32F101CB"
+    config STM32F101RB
+        bool "STM32F101RB"
+    config STM32F101RC
+        bool "STM32F101RC"
+    config STM32F101RD
+        bool "STM32F101RD"
+    config STM32F101RE
+        bool "STM32F101RE"
+    config STM32F101RF
+        bool "STM32F101RF"
+    config STM32F101RG
+        bool "STM32F101RG"
+    config STM32F101TB
+        bool "STM32F101TB"
+    config STM32F101VB
+        bool "STM32F101VB"
+    config STM32F101VC
+        bool "STM32F101VC"
+    config STM32F101VD
+        bool "STM32F101VD"
+    config STM32F101VE
+        bool "STM32F101VE"
+    config STM32F101VF
+        bool "STM32F101VF"
+    config STM32F101VG
+        bool "STM32F101VG"
+    config STM32F101ZC
+        bool "STM32F101ZC"
+    config STM32F101ZD
+        bool "STM32F101ZD"
+    config STM32F101ZE
+        bool "STM32F101ZE"
+    config STM32F101ZF
+        bool "STM32F101ZF"
+    config STM32F101ZG
+        bool "STM32F101ZG"
+    config STM32F102CB
+        bool "STM32F102CB"
+    config STM32F102RB
+        bool "STM32F102RB"
+    config STM32F103C8
+        bool "STM32F103C8"
+    config STM32F103CB
+        bool "STM32F103CB"
+    config STM32F103R8
+        bool "STM32F103R8"
+    config STM32F103RB
+        bool "STM32F103RB"
+    config STM32F103RC
+        bool "STM32F103RC"
+    config STM32F103RD
+        bool "STM32F103RD"
+    config STM32F103RE
+        bool "STM32F103RE"
+    config STM32F103RF
+        bool "STM32F103RF"
+    config STM32F103RG
+        bool "STM32F103RG"
+    config STM32F103T8
+        bool "STM32F103T8"
+    config STM32F103TB
+        bool "STM32F103TB"
+    config STM32F103V8
+        bool "STM32F103V8"
+    config STM32F103VB
+        bool "STM32F103VB"
+    config STM32F103VC
+        bool "STM32F103VC"
+    config STM32F103VD
+        bool "STM32F103VD"
+    config STM32F103VE
+        bool "STM32F103VE"
+    config STM32F103VF
+        bool "STM32F103VF"
+    config STM32F103VG
+        bool "STM32F103VG"
+    config STM32F103ZC
+        bool "STM32F103ZC"
+    config STM32F103ZD
+        bool "STM32F103ZD"
+    config STM32F103ZE
+        bool "STM32F103ZE"
+    config STM32F103ZF
+        bool "STM32F103ZF"
+    config STM32F103ZG
+        bool "STM32F103ZG"
+    config STM32F105R8
+        bool "STM32F105R8"
+    config STM32F105RB
+        bool "STM32F105RB"
+    config STM32F105RC
+        bool "STM32F105RC"
+    config STM32F105V8
+        bool "STM32F105V8"
+    config STM32F105VB
+        bool "STM32F105VB"
+    config STM32F105VC
+        bool "STM32F105VC"
+    config STM32F107RB
+        bool "STM32F107RB"
+    config STM32F107RC
+        bool "STM32F107RC"
+    config STM32F107VB
+        bool "STM32F107VB"
+    config STM32F107VC
+        bool "STM32F107VC"
+endchoice
+config RT_USING_HSI
+    bool "Using HSI as clock source"
+    default n
+config RT_HSE_VALUE
+    int "HSE Value"
+    default 8000000
+    depends on !RT_USING_HSI
 
-if RT_USING_PIN
-
-    config STM32F10X_PIN_NUMBERS
-        int "number of stm32 pin numbers"
-        default 64
-
-endif
 
 if RT_USING_SERIAL
 

+ 36 - 14
bsp/stm32f10x_HAL/Libraries/SConscript

@@ -53,34 +53,56 @@ STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c
 STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_utils.c
 
 """)
-if rtconfig.STM32_TYPE == 'STM32F100xB' or rtconfig.STM32_TYPE == 'STM32F100xE':
+#device options
+if GetDepend(['STM32F100RC']) or GetDepend(['STM32F100RC']) or GetDepend(['STM32F100RC']) or GetDepend(['STM32F100RD']) or GetDepend(['STM32F100RE']) or GetDepend(['STM32F100VD']) or GetDepend(['STM32F100VE']) or GetDepend(['STM32F100ZD']) or GetDepend(['STM32F100ZE']):
+    STM32_TYPE = 'STM32F100xE'
+if GetDepend(['STM32F101TB']) or GetDepend(['STM32F101CB']) or GetDepend(['STM32F101RB']) or GetDepend(['STM32F101VB']):
+    STM32_TYPE = 'STM32F101xB'
+if GetDepend(['STM32F101RC']) or GetDepend(['STM32F101VC']) or GetDepend(['STM32F101ZC']) or GetDepend(['STM32F101RD']) or GetDepend(['STM32F101RE']) or GetDepend(['STM32F101VD']) or GetDepend(['STM32F101VE']) or GetDepend(['STM32F101ZD']) or GetDepend(['STM32F101ZE']):
+    STM32_TYPE = 'STM32F101xE'
+if GetDepend(['STM32F101RF']) or GetDepend(['STM32F101RG']) or GetDepend(['STM32F101VF']) or GetDepend(['STM32F101VG']) or GetDepend(['STM32F101ZF']) or GetDepend(['STM32F101ZG']):
+    STM32_TYPE = 'STM32F101xG'
+if GetDepend(['STM32F102CB']) or GetDepend(['STM32F102RB']):
+    STM32_TYPE = 'STM32F102xB'
+if GetDepend(['STM32F103T8']) or GetDepend(['STM32F103TB']) or GetDepend(['STM32F103C8']) or GetDepend(['STM32F103CB']) or GetDepend(['STM32F103R8']) or GetDepend(['STM32F103RB']) or GetDepend(['STM32F103V8']) or GetDepend(['STM32F103VB']):
+    STM32_TYPE = 'STM32F103xB'
+if GetDepend(['STM32F103RC']) or GetDepend(['STM32F103VC']) or GetDepend(['STM32F103ZC']) or GetDepend(['STM32F103RD']) or GetDepend(['STM32F103RE']) or GetDepend(['STM32F103VD']) or GetDepend(['STM32F103VE']) or GetDepend(['STM32F103ZD']) or GetDepend(['STM32F103ZE']):
+    STM32_TYPE = 'STM32F103xE'
+if GetDepend(['STM32F103RF']) or GetDepend(['STM32F103RG']) or GetDepend(['STM32F103VF']) or GetDepend(['STM32F103VG']) or GetDepend(['STM32F103ZF']) or GetDepend(['STM32F103ZG']):
+    STM32_TYPE = 'STM32F103xG'
+if GetDepend(['STM32F105R8']) or GetDepend(['STM32F105RB']) or GetDepend(['STM32F105RC']) or GetDepend(['STM32F105V8']) or GetDepend(['STM32F105VB']) or GetDepend(['STM32F105VC']):
+    STM32_TYPE = 'STM32F105xC'
+if GetDepend(['STM32F107RB']) or GetDepend(['STM32F107RC']) or GetDepend(['STM32F107VB']) or GetDepend(['STM32F107VC']):
+    STM32_TYPE = 'STM32F107xC'
+    
+if STM32_TYPE == 'STM32F100xB' or STM32_TYPE == 'STM32F100xE':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cec.c']
 
-if rtconfig.STM32_TYPE == 'STM32F103x6' or rtconfig.STM32_TYPE == 'STM32F103xB' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F103xG' or rtconfig.STM32_TYPE == 'STM32F105xC' or rtconfig.STM32_TYPE == 'STM32F107xC':
+if STM32_TYPE == 'STM32F103x6' or STM32_TYPE == 'STM32F103xB' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F103xG' or STM32_TYPE == 'STM32F105xC' or STM32_TYPE == 'STM32F107xC':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c']
 
-if rtconfig.STM32_TYPE == 'STM32F100xB' or rtconfig.STM32_TYPE == 'STM32F100xE' or rtconfig.STM32_TYPE == 'STM32F101xE' or rtconfig.STM32_TYPE == 'STM32F101xG' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F103xG' or rtconfig.STM32_TYPE == 'STM32F105xC' or rtconfig.STM32_TYPE == 'STM32F107xC':
+if STM32_TYPE == 'STM32F100xB' or STM32_TYPE == 'STM32F100xE' or STM32_TYPE == 'STM32F101xE' or STM32_TYPE == 'STM32F101xG' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F103xG' or STM32_TYPE == 'STM32F105xC' or STM32_TYPE == 'STM32F107xC':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dac.c'] + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dac_ex.c']
 
-if rtconfig.STM32_TYPE == 'STM32F107xC':
+if STM32_TYPE == 'STM32F107xC':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_eth.c']
 
-if rtconfig.STM32_TYPE == 'STM32F107xC' or rtconfig.STM32_TYPE == 'STM32F105xC':
+if STM32_TYPE == 'STM32F107xC' or STM32_TYPE == 'STM32F105xC':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_hcd.c']
 
-if rtconfig.STM32_TYPE == 'STM32F107xC' or rtconfig.STM32_TYPE == 'STM32F105xC' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F103xG':
+if STM32_TYPE == 'STM32F107xC' or STM32_TYPE == 'STM32F105xC' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F103xG':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2s.c']
 
-if rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F103xG':
+if STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F103xG':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_mmc.c'] + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_sd.c']
 
-if rtconfig.STM32_TYPE == 'STM32F101xE' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F101xG' or rtconfig.STM32_TYPE == 'STM32F103xG':
+if STM32_TYPE == 'STM32F101xE' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F101xG' or STM32_TYPE == 'STM32F103xG':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_nand.c'] + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pccard.c']
 
-if rtconfig.STM32_TYPE == 'STM32F101xE' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F101xG' or rtconfig.STM32_TYPE == 'STM32F103xG' or rtconfig.STM32_TYPE == 'STM32F100xE':
+if STM32_TYPE == 'STM32F101xE' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F101xG' or STM32_TYPE == 'STM32F103xG' or STM32_TYPE == 'STM32F100xE':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_nor.c'] + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_sram.c']
 
-if rtconfig.STM32_TYPE == 'STM32F102x6' or rtconfig.STM32_TYPE == 'STM32F102xB' or rtconfig.STM32_TYPE == 'STM32F103x6' or rtconfig.STM32_TYPE == 'STM32F103xB' or rtconfig.STM32_TYPE == 'STM32F103xE' or rtconfig.STM32_TYPE == 'STM32F103xG' or rtconfig.STM32_TYPE == 'STM32F105xC' or rtconfig.STM32_TYPE == 'STM32F107xC':
+if STM32_TYPE == 'STM32F102x6' or STM32_TYPE == 'STM32F102xB' or STM32_TYPE == 'STM32F103x6' or STM32_TYPE == 'STM32F103xB' or STM32_TYPE == 'STM32F103xE' or STM32_TYPE == 'STM32F103xG' or STM32_TYPE == 'STM32F105xC' or STM32_TYPE == 'STM32F107xC':
 	src = src + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c'] + ['STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c']
 
 # starupt scripts for each STM32 kind
@@ -102,11 +124,11 @@ startup_scripts['STM32F107xC']     = 'startup_stm32f107xc.s'
 
 # add for startup script 
 if rtconfig.CROSS_TOOL == 'gcc':
-    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/gcc/' + startup_scripts[rtconfig.STM32_TYPE]]
+    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/gcc/' + startup_scripts[STM32_TYPE]]
 elif rtconfig.CROSS_TOOL == 'keil':
-    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/arm/' + startup_scripts[rtconfig.STM32_TYPE]]
+    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/arm/' + startup_scripts[STM32_TYPE]]
 elif rtconfig.CROSS_TOOL == 'iar':
-    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/iar/' + startup_scripts[rtconfig.STM32_TYPE]]
+    src = src + ['CMSIS/Device/ST/STM32F1xx/Source/Templates/iar/' + startup_scripts[STM32_TYPE]]
 
 path = [cwd + '/CMSIS/Device/ST/STM32F1xx/Include', 
 	cwd + '/STM32F1xx_HAL_Driver/Inc',
@@ -115,7 +137,7 @@ path = [cwd + '/CMSIS/Device/ST/STM32F1xx/Include',
 if GetDepend(['RT_USING_RTT_CMSIS']):
     path += [RTT_ROOT + '/components/CMSIS/Include']
 
-CPPDEFINES = ['USE_HAL_DRIVER', rtconfig.STM32_TYPE]
+CPPDEFINES = ['USE_HAL_DRIVER',STM32_TYPE]
 group = DefineGroup('STM32_HAL', src, depend = [''], CPPPATH = path, CPPDEFINES = CPPDEFINES)
 
 Return('group')

+ 179 - 1
bsp/stm32f10x_HAL/drivers/board.h

@@ -19,6 +19,184 @@
 
 #include "stm32f1xx_hal.h"
 /* board configuration */
+#if \
+    defined(STM32F101TB)||\
+    defined(STM32F103T8)||\
+    defined(STM32F103TB)
+#define STM32F10X_PIN_NUMBERS	36
+#elif \
+    defined(STM32F101CB)||\
+    defined(STM32F102CB)||\
+    defined(STM32F103C8)||\
+    defined(STM32F103CB)
+#define STM32F10X_PIN_NUMBERS	48
+#elif \
+    defined(STM32F100RC)||\
+    defined(STM32F100RD)||\
+    defined(STM32F100RE)||\
+    defined(STM32F101RB)||\
+    defined(STM32F101RC)||\
+    defined(STM32F101RD)||\
+    defined(STM32F101RE)||\
+    defined(STM32F101RF)||\
+    defined(STM32F101RG)||\
+    defined(STM32F102RB)||\
+    defined(STM32F103R8)||\
+    defined(STM32F103RB)||\
+    defined(STM32F103RC)||\
+    defined(STM32F103RD)||\
+    defined(STM32F103RE)||\
+    defined(STM32F103RF)||\
+    defined(STM32F103RG)||\
+    defined(STM32F105R8)||\
+    defined(STM32F105RB)||\
+    defined(STM32F105RC)||\
+    defined(STM32F107RB)||\
+    defined(STM32F107RC)
+#define STM32F10X_PIN_NUMBERS 64
+#elif \
+    defined(STM32F100VC)||\
+    defined(STM32F100VD)||\
+    defined(STM32F100VE)||\
+    defined(STM32F101VB)||\
+    defined(STM32F101VC)||\
+    defined(STM32F101VD)||\
+    defined(STM32F101VE)||\
+    defined(STM32F101VF)||\
+    defined(STM32F101VG)||\
+    defined(STM32F103V8)||\
+    defined(STM32F103VB)||\
+    defined(STM32F103VC)||\
+    defined(STM32F103VD)||\
+    defined(STM32F103VE)||\
+    defined(STM32F103VF)||\
+    defined(STM32F103VG)||\
+    defined(STM32F105V8)||\
+    defined(STM32F105VB)||\
+    defined(STM32F105VC)||\
+    defined(STM32F107VB)||\
+    defined(STM32F107VC)
+#define STM32F10X_PIN_NUMBERS 100
+#elif \
+    defined(STM32F100ZC)||\
+    defined(STM32F100ZD)||\
+    defined(STM32F100ZE)||\
+    defined(STM32F101ZC)||\
+    defined(STM32F101ZD)||\
+    defined(STM32F101ZE)||\
+    defined(STM32F101ZF)||\
+    defined(STM32F101ZG)||\
+    defined(STM32F103ZC)||\
+    defined(STM32F103ZD)||\
+    defined(STM32F103ZE)||\
+    defined(STM32F103ZF)||\
+    defined(STM32F103ZG)
+#define STM32F10X_PIN_NUMBERS 144
+#endif
+
+#if \
+    defined(STM32F100RC)||\
+    defined(STM32F100VC)||\
+    defined(STM32F100ZC)
+#define STM32_SRAM_SIZE 24
+//#define STM32F100xE
+#elif \
+    defined(STM32F100RD)||\
+    defined(STM32F100RE)||\
+    defined(STM32F100VD)||\
+    defined(STM32F100VE)||\
+    defined(STM32F100ZD)||\
+    defined(STM32F100ZE)
+#define STM32_SRAM_SIZE 32
+//#define STM32F100xE
+#elif \
+    defined(STM32F101TB)||\
+    defined(STM32F101CB)||\
+    defined(STM32F101RB)||\
+    defined(STM32F101VB)
+#define STM32_SRAM_SIZE 16
+//#define STM32F101xB
+#elif \
+    defined(STM32F101RC)||\
+    defined(STM32F101VC)||\
+    defined(STM32F101ZC)
+#define STM32_SRAM_SIZE 32
+//#define STM32F101xE
+#elif \
+    defined(STM32F101RD)||\
+    defined(STM32F101RE)||\
+    defined(STM32F101VD)||\
+    defined(STM32F101VE)||\
+    defined(STM32F101ZD)||\
+    defined(STM32F101ZE)
+#define STM32_SRAM_SIZE 48
+//#define STM32F101xE
+#elif \
+    defined(STM32F101RF)||\
+    defined(STM32F101RG)||\
+    defined(STM32F101VF)||\
+    defined(STM32F101VG)||\
+    defined(STM32F101ZF)||\
+    defined(STM32F101ZG)
+#define STM32_SRAM_SIZE 80
+//#define STM32F101xG
+#elif \
+    defined(STM32F102CB)||\
+    defined(STM32F102RB)
+#define STM32_SRAM_SIZE 16
+//#define STM32F102xB
+#elif \
+    defined(STM32F103T8)||\
+    defined(STM32F103TB)||\
+    defined(STM32F103C8)||\
+    defined(STM32F103CB)||\
+    defined(STM32F103R8)||\
+    defined(STM32F103RB)||\
+    defined(STM32F103V8)||\
+    defined(STM32F103VB)
+#define STM32_SRAM_SIZE 20
+//#define STM32F103xB
+#elif \
+    defined(STM32F103RC)||\
+    defined(STM32F103VC)||\
+    defined(STM32F103ZC)
+#define STM32_SRAM_SIZE 48 
+//#define STM32F103xE
+#elif \
+    defined(STM32F103RD)||\
+    defined(STM32F103RE)||\
+    defined(STM32F103VD)||\
+    defined(STM32F103VE)||\
+    defined(STM32F103ZD)||\
+    defined(STM32F103ZE)
+#define STM32_SRAM_SIZE 64
+//#define STM32F103xE
+#elif \
+    defined(STM32F103RF)||\
+    defined(STM32F103RG)||\
+    defined(STM32F103VF)||\
+    defined(STM32F103VG)||\
+    defined(STM32F103ZF)||\
+    defined(STM32F103ZG)
+#define STM32_SRAM_SIZE 96
+//#define STM32F103xG
+#elif \
+    defined(STM32F105R8)||\
+    defined(STM32F105RB)||\
+    defined(STM32F105RC)||\
+    defined(STM32F105V8)||\
+    defined(STM32F105VB)||\
+    defined(STM32F105VC)
+#define STM32_SRAM_SIZE 64
+//#define STM32F105xC
+#elif \
+    defined(STM32F107RB)||\
+    defined(STM32F107RC)||\
+    defined(STM32F107VB)||\
+    defined(STM32F107VC)
+#define STM32_SRAM_SIZE 64
+//#define STM32F107xC
+#endif
 
 /* whether use board external SRAM memory */
 // <e>Use external SRAM memory on the board
@@ -34,7 +212,7 @@
 
 // <o> Internal SRAM memory size[Kbytes] <8-64>
 //	<i>Default: 64
-#define STM32_SRAM_SIZE 20
+
 #define STM32_SRAM_END (0x20000000 + STM32_SRAM_SIZE * 1024)
 #ifdef __CC_ARM
 extern int Image$$RW_IRAM1$$ZI$$Limit;

+ 82 - 39
bsp/stm32f10x_HAL/drivers/drv_gpio.c

@@ -34,46 +34,50 @@ static void GPIOB_CLK_ENABLE(void)
     __HAL_RCC_GPIOB_CLK_ENABLE();
 #endif
 }
-static void GPIOC_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOC_CLK_ENABLE
-    __HAL_RCC_GPIOC_CLK_ENABLE();
-#endif
-}
-#if (STM32F10X_PIN_NUMBERS >48)
+#if (STM32F10X_PIN_NUMBERS >36)
+    static void GPIOC_CLK_ENABLE(void)
+    {
+    #ifdef __HAL_RCC_GPIOC_CLK_ENABLE
+        __HAL_RCC_GPIOC_CLK_ENABLE();
+    #endif
+    }
+    #if (STM32F10X_PIN_NUMBERS >48)
 
-static void GPIOD_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOD_CLK_ENABLE
-    __HAL_RCC_GPIOD_CLK_ENABLE();
-#endif
-}
-#if (STM32F10X_PIN_NUMBERS >64)
-static void GPIOE_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOE_CLK_ENABLE
-    __HAL_RCC_GPIOE_CLK_ENABLE();
-#endif
-}
-static void GPIOF_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOF_CLK_ENABLE
-    __HAL_RCC_GPIOF_CLK_ENABLE();
-#endif
-}
-static void GPIOG_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOG_CLK_ENABLE
-    __HAL_RCC_GPIOG_CLK_ENABLE();
-#endif
-}
-static void GPIOH_CLK_ENABLE(void)
-{
-#ifdef __HAL_RCC_GPIOH_CLK_ENABLE
-    __HAL_RCC_GPIOH_CLK_ENABLE();
-#endif
-}
-#endif
+        static void GPIOD_CLK_ENABLE(void)
+        {
+        #ifdef __HAL_RCC_GPIOD_CLK_ENABLE
+            __HAL_RCC_GPIOD_CLK_ENABLE();
+        #endif
+        }
+        #if (STM32F10X_PIN_NUMBERS >64)
+            static void GPIOE_CLK_ENABLE(void)
+            {
+            #ifdef __HAL_RCC_GPIOE_CLK_ENABLE
+                __HAL_RCC_GPIOE_CLK_ENABLE();
+            #endif
+            }
+            #if (STM32F10X_PIN_NUMBERS >100)
+                static void GPIOF_CLK_ENABLE(void)
+                {
+                #ifdef __HAL_RCC_GPIOF_CLK_ENABLE
+                    __HAL_RCC_GPIOF_CLK_ENABLE();
+                #endif
+                }
+                static void GPIOG_CLK_ENABLE(void)
+                {
+                #ifdef __HAL_RCC_GPIOG_CLK_ENABLE
+                    __HAL_RCC_GPIOG_CLK_ENABLE();
+                #endif
+                }
+                static void GPIOH_CLK_ENABLE(void)
+                {
+                #ifdef __HAL_RCC_GPIOH_CLK_ENABLE
+                    __HAL_RCC_GPIOH_CLK_ENABLE();
+                #endif
+                }
+            #endif
+        #endif
+    #endif
 #endif
 /* STM32 GPIO driver */
 struct pin_index
@@ -86,6 +90,45 @@ struct pin_index
 
 static const struct pin_index pins[] =
 {
+#if (STM32F10X_PIN_NUMBERS == 36)
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN(7, A, 0),
+    __STM32_PIN(8, A, 1),
+    __STM32_PIN(9, A, 2),
+    __STM32_PIN(10, A, 3),
+    __STM32_PIN(11, A, 4),
+    __STM32_PIN(12, A, 5),
+    __STM32_PIN(13, A, 6),
+    __STM32_PIN(14, A, 7),
+    __STM32_PIN(15, B, 0),
+    __STM32_PIN(16, B, 1),
+    __STM32_PIN(17, B, 2),
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN(20, A, 8),
+    __STM32_PIN(21, A, 9),
+    __STM32_PIN(22, A, 10),
+    __STM32_PIN(23, A, 11),
+    __STM32_PIN(24, A, 12),
+    __STM32_PIN(25, A, 13),
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN(28, A, 14),
+    __STM32_PIN(29, A, 15),
+    __STM32_PIN(30, B, 3),
+    __STM32_PIN(31, B, 4),
+    __STM32_PIN(32, B, 5),
+    __STM32_PIN(33, B, 6),
+    __STM32_PIN(34, B, 7),
+    __STM32_PIN_DEFAULT,
+    __STM32_PIN_DEFAULT,
+#endif
 #if (STM32F10X_PIN_NUMBERS == 48)
     __STM32_PIN_DEFAULT,
     __STM32_PIN_DEFAULT,

+ 2 - 0
bsp/stm32f10x_HAL/drivers/stm32f1xx_hal_conf.h

@@ -101,6 +101,8 @@
   *        This value is used by the RCC HAL module to compute the system frequency
   *        (when HSE is used as system clock source, directly or through the PLL).  
   */
+#define HSE_VALUE ((unsigned int)RT_HSE_VALUE)
+
 #if !defined  (HSE_VALUE) 
 #if defined(USE_STM3210C_EVAL)
   #define HSE_VALUE    25000000U /*!< Value of the External oscillator in Hz */

File diff suppressed because it is too large
+ 194 - 194
bsp/stm32f10x_HAL/project.uvoptx


+ 97 - 97
bsp/stm32f10x_HAL/project.uvprojx

@@ -336,7 +336,7 @@
               <MiscControls></MiscControls>
               <Define>STM32F103xB, USE_HAL_DRIVER</Define>
               <Undefine></Undefine>
-              <IncludePath>drivers;Libraries/CMSIS/Device/ST/STM32F1xx/Include;Libraries/STM32F1xx_HAL_Driver/Inc;Libraries/CMSIS/Include;applications;.;../../include;../../libcpu/arm/cortex-m3;../../libcpu/arm/common;../../components/drivers/include;../../components/drivers/include;../../components/drivers/include;../../components/finsh</IncludePath>
+              <IncludePath>applications;.;drivers;Libraries\CMSIS\Device\ST\STM32F1xx\Include;Libraries\STM32F1xx_HAL_Driver\Inc;Libraries\CMSIS\Include;..\..\include;..\..\libcpu\arm\cortex-m3;..\..\libcpu\arm\common;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\drivers\include;..\..\components\finsh</IncludePath>
             </VariousControls>
           </Cads>
           <Aads>
@@ -377,28 +377,38 @@
         </TargetArmAds>
       </TargetOption>
       <Groups>
+        <Group>
+          <GroupName>Applications</GroupName>
+          <Files>
+            <File>
+              <FileName>main.c</FileName>
+              <FileType>1</FileType>
+              <FilePath>applications\main.c</FilePath>
+            </File>
+          </Files>
+        </Group>
         <Group>
           <GroupName>Drivers</GroupName>
           <Files>
             <File>
               <FileName>board.c</FileName>
               <FileType>1</FileType>
-              <FilePath>drivers/board.c</FilePath>
+              <FilePath>drivers\board.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_it.c</FileName>
               <FileType>1</FileType>
-              <FilePath>drivers/stm32f1xx_it.c</FilePath>
+              <FilePath>drivers\stm32f1xx_it.c</FilePath>
             </File>
             <File>
               <FileName>drv_gpio.c</FileName>
               <FileType>1</FileType>
-              <FilePath>drivers/drv_gpio.c</FilePath>
+              <FilePath>drivers\drv_gpio.c</FilePath>
             </File>
             <File>
               <FileName>drv_usart.c</FileName>
               <FileType>1</FileType>
-              <FilePath>drivers/drv_usart.c</FilePath>
+              <FilePath>drivers\drv_usart.c</FilePath>
             </File>
           </Files>
         </Group>
@@ -408,252 +418,242 @@
             <File>
               <FileName>system_stm32f1xx.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/CMSIS/Device/ST/STM32F1xx/Source/Templates/system_stm32f1xx.c</FilePath>
+              <FilePath>Libraries\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_adc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_adc_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_adc_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_gpio.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_gpio_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_gpio_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_flash.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_flash_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_flash_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_dma.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_dma.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_cortex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_cortex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_crc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_crc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_crc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_i2c.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_i2c.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_i2c.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_irda.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_irda.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_irda.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_iwdg.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_iwdg.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_iwdg.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_pwr.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pwr.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_rcc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_rcc_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rcc_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_rtc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rtc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rtc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_rtc_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_rtc_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rtc_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_smartcard.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_smartcard.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_smartcard.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_spi.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_spi.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_spi_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_spi_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_spi_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_tim.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_tim_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_tim_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_uart.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_uart.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_usart.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_usart.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_usart.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_wwdg.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_wwdg.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_wwdg.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_adc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_adc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_adc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_crc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_crc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_crc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_dac.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_dac.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_dac.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_dma.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_dma.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_dma.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_exti.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_exti.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_exti.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_fsmc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_fsmc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_fsmc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_gpio.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_gpio.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_gpio.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_i2c.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_i2c.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_i2c.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_pwr.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_pwr.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_pwr.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_rcc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_rcc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_rcc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_rtc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_rtc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_rtc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_sdmmc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_sdmmc.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_sdmmc.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_spi.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_spi.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_spi.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_tim.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_tim.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_tim.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_usart.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usart.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_usart.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_usb.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_usb.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_usb.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_ll_utils.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_ll_utils.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_ll_utils.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_can.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_can.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_can.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_pcd.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd.c</FilePath>
             </File>
             <File>
               <FileName>stm32f1xx_hal_pcd_ex.c</FileName>
               <FileType>1</FileType>
-              <FilePath>Libraries/STM32F1xx_HAL_Driver/Src/stm32f1xx_hal_pcd_ex.c</FilePath>
+              <FilePath>Libraries\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pcd_ex.c</FilePath>
             </File>
             <File>
               <FileName>startup_stm32f103xb.s</FileName>
               <FileType>2</FileType>
-              <FilePath>Libraries/CMSIS/Device/ST/STM32F1xx/Source/Templates/arm/startup_stm32f103xb.s</FilePath>
-            </File>
-          </Files>
-        </Group>
-        <Group>
-          <GroupName>Applications</GroupName>
-          <Files>
-            <File>
-              <FileName>main.c</FileName>
-              <FileType>1</FileType>
-              <FilePath>applications/main.c</FilePath>
+              <FilePath>Libraries\CMSIS\Device\ST\STM32F1xx\Source\Templates\arm\startup_stm32f103xb.s</FilePath>
             </File>
           </Files>
         </Group>
@@ -663,77 +663,77 @@
             <File>
               <FileName>clock.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/clock.c</FilePath>
+              <FilePath>..\..\src\clock.c</FilePath>
             </File>
             <File>
               <FileName>components.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/components.c</FilePath>
+              <FilePath>..\..\src\components.c</FilePath>
             </File>
             <File>
               <FileName>device.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/device.c</FilePath>
+              <FilePath>..\..\src\device.c</FilePath>
             </File>
             <File>
               <FileName>idle.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/idle.c</FilePath>
+              <FilePath>..\..\src\idle.c</FilePath>
             </File>
             <File>
               <FileName>ipc.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/ipc.c</FilePath>
+              <FilePath>..\..\src\ipc.c</FilePath>
             </File>
             <File>
               <FileName>irq.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/irq.c</FilePath>
+              <FilePath>..\..\src\irq.c</FilePath>
             </File>
             <File>
               <FileName>kservice.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/kservice.c</FilePath>
+              <FilePath>..\..\src\kservice.c</FilePath>
             </File>
             <File>
               <FileName>mem.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/mem.c</FilePath>
+              <FilePath>..\..\src\mem.c</FilePath>
             </File>
             <File>
               <FileName>memheap.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/memheap.c</FilePath>
+              <FilePath>..\..\src\memheap.c</FilePath>
             </File>
             <File>
               <FileName>mempool.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/mempool.c</FilePath>
+              <FilePath>..\..\src\mempool.c</FilePath>
             </File>
             <File>
               <FileName>object.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/object.c</FilePath>
+              <FilePath>..\..\src\object.c</FilePath>
             </File>
             <File>
               <FileName>scheduler.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/scheduler.c</FilePath>
+              <FilePath>..\..\src\scheduler.c</FilePath>
             </File>
             <File>
               <FileName>signal.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/signal.c</FilePath>
+              <FilePath>..\..\src\signal.c</FilePath>
             </File>
             <File>
               <FileName>thread.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/thread.c</FilePath>
+              <FilePath>..\..\src\thread.c</FilePath>
             </File>
             <File>
               <FileName>timer.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../src/timer.c</FilePath>
+              <FilePath>..\..\src\timer.c</FilePath>
             </File>
           </Files>
         </Group>
@@ -743,27 +743,27 @@
             <File>
               <FileName>cpuport.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../libcpu/arm/cortex-m3/cpuport.c</FilePath>
+              <FilePath>..\..\libcpu\arm\cortex-m3\cpuport.c</FilePath>
             </File>
             <File>
               <FileName>context_rvds.S</FileName>
               <FileType>2</FileType>
-              <FilePath>../../libcpu/arm/cortex-m3/context_rvds.S</FilePath>
+              <FilePath>..\..\libcpu\arm\cortex-m3\context_rvds.S</FilePath>
             </File>
             <File>
               <FileName>backtrace.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../libcpu/arm/common/backtrace.c</FilePath>
+              <FilePath>..\..\libcpu\arm\common\backtrace.c</FilePath>
             </File>
             <File>
               <FileName>div0.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../libcpu/arm/common/div0.c</FilePath>
+              <FilePath>..\..\libcpu\arm\common\div0.c</FilePath>
             </File>
             <File>
               <FileName>showmem.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../libcpu/arm/common/showmem.c</FilePath>
+              <FilePath>..\..\libcpu\arm\common\showmem.c</FilePath>
             </File>
           </Files>
         </Group>
@@ -773,42 +773,42 @@
             <File>
               <FileName>pin.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/misc/pin.c</FilePath>
+              <FilePath>..\..\components\drivers\misc\pin.c</FilePath>
             </File>
             <File>
               <FileName>serial.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/serial/serial.c</FilePath>
+              <FilePath>..\..\components\drivers\serial\serial.c</FilePath>
             </File>
             <File>
               <FileName>completion.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/completion.c</FilePath>
+              <FilePath>..\..\components\drivers\src\completion.c</FilePath>
             </File>
             <File>
               <FileName>dataqueue.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/dataqueue.c</FilePath>
+              <FilePath>..\..\components\drivers\src\dataqueue.c</FilePath>
             </File>
             <File>
               <FileName>pipe.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/pipe.c</FilePath>
+              <FilePath>..\..\components\drivers\src\pipe.c</FilePath>
             </File>
             <File>
               <FileName>ringbuffer.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/ringbuffer.c</FilePath>
+              <FilePath>..\..\components\drivers\src\ringbuffer.c</FilePath>
             </File>
             <File>
               <FileName>waitqueue.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/waitqueue.c</FilePath>
+              <FilePath>..\..\components\drivers\src\waitqueue.c</FilePath>
             </File>
             <File>
               <FileName>workqueue.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/drivers/src/workqueue.c</FilePath>
+              <FilePath>..\..\components\drivers\src\workqueue.c</FilePath>
             </File>
           </Files>
         </Group>
@@ -818,32 +818,32 @@
             <File>
               <FileName>shell.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/shell.c</FilePath>
+              <FilePath>..\..\components\finsh\shell.c</FilePath>
             </File>
             <File>
               <FileName>symbol.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/symbol.c</FilePath>
+              <FilePath>..\..\components\finsh\symbol.c</FilePath>
             </File>
             <File>
               <FileName>cmd.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/cmd.c</FilePath>
+              <FilePath>..\..\components\finsh\cmd.c</FilePath>
             </File>
             <File>
               <FileName>msh.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/msh.c</FilePath>
+              <FilePath>..\..\components\finsh\msh.c</FilePath>
             </File>
             <File>
               <FileName>msh_cmd.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/msh_cmd.c</FilePath>
+              <FilePath>..\..\components\finsh\msh_cmd.c</FilePath>
             </File>
             <File>
               <FileName>msh_file.c</FileName>
               <FileType>1</FileType>
-              <FilePath>../../components/finsh/msh_file.c</FilePath>
+              <FilePath>..\..\components\finsh\msh_file.c</FilePath>
             </File>
           </Files>
         </Group>

+ 80 - 3
bsp/stm32f10x_HAL/rtconfig.h

@@ -90,6 +90,9 @@
 /* RT_USING_SDIO is not set */
 /* RT_USING_SPI is not set */
 /* RT_USING_WDT is not set */
+
+/* Using USB */
+
 /* RT_USING_USB_HOST is not set */
 /* RT_USING_USB_DEVICE is not set */
 
@@ -149,9 +152,83 @@
 /* miscellaneous packages */
 
 /* PKG_USING_HELLO is not set */
-
-/* BSP_SPECIAL CONFIG */
-
+/* STM32F100C8 is not set */
+/* STM32F100CB is not set */
+/* STM32F100R8 is not set */
+/* STM32F100RB is not set */
+/* STM32F100RC is not set */
+/* STM32F100RD is not set */
+/* STM32F100RE is not set */
+/* STM32F100V8 is not set */
+/* STM32F100VB is not set */
+/* STM32F100VC is not set */
+/* STM32F100VD is not set */
+/* STM32F100VE is not set */
+/* STM32F100ZC is not set */
+/* STM32F100ZD is not set */
+/* STM32F100ZE is not set */
+/* STM32F101C8 is not set */
+/* STM32F101CB is not set */
+/* STM32F101R8 is not set */
+/* STM32F101RB is not set */
+/* STM32F101RC is not set */
+/* STM32F101RD is not set */
+/* STM32F101RE is not set */
+/* STM32F101RF is not set */
+/* STM32F101RG is not set */
+/* STM32F101T8 is not set */
+/* STM32F101TB is not set */
+/* STM32F101V8 is not set */
+/* STM32F101VB is not set */
+/* STM32F101VC is not set */
+/* STM32F101VD is not set */
+/* STM32F101VE is not set */
+/* STM32F101VF is not set */
+/* STM32F101VG is not set */
+/* STM32F101ZC is not set */
+/* STM32F101ZD is not set */
+/* STM32F101ZE is not set */
+/* STM32F101ZF is not set */
+/* STM32F101ZG is not set */
+/* STM32F102C8 is not set */
+/* STM32F102CB is not set */
+/* STM32F102R8 is not set */
+/* STM32F102RB is not set */
+/* STM32F103C8 is not set */
+/* STM32F103CB is not set */
+/* STM32F103R8 is not set */
+#define STM32F103RB
+/* STM32F103RC is not set */
+/* STM32F103RD is not set */
+/* STM32F103RE is not set */
+/* STM32F103RF is not set */
+/* STM32F103RG is not set */
+/* STM32F103T8 is not set */
+/* STM32F103TB is not set */
+/* STM32F103V8 is not set */
+/* STM32F103VB is not set */
+/* STM32F103VC is not set */
+/* STM32F103VD is not set */
+/* STM32F103VE is not set */
+/* STM32F103VF is not set */
+/* STM32F103VG is not set */
+/* STM32F103ZC is not set */
+/* STM32F103ZD is not set */
+/* STM32F103ZE is not set */
+/* STM32F103ZF is not set */
+/* STM32F103ZG is not set */
+/* STM32F105R8 is not set */
+/* STM32F105RB is not set */
+/* STM32F105RC is not set */
+/* STM32F105V8 is not set */
+/* STM32F105VB is not set */
+/* STM32F105VC is not set */
+/* STM32F107RB is not set */
+/* STM32F107RC is not set */
+/* STM32F107VB is not set */
+/* STM32F107VC is not set */
+/* RT_USING_HSI is not set */
+#define RT_HSE_VALUE 8000000
 #define STM32F10X_PIN_NUMBERS 64
 /* RT_USING_UART1 is not set */
 #define RT_USING_UART2

+ 2 - 23
bsp/stm32f10x_HAL/rtconfig.py

@@ -8,27 +8,6 @@ CROSS_TOOL='gcc'
 if os.getenv('RTT_CC'):
 	CROSS_TOOL = os.getenv('RTT_CC')
 
-#device options
-# STM32_TYPE = 
-# 'STM32F100xB'
-# 'STM32F100xE'
-# 'STM32F101x6'
-# 'STM32F101xB'
-# 'STM32F101xE'
-# 'STM32F101xG'
-# 'STM32F102x6'
-# 'STM32F102xB'
-# 'STM32F103x6'
-# 'STM32F103xB'
-# 'STM32F103xE'
-# 'STM32F103xG'
-# 'STM32F105xC'
-# 'STM32F107xC'
-STM32_TYPE = 'STM32F103xB'
-
-# lcd panel options
-# 'FMT0371','ILI932X', 'SSD1289'
-RT_USING_LCD_TYPE = 'SSD1289'
 
 # cross_tool provides the cross compiler
 # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR
@@ -38,7 +17,7 @@ if  CROSS_TOOL == 'gcc':
 	EXEC_PATH 	= '/usr/local/gcc-arm-none-eabi-5_4-2016q3/bin/'
 elif CROSS_TOOL == 'keil':
 	PLATFORM 	= 'armcc'
-	EXEC_PATH 	= 'C:/Keil'
+	EXEC_PATH 	= 'C:/Keilv5'
 elif CROSS_TOOL == 'iar':
 	PLATFORM 	= 'iar'
 	IAR_PATH 	= 'C:/Program Files/IAR Systems/Embedded Workbench 6.0 Evaluation'
@@ -111,7 +90,7 @@ elif PLATFORM == 'iar':
     LINK = 'ilinkarm'
     TARGET_EXT = 'out'
 
-    DEVICE = ' -D USE_STDPERIPH_DRIVER' + ' -D STM32F10X_HD'
+    DEVICE = ' -D USE_HAL_DRIVER'
 
     CFLAGS = DEVICE
     CFLAGS += ' --diag_suppress Pa050'

+ 0 - 15
bsp/stm32f10x_HAL/stm32_rom.sct

@@ -1,15 +0,0 @@
-; *************************************************************
-; *** Scatter-Loading Description File generated by uVision ***
-; *************************************************************
-
-LR_IROM1 0x08000000 0x00020000  {    ; load region size_region
-  ER_IROM1 0x08000000 0x00020000  {  ; load address = execution address
-   *.o (RESET, +First)
-   *(InRoot$$Sections)
-   .ANY (+RO)
-  }
-  RW_IRAM1 0x20000000 0x00005000  {  ; RW data
-   .ANY (+RW +ZI)
-  }
-}
-

Some files were not shown because too many files changed in this diff