summaryrefslogtreecommitdiff
path: root/bsp
diff options
context:
space:
mode:
authorqianjiuyuan <[email protected]>2025-06-09 16:33:35 +0800
committerGitHub <[email protected]>2025-06-09 16:33:35 +0800
commite97c5822b4fa8d044f2feb36039a51b8612313fa (patch)
tree4915f147011c29b277823bc7e88af4e84a317030 /bsp
parentaec10aa0a83b27765829047b78449f0ee0fa5cd0 (diff)
[bsp]stm32f103-keysking ADC PWM1 I2C1驱动 (#10356)
* [bsp]stm32f103-keysking ADC与PWM1驱动 * Update README.md * 删除include main.h * 增加I2C1驱动 * 添加yml
Diffstat (limited to 'bsp')
-rw-r--r--bsp/stm32/README.md199
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/.ci/attachconfig/ci.attachconfig.yml26
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/README.md39
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/.mxproject4
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/CubeMX_Config.ioc79
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Inc/stm32f1xx_hal_conf.h2
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Src/stm32f1xx_hal_msp.c131
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/board/Kconfig42
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/project.ewp152
-rw-r--r--bsp/stm32/stm32f103-keysking-learning/project.uvprojx215
10 files changed, 694 insertions, 195 deletions
diff --git a/bsp/stm32/README.md b/bsp/stm32/README.md
index dd8d32bf61..3f287c16c0 100644
--- a/bsp/stm32/README.md
+++ b/bsp/stm32/README.md
@@ -2,105 +2,106 @@
STM32 系列 BSP 目前支持情况如下表所示:
-| **BSP 文件夹名称** | **开发板名称** |
-|:-------------------------------------------------------------- |:---------------------------------- |
-| **F0 系列** | |
-| [stm32f072-st-nucleo](stm32f072-st-nucleo) | ST 官方 STM32F072-nucleo 开发板 |
-| [stm32f091-st-nucleo](stm32f091-st-nucleo) | ST 官方 STM32F091-nucleo 开发板 |
-| **F1 系列** | |
-| [stm32f103-100ask-mini](stm32f103-100ask-mini) | 百问网F103 Mini开发板 |
-| [stm32f103-100ask-pro](stm32f103-100ask-pro) | 百问网F103 Pro开发板 |
-| [stm32f103-atk-nano](stm32f103-atk-nano) | 正点原子 F103 NANO 开发板 |
-| [stm32f103-atk-warshipv3](stm32f103-atk-warshipv3) | 正点原子 F103 战舰V3 开发板 |
-| [stm32f103-blue-pill](stm32f103-blue-pill) | STM32F103C8T6蓝色最小系统板 |
-| [stm32f103-dofly-lyc8](stm32f103-dofly-lyc8) | 德飞莱 STM32F103 开发板 |
-| [stm32f103-dofly-M3S](stm32f103-dofly-M3S) | 德飞莱 STM32F103 开发板 |
-| [stm32f103-fire-arbitrary](stm32f103-fire-arbitrary/) | 野火 F103 霸道开发板 |
-| [stm32f103-gizwits-gokitv21](stm32f103-gizwits-gokitv21) | GoKit V2.1开发板 |
-| [stm32f103-hw100k-ibox](stm32f103-hw100k-ibox) | 硬件十万个为什么 STM32F103 iBox 开发板 |
-| [stm32f103-onenet-nbiot](stm32f103-onenet-nbiot) | STM32F103 OneNET NB-IoT 开发板 |
-| [stm32f103-yf-ufun](stm32f103-yf-ufun) | STM32F103 yf-ufun 开发板 |
-| [stm32f107-uc-eval](stm32f107-uc-eval) | uC/Eval STM32F107 评估板(中国版) |
-| **F2 系列** | |
-| [stm32f207-st-nucleo](stm32f207-st-nucleo) | ST 官方 STM32F207-nucleo 开发板 |
-| **F3 系列** | |
-| [stm32f302-st-nucleo](stm32f302-st-nucleo) | ST 官方 STM32F302-nucleo 开发板 |
-| [stm32f334-st-nucleo](stm32f334-st-nucleo) | ST 官方 STM32F334-nucleo 开发板 |
-| **F4 系列** | |
-| [stm32f407-rt-spark](stm32f407-rt-spark) | 睿赛德官方 F407 星火一号开发板 |
-| [stm32f401-st-nucleo](stm32f401-st-nucleo) | ST 官方 STM32F401 Nucleo-64 开发板 |
-| [stm32f405-smdz-breadfruit](stm32f405-smdz-breadfruit) | 三木电子 SM1432F405 开发板 |
-| [stm32f407-lckfb-skystar](stm32f407-lckfb-skystar) | 立创开发板 天空星STM32F407开发板 |
-| [stm32f407-atk-explorer](stm32f407-atk-explorer) | 正点原子 F407 探索者开发板 |
-| [stm32f407-robomaster-c](stm32f407-robomaster-c) | 大疆公司 RoboMaster C型开发板 |
-| [stm32f407-st-discovery](stm32f407-st-discovery) | ST 官方 STM32F407-discovery 开发板 |
-| [stm32f410-st-nucleo](stm32f410-st-nucleo) | ST 官方 STM32F410-Nucleo-64 开发板 |
-| [stm32f411-atk-nano](stm32f411-atk-nano/) | 正点原子 F411 NANO 开发板 |
-| [stm32f411-st-nucleo](stm32f411-st-nucleo/) | ST 官方 STM32F411-Nucleo-64 开发板 |
-| [stm32f411-weact-MiniF4](stm32f411-weact-MiniF4/) | F401/F411最小系统开发板(Black Pill) |
-| [stm32f412-st-nucleo](stm32f412-st-nucleo/) | ST 官方 STM32F412-Nucleo-144 开发板 |
-| [stm32f413-st-nucleo](stm32f413-st-nucleo/) | ST 官方 STM32F413-Nucleo-144 开发板 |
-| [stm32f427-robomaster-a](stm32f427-robomaster-a/) | 大疆公司 RoboMaster A型开发板 |
-| [stm32f429-armfly-v6](stm32f429-armfly-v6) | 安富莱 F429-v6 开发板 |
-| [stm32f429-atk-apollo](stm32f429-atk-apollo) | 正点原子 F429 阿波罗开发板 |
-| [stm32f429-fire-challenger](stm32f429-fire-challenger/) | 野火 F429 挑战者开发板 |
-| [stm32f429-st-disco](stm32f429-st-disco) | ST 官方 STM32F429-discovery 开发板 |
-| [stm32f446-st-nucleo](stm32f446-st-nucleo) | ST 官方 STM32F446-nucleo 开发板 |
-| [stm32f469-st-disco](stm32f469-st-disco) | ST 官方 STM32F469-discovery 开发板 |
-| [stm32f407-fk407m2-zgt6](stm32f407-fk407m2-zgt6) | 反客科技 FK407M2-ZGT6 开发板 |
-| **F7 系列** | |
-| [stm32f746-st-disco](stm32f746-st-disco) | ST 官方 STM32F746-discovery 开发板 |
-| [stm32f767-atk-apollo](stm32f767-atk-apollo) | 正点原子 F767 阿波罗开发板 |
-| [stm32f767-fire-challenger-v1](stm32f767-fire-challenger-v1/) | 野火 F767-V1 挑战者开发板 |
-| [stm32f767-st-nucleo](stm32f767-st-nucleo) | ST 官方 STM32F767-nucleo 开发板 |
-| [stm32f769-st-disco](stm32f769-st-disco) | ST 官方 STM32f769-discovery 开发板 |
-| **G0 系列** | |
-| [stm32g030-tiny-board](stm32g030-tiny-board) | STM32G030-tiny-board 开发板 |
-| [stm32g070-st-nucleo](stm32g070-st-nucleo) | ST 官方 STM32G070-nucleo 开发板 |
-| [stm32g071-st-nucleo](stm32g071-st-nucleo) | ST 官方 STM32G071-nucleo 开发板 |
-| **G4 系列** | |
-| [stm32g431-st-nucleo](stm32g431-st-nucleo) | ST 官方 STM32G431-nucleo 开发板 |
-| **H7 系列** | |
-| [stm32h723-st-nucleo](stm32h723-st-nucleo) | ST 官方 STM32H723-nucleo 开发板 |
-| [stm32h743-armfly-v7](stm32h743-armfly-v7) | 安富莱 STM32H743 v7 开发板 |
-| [stm32h743-atk-apollo](stm32h743-atk-apollo) | 正点原子 h743 阿波罗开发板 |
-| [stm32h743-openmv-h7plus](stm32h743-openmv-h7plus) | OPENMV 官方 H7-PLUS 开发板 |
-| [stm32h743-st-nucleo](stm32h743-st-nucleo) | ST 官方 STM32H743-nucleo 开发板 |
-| [stm32h747-st-discovery](stm32h747-st-discovery) | ST 官方 STM32H747I-discovery 开发板 |
-| [stm32h750-armfly-h7-tool](stm32h750-armfly-h7-tool) | 安富莱 STM32H750 Tool 开发板 |
-| [stm32h750-artpi](stm32h750-artpi) | RT-Thread 官方 STM32H750-artpi 开发板 |
-| [stm32h750-fk750m1-vbt6](stm32h750-fk750m1-vbt6) | 反客科技 FK750M1-VBT6 开发板 |
-| [stm32h750-weact-ministm32h7xx](stm32h750-weact-ministm32h7xx) | 微行电子 STM32H7xx 核心板 |
-| **L0 系列** | |
-| [stm32l010-st-nucleo](stm32l010-st-nucleo) | ST 官方 STM32L010-nucleo 开发板 |
-| [stm32l053-st-nucleo](stm32l053-st-nucleo) | ST 官方 STM32L053-nucleo 开发板 |
-| **L4 系列** | |
-| [stm32l4r5-st-nucleo](stm32l4r5-st-nucleo) | ST 官方 STM32L4R5-Nucleo 开发板 |
-| [stm32l4r9-st-eval](stm32l4r9-st-eval) | ST 官方 STM32L4R9I-EVAL 开发板 |
-| [stm32l412-st-nucleo](stm32l412-st-nucleo) | ST 官方 STM32L412-Nucleo 开发板 |
-| [stm32l431-BearPi](stm32l431-BearPi) | STM32L431 小熊派 开发板 |
-| [stm32l432-st-nucleo](stm32l432-st-nucleo) | ST 官方 STM32L432-Nucleo 开发板 |
-| [stm32l433-st-nucleo](stm32l433-st-nucleo) | ST 官方 STM32L433-Nucleo 开发板 |
-| [stm32l452-st-nucleo](stm32l452-st-nucleo) | ST 官方 STM32L452-Nucleo 开发板 |
-| [stm32l475-atk-pandora](stm32l475-atk-pandora) | 正点原子 L475 潘多拉 IoT 开发板 |
-| [stm32l475-st-discovery](stm32l475-st-discovery) | ST 官方 stm32l475-discovery 开发板 |
-| [stm32l476-st-nucleo](stm32l476-st-nucleo) | ST 官方 STM32L476-Nucleo 开发板 |
-| [stm32l433-ali-startkit](stm32l433-ali-startkit) | 诺行 STM32L433 Ali Start Kit 开发板 |
-| [stm32l496-ali-developer](stm32l496-ali-developer) | 诺行 STM32L496 Ali Developer Kit 开发板 |
-| [stm32l496-st-nucleo](stm32l496-st-nucleo) | ST 官方 STM32L496-Nucleo 开发板 |
-| [stm32l496-st-discovery](stm32l496-st-discovery) | ST 官方 STM32L496G discovery 开发板 |
-| **L5 系列** | |
-| [stm32l552-st-nucleo](stm32l552-st-nucleo) | ST 官方 STM32L552-Nucleo 开发板 |
-| **U5 系列** | |
-| [stm32u575-st-nucleo](stm32u575-st-nucleo) | ST 官方 STM32U575ZI-Nucleo 开发板 |
-| **H5 系列** | |
-| [stm32h563-st-nucleo](stm32h563-st-nucleo) | ST 官方 STM32H563ZI-Nucleo 开发板 |
-| **MP1 系列** | |
-| [stm32mp157a-st-discovery](stm32mp157a-st-discovery) | ST 官方 STM32MP157A-DK1 开发板 |
-| [stm32mp157a-st-ev1](stm32mp157a-st-ev1) | ST 官方 STM32MP157A-EV1 开发板 |
-| **WB 系列** | |
-| [stm32wb55-st-nucleo](stm32wb55-st-nucleo) | ST 官方 STM32WB55-Nucleo 开发板 |
-| [stm32wl55-st-nucleo](stm32wl55-st-nucleo) | ST 官方 STM32WL55-Nucleo 开发板 |
+| **BSP 文件夹名称** | **开发板名称** |
+|:-------------------------------------------------------------- |:------------------------------------------------- |
+| **F0 系列** | |
+| [stm32f072-st-nucleo](stm32f072-st-nucleo) | ST 官方 STM32F072-nucleo 开发板 |
+| [stm32f091-st-nucleo](stm32f091-st-nucleo) | ST 官方 STM32F091-nucleo 开发板 |
+| **F1 系列** | |
+| [stm32f103-100ask-mini](stm32f103-100ask-mini) | 百问网F103 Mini开发板 |
+| [stm32f103-100ask-pro](stm32f103-100ask-pro) | 百问网F103 Pro开发板 |
+| [stm32f103-atk-nano](stm32f103-atk-nano) | 正点原子 F103 NANO 开发板 |
+| [stm32f103-atk-warshipv3](stm32f103-atk-warshipv3) | 正点原子 F103 战舰V3 开发板 |
+| [stm32f103-blue-pill](stm32f103-blue-pill) | STM32F103C8T6蓝色最小系统板 |
+| [stm32f103-dofly-lyc8](stm32f103-dofly-lyc8) | 德飞莱 STM32F103 开发板 |
+| [stm32f103-dofly-M3S](stm32f103-dofly-M3S) | 德飞莱 STM32F103 开发板 |
+| [stm32f103-fire-arbitrary](stm32f103-fire-arbitrary/) | 野火 F103 霸道开发板 |
+| [stm32f103-gizwits-gokitv21](stm32f103-gizwits-gokitv21) | GoKit V2.1开发板 |
+| [stm32f103-hw100k-ibox](stm32f103-hw100k-ibox) | 硬件十万个为什么 STM32F103 iBox 开发板 |
+| [stm32f103-keysking-learning](stm32f103-keysking-learning) | Keysking STM32F103学习板 |
+| [stm32f103-onenet-nbiot](stm32f103-onenet-nbiot) | STM32F103 OneNET NB-IoT 开发板 |
+| [stm32f103-yf-ufun](stm32f103-yf-ufun) | STM32F103 yf-ufun 开发板 |
+| [stm32f107-uc-eval](stm32f107-uc-eval) | uC/Eval STM32F107 评估板(中国版) |
+| **F2 系列** | |
+| [stm32f207-st-nucleo](stm32f207-st-nucleo) | ST 官方 STM32F207-nucleo 开发板 |
+| **F3 系列** | |
+| [stm32f302-st-nucleo](stm32f302-st-nucleo) | ST 官方 STM32F302-nucleo 开发板 |
+| [stm32f334-st-nucleo](stm32f334-st-nucleo) | ST 官方 STM32F334-nucleo 开发板 |
+| **F4 系列** | |
+| [stm32f407-rt-spark](stm32f407-rt-spark) | 睿赛德官方 F407 星火一号开发板 |
+| [stm32f401-st-nucleo](stm32f401-st-nucleo) | ST 官方 STM32F401 Nucleo-64 开发板 |
+| [stm32f405-smdz-breadfruit](stm32f405-smdz-breadfruit) | 三木电子 SM1432F405 开发板 |
+| [stm32f407-lckfb-skystar](stm32f407-lckfb-skystar) | 立创开发板 天空星STM32F407开发板 |
+| [stm32f407-atk-explorer](stm32f407-atk-explorer) | 正点原子 F407 探索者开发板 |
+| [stm32f407-robomaster-c](stm32f407-robomaster-c) | 大疆公司 RoboMaster C型开发板 |
+| [stm32f407-st-discovery](stm32f407-st-discovery) | ST 官方 STM32F407-discovery 开发板 |
+| [stm32f410-st-nucleo](stm32f410-st-nucleo) | ST 官方 STM32F410-Nucleo-64 开发板 |
+| [stm32f411-atk-nano](stm32f411-atk-nano/) | 正点原子 F411 NANO 开发板 |
+| [stm32f411-st-nucleo](stm32f411-st-nucleo/) | ST 官方 STM32F411-Nucleo-64 开发板 |
+| [stm32f411-weact-MiniF4](stm32f411-weact-MiniF4/) | F401/F411最小系统开发板(Black Pill) |
+| [stm32f412-st-nucleo](stm32f412-st-nucleo/) | ST 官方 STM32F412-Nucleo-144 开发板 |
+| [stm32f413-st-nucleo](stm32f413-st-nucleo/) | ST 官方 STM32F413-Nucleo-144 开发板 |
+| [stm32f427-robomaster-a](stm32f427-robomaster-a/) | 大疆公司 RoboMaster A型开发板 |
+| [stm32f429-armfly-v6](stm32f429-armfly-v6) | 安富莱 F429-v6 开发板 |
+| [stm32f429-atk-apollo](stm32f429-atk-apollo) | 正点原子 F429 阿波罗开发板 |
+| [stm32f429-fire-challenger](stm32f429-fire-challenger/) | 野火 F429 挑战者开发板 |
+| [stm32f429-st-disco](stm32f429-st-disco) | ST 官方 STM32F429-discovery 开发板 |
+| [stm32f446-st-nucleo](stm32f446-st-nucleo) | ST 官方 STM32F446-nucleo 开发板 |
+| [stm32f469-st-disco](stm32f469-st-disco) | ST 官方 STM32F469-discovery 开发板 |
+| [stm32f407-fk407m2-zgt6](stm32f407-fk407m2-zgt6) | 反客科技 FK407M2-ZGT6 开发板 |
+| **F7 系列** | |
+| [stm32f746-st-disco](stm32f746-st-disco) | ST 官方 STM32F746-discovery 开发板 |
+| [stm32f767-atk-apollo](stm32f767-atk-apollo) | 正点原子 F767 阿波罗开发板 |
+| [stm32f767-fire-challenger-v1](stm32f767-fire-challenger-v1/) | 野火 F767-V1 挑战者开发板 |
+| [stm32f767-st-nucleo](stm32f767-st-nucleo) | ST 官方 STM32F767-nucleo 开发板 |
+| [stm32f769-st-disco](stm32f769-st-disco) | ST 官方 STM32f769-discovery 开发板 |
+| **G0 系列** | |
+| [stm32g030-tiny-board](stm32g030-tiny-board) | STM32G030-tiny-board 开发板 |
+| [stm32g070-st-nucleo](stm32g070-st-nucleo) | ST 官方 STM32G070-nucleo 开发板 |
+| [stm32g071-st-nucleo](stm32g071-st-nucleo) | ST 官方 STM32G071-nucleo 开发板 |
+| **G4 系列** | |
+| [stm32g431-st-nucleo](stm32g431-st-nucleo) | ST 官方 STM32G431-nucleo 开发板 |
+| **H7 系列** | |
+| [stm32h723-st-nucleo](stm32h723-st-nucleo) | ST 官方 STM32H723-nucleo 开发板 |
+| [stm32h743-armfly-v7](stm32h743-armfly-v7) | 安富莱 STM32H743 v7 开发板 |
+| [stm32h743-atk-apollo](stm32h743-atk-apollo) | 正点原子 h743 阿波罗开发板 |
+| [stm32h743-openmv-h7plus](stm32h743-openmv-h7plus) | OPENMV 官方 H7-PLUS 开发板 |
+| [stm32h743-st-nucleo](stm32h743-st-nucleo) | ST 官方 STM32H743-nucleo 开发板 |
+| [stm32h747-st-discovery](stm32h747-st-discovery) | ST 官方 STM32H747I-discovery 开发板 |
+| [stm32h750-armfly-h7-tool](stm32h750-armfly-h7-tool) | 安富莱 STM32H750 Tool 开发板 |
+| [stm32h750-artpi](stm32h750-artpi) | RT-Thread 官方 STM32H750-artpi 开发板 |
+| [stm32h750-fk750m1-vbt6](stm32h750-fk750m1-vbt6) | 反客科技 FK750M1-VBT6 开发板 |
+| [stm32h750-weact-ministm32h7xx](stm32h750-weact-ministm32h7xx) | 微行电子 STM32H7xx 核心板 |
+| **L0 系列** | |
+| [stm32l010-st-nucleo](stm32l010-st-nucleo) | ST 官方 STM32L010-nucleo 开发板 |
+| [stm32l053-st-nucleo](stm32l053-st-nucleo) | ST 官方 STM32L053-nucleo 开发板 |
+| **L4 系列** | |
+| [stm32l4r5-st-nucleo](stm32l4r5-st-nucleo) | ST 官方 STM32L4R5-Nucleo 开发板 |
+| [stm32l4r9-st-eval](stm32l4r9-st-eval) | ST 官方 STM32L4R9I-EVAL 开发板 |
+| [stm32l412-st-nucleo](stm32l412-st-nucleo) | ST 官方 STM32L412-Nucleo 开发板 |
+| [stm32l431-BearPi](stm32l431-BearPi) | STM32L431 小熊派 开发板 |
+| [stm32l432-st-nucleo](stm32l432-st-nucleo) | ST 官方 STM32L432-Nucleo 开发板 |
+| [stm32l433-st-nucleo](stm32l433-st-nucleo) | ST 官方 STM32L433-Nucleo 开发板 |
+| [stm32l452-st-nucleo](stm32l452-st-nucleo) | ST 官方 STM32L452-Nucleo 开发板 |
+| [stm32l475-atk-pandora](stm32l475-atk-pandora) | 正点原子 L475 潘多拉 IoT 开发板 |
+| [stm32l475-st-discovery](stm32l475-st-discovery) | ST 官方 stm32l475-discovery 开发板 |
+| [stm32l476-st-nucleo](stm32l476-st-nucleo) | ST 官方 STM32L476-Nucleo 开发板 |
+| [stm32l433-ali-startkit](stm32l433-ali-startkit) | 诺行 STM32L433 Ali Start Kit 开发板 |
+| [stm32l496-ali-developer](stm32l496-ali-developer) | 诺行 STM32L496 Ali Developer Kit 开发板 |
+| [stm32l496-st-nucleo](stm32l496-st-nucleo) | ST 官方 STM32L496-Nucleo 开发板 |
+| [stm32l496-st-discovery](stm32l496-st-discovery) | ST 官方 STM32L496G discovery 开发板 |
+| **L5 系列** | |
+| [stm32l552-st-nucleo](stm32l552-st-nucleo) | ST 官方 STM32L552-Nucleo 开发板 |
+| **U5 系列** | |
+| [stm32u575-st-nucleo](stm32u575-st-nucleo) | ST 官方 STM32U575ZI-Nucleo 开发板 |
+| **H5 系列** | |
+| [stm32h563-st-nucleo](stm32h563-st-nucleo) | ST 官方 STM32H563ZI-Nucleo 开发板 |
+| **MP1 系列** | |
+| [stm32mp157a-st-discovery](stm32mp157a-st-discovery) | ST 官方 STM32MP157A-DK1 开发板 |
+| [stm32mp157a-st-ev1](stm32mp157a-st-ev1) | ST 官方 STM32MP157A-EV1 开发板 |
+| **WB 系列** | |
+| [stm32wb55-st-nucleo](stm32wb55-st-nucleo) | ST 官方 STM32WB55-Nucleo 开发板 |
+| [stm32wl55-st-nucleo](stm32wl55-st-nucleo) | ST 官方 STM32WL55-Nucleo 开发板 |
可以通过阅读相应 BSP 下的 README 来快速上手,如果想要使用 BSP 更多功能可参考 docs 文件夹下提供的说明文档,如下表所示:
diff --git a/bsp/stm32/stm32f103-keysking-learning/.ci/attachconfig/ci.attachconfig.yml b/bsp/stm32/stm32f103-keysking-learning/.ci/attachconfig/ci.attachconfig.yml
index 44c1b881af..5d0c8906b8 100644
--- a/bsp/stm32/stm32f103-keysking-learning/.ci/attachconfig/ci.attachconfig.yml
+++ b/bsp/stm32/stm32f103-keysking-learning/.ci/attachconfig/ci.attachconfig.yml
@@ -2,8 +2,6 @@ scons.args: &scons
scons_arg:
- '--strict'
-
-
devices.uart:
<<: *scons
kconfig:
@@ -18,4 +16,26 @@ devices.pulse_encoder:
<<: *scons
kconfig:
- CONFIG_BSP_USING_PULSE_ENCODER=y
- - CONFIG_BSP_USING_PULSE_ENCODER1=y
+devices.adc:
+ <<: *scons
+ kconfig:
+ - CONFIG_BSP_USING_ADC=y
+devices.i2c1:
+ <<: *scons
+ kconfig:
+ - CONFIG_BSP_USING_I2C1=y
+devices.pwm2:
+ <<: *scons
+ kconfig:
+ - CONFIG_BSP_USING_PWM=y
+ - CONFIG_BSP_USING_PWM2=y
+devices.pwm3:
+ <<: *scons
+ kconfig:
+ - CONFIG_BSP_USING_PWM=y
+ - CONFIG_BSP_USING_PWM3=y
+devices.pwm4:
+ <<: *scons
+ kconfig:
+ - CONFIG_BSP_USING_PWM=y
+ - CONFIG_BSP_USING_PWM4=y
diff --git a/bsp/stm32/stm32f103-keysking-learning/README.md b/bsp/stm32/stm32f103-keysking-learning/README.md
index 1bb845c039..7e167bf934 100644
--- a/bsp/stm32/stm32f103-keysking-learning/README.md
+++ b/bsp/stm32/stm32f103-keysking-learning/README.md
@@ -26,10 +26,7 @@ Keysking学习板是B站UP主Keysking推出的一块基于ARM Cortex-M3内核的
* MCU: STM32F103C8T6,主频72MHz,64KB FLASH,20KB RAM
-* 常用外设可参考图示:
-
- * 按键:2个,KEY1(PB12),KEY2(PB13)
- * LED:3个,蓝灯(PA6),绿灯(PA7),红灯(PB0)
+* 常用外设可参考图示
* 常用接口:USB转串口
@@ -41,19 +38,27 @@ Keysking学习板是B站UP主Keysking推出的一块基于ARM Cortex-M3内核的
本BSP目前对外设的支持情况如下:
-| 板载外设 | 支持情况 | 备注 |
-|------------|:--------:|--------------------------------------------|
-| USB转串口 | 支持 | UART2(用作finsh) |
-| 旋转编码器 | 支持 | A相(PA8),B相(PA9),按键(PB15) |
-| OLED | | |
-| LED | 支持 | GPIO or PWM: Blue(PA6),Green(PA7),Red(PB0) |
-| 无源蜂鸣器 | 支持 | PWM4_CH4 |
-| **片上外设** | **支持情况** | **备注** |
-| GPIO | 支持 | |
-| UART | 支持 | UART2,3 |
-| PWM | 支持 | PWM3,PWM4 |
-| **预留外设接口** | **支持情况** | **备注** |
-| SERVO | 支持 | PWM4_CH3 |
+| 板载外设 | 支持情况 | 备注 |
+| ---------------------------------- |:--------:| ------------------------------------------ |
+| USB转串口 | 支持 | UART2(用作finsh) |
+| 旋转编码器 | 支持 | A相(PA8),B相(PA9),按键(PB15) |
+| OLED | 支持 | I2C1,0x7A |
+| LED | 支持 | GPIO or PWM: Blue(PA6),Green(PA7),Red(PB0) |
+| 无源蜂鸣器 | 支持 | PWM4_CH4 |
+| 电位器 | 支持 | ADC1_IN5 |
+| 温湿度传感器 | 支持 | I2C1,0x38 |
+| **片上外设** | **支持情况** | **备注** |
+| GPIO | 支持 | |
+| UART | 支持 | UART2,3 |
+| PWM | 支持 | PWM2,3,4 |
+| ADC | 支持 | ADC1 |
+| **预留外设接口** | **支持情况** | **备注** |
+| SERVO | 支持 | PWM4_CH3 |
+| DRV8833 | 支持 | PWM2_CH1&2 |
+| BLUETOOTH | 支持 | UART3 |
+| TCRT5000 | | |
+| HC-SR04超声波 | | |
+| NTC传感器 | 支持 | ADC1_IN4 |
## 使用说明
diff --git a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/.mxproject b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/.mxproject
index f3c11fac74..b1f28b7968 100644
--- a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/.mxproject
+++ b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/.mxproject
@@ -1,8 +1,8 @@
[PreviousLibFiles]
-LibFiles=Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_bus.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_system.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_utils.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usart.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_bus.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_system.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_utils.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usart.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xb.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Drivers\CMSIS\Include\cmsis_armcc.h;Drivers\CMSIS\Include\cmsis_armclang.h;Drivers\CMSIS\Include\cmsis_compiler.h;Drivers\CMSIS\Include\cmsis_gcc.h;Drivers\CMSIS\Include\cmsis_iccarm.h;Drivers\CMSIS\Include\cmsis_version.h;Drivers\CMSIS\Include\core_armv8mbl.h;Drivers\CMSIS\Include\core_armv8mml.h;Drivers\CMSIS\Include\core_cm0.h;Drivers\CMSIS\Include\core_cm0plus.h;Drivers\CMSIS\Include\core_cm1.h;Drivers\CMSIS\Include\core_cm23.h;Drivers\CMSIS\Include\core_cm3.h;Drivers\CMSIS\Include\core_cm33.h;Drivers\CMSIS\Include\core_cm4.h;Drivers\CMSIS\Include\core_cm7.h;Drivers\CMSIS\Include\core_sc000.h;Drivers\CMSIS\Include\core_sc300.h;Drivers\CMSIS\Include\mpu_armv7.h;Drivers\CMSIS\Include\mpu_armv8.h;Drivers\CMSIS\Include\tz_context.h;
+LibFiles=Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_bus.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_system.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_utils.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usart.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_adc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_adc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\Legacy\stm32_hal_legacy.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_def.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_rcc_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_bus.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_rcc.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_system.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_utils.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_gpio_ex.h;Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_gpio.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_dma.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_cortex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_pwr.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_flash_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_exti.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_tim_ex.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_tim.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_hal_uart.h;Drivers\STM32F1xx_HAL_Driver\Inc\stm32f1xx_ll_usart.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f103xb.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Include\system_stm32f1xx.h;Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;Drivers\CMSIS\Include\cmsis_armcc.h;Drivers\CMSIS\Include\cmsis_armclang.h;Drivers\CMSIS\Include\cmsis_compiler.h;Drivers\CMSIS\Include\cmsis_gcc.h;Drivers\CMSIS\Include\cmsis_iccarm.h;Drivers\CMSIS\Include\cmsis_version.h;Drivers\CMSIS\Include\core_armv8mbl.h;Drivers\CMSIS\Include\core_armv8mml.h;Drivers\CMSIS\Include\core_cm0.h;Drivers\CMSIS\Include\core_cm0plus.h;Drivers\CMSIS\Include\core_cm1.h;Drivers\CMSIS\Include\core_cm23.h;Drivers\CMSIS\Include\core_cm3.h;Drivers\CMSIS\Include\core_cm33.h;Drivers\CMSIS\Include\core_cm4.h;Drivers\CMSIS\Include\core_cm7.h;Drivers\CMSIS\Include\core_sc000.h;Drivers\CMSIS\Include\core_sc300.h;Drivers\CMSIS\Include\mpu_armv7.h;Drivers\CMSIS\Include\mpu_armv8.h;Drivers\CMSIS\Include\tz_context.h;
[PreviousUsedKeilFiles]
-SourceFiles=..\Src\main.c;..\Src\stm32f1xx_it.c;..\Src\stm32f1xx_hal_msp.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;..\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;..\\Src\system_stm32f1xx.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;..\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;..\\Src\system_stm32f1xx.c;;;
+SourceFiles=..\Src\main.c;..\Src\stm32f1xx_it.c;..\Src\stm32f1xx_hal_msp.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;..\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;..\\Src\system_stm32f1xx.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_adc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_rcc_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_gpio.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_dma.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_cortex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_pwr.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_flash_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_exti.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_tim_ex.c;..\Drivers\STM32F1xx_HAL_Driver\Src\stm32f1xx_hal_uart.c;..\Drivers\CMSIS\Device\ST\STM32F1xx\Source\Templates\system_stm32f1xx.c;..\\Src\system_stm32f1xx.c;;;
HeaderPath=..\Drivers\STM32F1xx_HAL_Driver\Inc;..\Drivers\STM32F1xx_HAL_Driver\Inc\Legacy;..\Drivers\CMSIS\Device\ST\STM32F1xx\Include;..\Drivers\CMSIS\Include;..\Inc;
CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER;
diff --git a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/CubeMX_Config.ioc b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/CubeMX_Config.ioc
index 31fdf3fc0b..f0412274a9 100644
--- a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/CubeMX_Config.ioc
+++ b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/CubeMX_Config.ioc
@@ -1,4 +1,10 @@
#MicroXplorer Configuration settings - do not modify
+ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_5
+ADC1.IPParameters=Rank-0\#ChannelRegularConversion,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,NbrOfConversionFlag,master
+ADC1.NbrOfConversionFlag=1
+ADC1.Rank-0\#ChannelRegularConversion=1
+ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_1CYCLE_5
+ADC1.master=1
CAD.formats=
CAD.pinconfig=
CAD.provider=
@@ -7,36 +13,42 @@ GPIO.groupedBy=Group By Peripherals
KeepUserPlacement=false
Mcu.CPN=STM32F103C8T6
Mcu.Family=STM32F1
-Mcu.IP0=NVIC
-Mcu.IP1=RCC
-Mcu.IP2=SYS
-Mcu.IP3=TIM1
-Mcu.IP4=TIM3
-Mcu.IP5=TIM4
-Mcu.IP6=USART2
-Mcu.IP7=USART3
-Mcu.IPNb=8
+Mcu.IP0=ADC1
+Mcu.IP1=NVIC
+Mcu.IP2=RCC
+Mcu.IP3=SYS
+Mcu.IP4=TIM1
+Mcu.IP5=TIM2
+Mcu.IP6=TIM3
+Mcu.IP7=TIM4
+Mcu.IP8=USART2
+Mcu.IP9=USART3
+Mcu.IPNb=10
Mcu.Name=STM32F103C(8-B)Tx
Mcu.Package=LQFP48
Mcu.Pin0=PC14-OSC32_IN
Mcu.Pin1=PC15-OSC32_OUT
-Mcu.Pin10=PA9
-Mcu.Pin11=PA13
-Mcu.Pin12=PA14
-Mcu.Pin13=PB8
-Mcu.Pin14=PB9
-Mcu.Pin15=VP_SYS_VS_Systick
-Mcu.Pin16=VP_TIM3_VS_ClockSourceINT
-Mcu.Pin17=VP_TIM4_VS_ClockSourceINT
+Mcu.Pin10=PA6
+Mcu.Pin11=PB10
+Mcu.Pin12=PB11
+Mcu.Pin13=PA8
+Mcu.Pin14=PA9
+Mcu.Pin15=PA13
+Mcu.Pin16=PA14
+Mcu.Pin17=PB8
+Mcu.Pin18=PB9
+Mcu.Pin19=VP_SYS_VS_Systick
Mcu.Pin2=PD0-OSC_IN
+Mcu.Pin20=VP_TIM3_VS_ClockSourceINT
+Mcu.Pin21=VP_TIM4_VS_ClockSourceINT
Mcu.Pin3=PD1-OSC_OUT
-Mcu.Pin4=PA2
-Mcu.Pin5=PA3
-Mcu.Pin6=PA6
-Mcu.Pin7=PB10
-Mcu.Pin8=PB11
-Mcu.Pin9=PA8
-Mcu.PinsNb=18
+Mcu.Pin4=PA0-WKUP
+Mcu.Pin5=PA1
+Mcu.Pin6=PA2
+Mcu.Pin7=PA3
+Mcu.Pin8=PA4
+Mcu.Pin9=PA5
+Mcu.PinsNb=22
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F103C8Tx
@@ -53,6 +65,8 @@ NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false
+PA0-WKUP.Signal=S_TIM2_CH1_ETR
+PA1.Signal=S_TIM2_CH2
PA13.Mode=Serial_Wire
PA13.Signal=SYS_JTMS-SWDIO
PA14.Mode=Serial_Wire
@@ -65,6 +79,10 @@ PA3.GPIOParameters=GPIO_PuPd
PA3.GPIO_PuPd=GPIO_PULLUP
PA3.Mode=Asynchronous
PA3.Signal=USART2_RX
+PA4.Locked=true
+PA4.Signal=ADCx_IN4
+PA5.Locked=true
+PA5.Signal=ADCx_IN5
PA6.Locked=true
PA6.Signal=S_TIM3_CH1
PA8.Signal=S_TIM1_CH1
@@ -115,7 +133,7 @@ ProjectManager.ToolChainLocation=
ProjectManager.UAScriptAfterPath=
ProjectManager.UAScriptBeforePath=
ProjectManager.UnderRoot=false
-ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART2_UART_Init-USART2-false-HAL-true,4-MX_USART3_UART_Init-USART3-false-HAL-true,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_TIM4_Init-TIM4-false-HAL-true,7-MX_TIM1_Init-TIM1-false-HAL-true
+ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART2_UART_Init-USART2-false-HAL-true,4-MX_USART3_UART_Init-USART3-false-HAL-true,5-MX_TIM3_Init-TIM3-false-HAL-true,6-MX_TIM4_Init-TIM4-false-HAL-true,7-MX_TIM1_Init-TIM1-false-HAL-true,8-MX_ADC1_Init-ADC1-false-HAL-true
RCC.ADCFreqValue=12000000
RCC.ADCPresc=RCC_ADCPCLK2_DIV6
RCC.AHBFreq_Value=72000000
@@ -140,10 +158,18 @@ RCC.TimSysFreq_Value=72000000
RCC.USBFreq_Value=48000000
RCC.USBPrescaler=RCC_USBCLKSOURCE_PLL_DIV1_5
RCC.VCOOutput2Freq_Value=8000000
+SH.ADCx_IN4.0=ADC1_IN4,IN4
+SH.ADCx_IN4.ConfNb=1
+SH.ADCx_IN5.0=ADC1_IN5,IN5
+SH.ADCx_IN5.ConfNb=1
SH.S_TIM1_CH1.0=TIM1_CH1,Encoder_Interface
SH.S_TIM1_CH1.ConfNb=1
SH.S_TIM1_CH2.0=TIM1_CH2,Encoder_Interface
SH.S_TIM1_CH2.ConfNb=1
+SH.S_TIM2_CH1_ETR.0=TIM2_CH1,PWM Generation1 CH1
+SH.S_TIM2_CH1_ETR.ConfNb=1
+SH.S_TIM2_CH2.0=TIM2_CH2,PWM Generation2 CH2
+SH.S_TIM2_CH2.ConfNb=1
SH.S_TIM3_CH1.0=TIM3_CH1,PWM Generation1 CH1
SH.S_TIM3_CH1.ConfNb=1
SH.S_TIM4_CH3.0=TIM4_CH3,PWM Generation3 CH3
@@ -152,6 +178,9 @@ SH.S_TIM4_CH4.0=TIM4_CH4,PWM Generation4 CH4
SH.S_TIM4_CH4.ConfNb=1
TIM1.IPParameters=Prescaler
TIM1.Prescaler=2-1
+TIM2.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1
+TIM2.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
+TIM2.IPParameters=Channel-PWM Generation1 CH1,Channel-PWM Generation2 CH2
TIM3.Channel-PWM\ Generation1\ CH1=TIM_CHANNEL_1
TIM3.IPParameters=Channel-PWM Generation1 CH1,Prescaler,Period,Pulse-PWM Generation1 CH1
TIM3.Period=10000-1
diff --git a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Inc/stm32f1xx_hal_conf.h b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Inc/stm32f1xx_hal_conf.h
index 705db016ae..c3e114757e 100644
--- a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Inc/stm32f1xx_hal_conf.h
+++ b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Inc/stm32f1xx_hal_conf.h
@@ -34,7 +34,7 @@
*/
#define HAL_MODULE_ENABLED
- /*#define HAL_ADC_MODULE_ENABLED */
+ #define HAL_ADC_MODULE_ENABLED
/*#define HAL_CRYP_MODULE_ENABLED */
/*#define HAL_CAN_MODULE_ENABLED */
/*#define HAL_CAN_LEGACY_MODULE_ENABLED */
diff --git a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Src/stm32f1xx_hal_msp.c b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Src/stm32f1xx_hal_msp.c
index b9949f5e68..6d69e8d970 100644
--- a/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Src/stm32f1xx_hal_msp.c
+++ b/bsp/stm32/stm32f103-keysking-learning/board/CubeMX_Config/Src/stm32f1xx_hal_msp.c
@@ -20,7 +20,6 @@
/* USER CODE END Header */
/* Includes ------------------------------------------------------------------*/
-// #include "main.h"
/* USER CODE BEGIN Includes */
#include <drv_common.h>
/* USER CODE END Includes */
@@ -60,7 +59,7 @@
/* USER CODE END 0 */
void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim);
- /**
+ /**
* Initializes the Global MSP.
*/
void HAL_MspInit(void)
@@ -84,6 +83,68 @@ void HAL_MspInit(void)
}
/**
+* @brief ADC MSP Initialization
+* This function configures the hardware resources used in this example
+* @param hadc: ADC handle pointer
+* @retval None
+*/
+void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
+{
+ GPIO_InitTypeDef GPIO_InitStruct = {0};
+ if(hadc->Instance==ADC1)
+ {
+ /* USER CODE BEGIN ADC1_MspInit 0 */
+
+ /* USER CODE END ADC1_MspInit 0 */
+ /* Peripheral clock enable */
+ __HAL_RCC_ADC1_CLK_ENABLE();
+
+ __HAL_RCC_GPIOA_CLK_ENABLE();
+ /**ADC1 GPIO Configuration
+ PA4 ------> ADC1_IN4
+ PA5 ------> ADC1_IN5
+ */
+ GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5;
+ GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
+ HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
+
+ /* USER CODE BEGIN ADC1_MspInit 1 */
+
+ /* USER CODE END ADC1_MspInit 1 */
+ }
+
+}
+
+/**
+* @brief ADC MSP De-Initialization
+* This function freeze the hardware resources used in this example
+* @param hadc: ADC handle pointer
+* @retval None
+*/
+void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
+{
+ if(hadc->Instance==ADC1)
+ {
+ /* USER CODE BEGIN ADC1_MspDeInit 0 */
+
+ /* USER CODE END ADC1_MspDeInit 0 */
+ /* Peripheral clock disable */
+ __HAL_RCC_ADC1_CLK_DISABLE();
+
+ /**ADC1 GPIO Configuration
+ PA4 ------> ADC1_IN4
+ PA5 ------> ADC1_IN5
+ */
+ HAL_GPIO_DeInit(GPIOA, GPIO_PIN_4|GPIO_PIN_5);
+
+ /* USER CODE BEGIN ADC1_MspDeInit 1 */
+
+ /* USER CODE END ADC1_MspDeInit 1 */
+ }
+
+}
+
+/**
* @brief TIM_Encoder MSP Initialization
* This function configures the hardware resources used in this example
* @param htim_encoder: TIM_Encoder handle pointer
@@ -118,6 +179,28 @@ void HAL_TIM_Encoder_MspInit(TIM_HandleTypeDef* htim_encoder)
}
/**
+* @brief TIM_PWM MSP Initialization
+* This function configures the hardware resources used in this example
+* @param htim_pwm: TIM_PWM handle pointer
+* @retval None
+*/
+void HAL_TIM_PWM_MspInit(TIM_HandleTypeDef* htim_pwm)
+{
+ if(htim_pwm->Instance==TIM2)
+ {
+ /* USER CODE BEGIN TIM2_MspInit 0 */
+
+ /* USER CODE END TIM2_MspInit 0 */
+ /* Peripheral clock enable */
+ __HAL_RCC_TIM2_CLK_ENABLE();
+ /* USER CODE BEGIN TIM2_MspInit 1 */
+
+ /* USER CODE END TIM2_MspInit 1 */
+ }
+
+}
+
+/**
* @brief TIM_Base MSP Initialization
* This function configures the hardware resources used in this example
* @param htim_base: TIM_Base handle pointer
@@ -153,11 +236,31 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
- if(htim->Instance==TIM3)
+ if(htim->Instance==TIM2)
+ {
+ /* USER CODE BEGIN TIM2_MspPostInit 0 */
+
+ /* USER CODE END TIM2_MspPostInit 0 */
+ __HAL_RCC_GPIOA_CLK_ENABLE();
+ /**TIM2 GPIO Configuration
+ PA0-WKUP ------> TIM2_CH1
+ PA1 ------> TIM2_CH2
+ */
+ GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1;
+ GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
+ GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
+ HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
+
+ /* USER CODE BEGIN TIM2_MspPostInit 1 */
+
+ /* USER CODE END TIM2_MspPostInit 1 */
+ }
+ else if(htim->Instance==TIM3)
{
/* USER CODE BEGIN TIM3_MspPostInit 0 */
/* USER CODE END TIM3_MspPostInit 0 */
+
__HAL_RCC_GPIOA_CLK_ENABLE();
/**TIM3 GPIO Configuration
PA6 ------> TIM3_CH1
@@ -223,6 +326,28 @@ void HAL_TIM_Encoder_MspDeInit(TIM_HandleTypeDef* htim_encoder)
}
/**
+* @brief TIM_PWM MSP De-Initialization
+* This function freeze the hardware resources used in this example
+* @param htim_pwm: TIM_PWM handle pointer
+* @retval None
+*/
+void HAL_TIM_PWM_MspDeInit(TIM_HandleTypeDef* htim_pwm)
+{
+ if(htim_pwm->Instance==TIM2)
+ {
+ /* USER CODE BEGIN TIM2_MspDeInit 0 */
+
+ /* USER CODE END TIM2_MspDeInit 0 */
+ /* Peripheral clock disable */
+ __HAL_RCC_TIM2_CLK_DISABLE();
+ /* USER CODE BEGIN TIM2_MspDeInit 1 */
+
+ /* USER CODE END TIM2_MspDeInit 1 */
+ }
+
+}
+
+/**
* @brief TIM_Base MSP De-Initialization
* This function freeze the hardware resources used in this example
* @param htim_base: TIM_Base handle pointer
diff --git a/bsp/stm32/stm32f103-keysking-learning/board/Kconfig b/bsp/stm32/stm32f103-keysking-learning/board/Kconfig
index 2f1ed35e5c..ffc44bac90 100644
--- a/bsp/stm32/stm32f103-keysking-learning/board/Kconfig
+++ b/bsp/stm32/stm32f103-keysking-learning/board/Kconfig
@@ -15,6 +15,7 @@ menu "Onboard Peripheral Drivers"
default n
+
endmenu
menu "On-chip Peripheral Drivers"
@@ -48,12 +49,43 @@ menu "On-chip Peripheral Drivers"
endif
+ menuconfig BSP_USING_I2C1
+ bool "Enable I2C1 BUS"
+ default n
+ select RT_USING_I2C
+ select RT_USING_I2C_BITOPS
+ select RT_USING_PIN
+ if BSP_USING_I2C1
+ config BSP_I2C1_SCL_PIN
+ int "i2c1 scl pin number (PB8)"
+ range 0 143
+ default 24
+ config BSP_I2C1_SDA_PIN
+ int "I2C1 sda pin number (PB9)"
+ range 0 143
+ default 25
+ endif
+
+
menuconfig BSP_USING_PWM
bool "Enable PWM"
select RT_USING_PWM
default n
if BSP_USING_PWM
+
+ menuconfig BSP_USING_PWM2
+ bool "Enable PWM2"
+ default n
+ if BSP_USING_PWM2
+ config BSP_USING_PWM2_CH1
+ bool "Enable PWM2_CH1"
+ default y
+ config BSP_USING_PWM2_CH2
+ bool "Enable PWM2_CH2"
+ default y
+ endif
+
menuconfig BSP_USING_PWM3
bool "Enable PWM3"
default y
@@ -100,7 +132,17 @@ menu "On-chip Peripheral Drivers"
config BSP_USING_PULSE_ENCODER1
bool "Enable Pulse Encoder1"
default y
+ endif
+
+ menuconfig BSP_USING_ADC
+ bool "Enable ADC"
+ select RT_USING_ADC
+ default n
+ if BSP_USING_ADC
+ config BSP_USING_ADC1
+ bool "Enable ADC1"
+ default y
endif
diff --git a/bsp/stm32/stm32f103-keysking-learning/project.ewp b/bsp/stm32/stm32f103-keysking-learning/project.ewp
index c255a37872..cfb6006eea 100644
--- a/bsp/stm32/stm32f103-keysking-learning/project.ewp
+++ b/bsp/stm32/stm32f103-keysking-learning/project.ewp
@@ -220,6 +220,7 @@
<state>RT_USING_LIBC</state>
<state>_DLIB_ADD_EXTRA_SYMBOLS=0</state>
<state>__RTTHREAD__</state>
+ <state>USE_HAL_DRIVER</state>
<state>__RT_IPC_SOURCE__</state>
<state>__RT_KERNEL_SOURCE__</state>
</option>
@@ -347,27 +348,30 @@
<option>
<name>CCIncludePath2</name>
<state />
- <state>$PROJ_DIR$\..\..\..\components\drivers\phy</state>
- <state>$PROJ_DIR$\applications</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension\fcntl\octal</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension</state>
+ <state>$PROJ_DIR$\packages\stm32f1_cmsis_driver-latest\Include</state>
<state>$PROJ_DIR$\..\..\..\components\libc\posix\ipc</state>
+ <state>$PROJ_DIR$\applications</state>
+ <state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
+ <state>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Inc</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\config</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\eventfd</state>
+ <state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\phy</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\smp_call</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension\fcntl\octal</state>
+ <state>$PROJ_DIR$\..\..\..\include</state>
<state>$PROJ_DIR$\board\CubeMX_Config\Inc</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension</state>
+ <state>$PROJ_DIR$\board</state>
<state>$PROJ_DIR$\..\..\..\components\libc\posix\io\epoll</state>
+ <state>$PROJ_DIR$\packages\CMSIS-Core-latest\Include</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\poll</state>
+ <state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m3</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\eventfd</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\include</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers</state>
- <state>$PROJ_DIR$\..\..\..\components\drivers\smp_call</state>
<state>$PROJ_DIR$\..\..\..\components\finsh</state>
- <state>$PROJ_DIR$\board</state>
- <state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m3</state>
- <state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers</state>
- <state>$PROJ_DIR$\..\..\..\include</state>
- <state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
<state>$PROJ_DIR$\.</state>
- <state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\poll</state>
</option>
<option>
<name>CCStdIncCheck</name>
@@ -1262,6 +1266,7 @@
<state>RT_USING_LIBC</state>
<state>_DLIB_ADD_EXTRA_SYMBOLS=0</state>
<state>__RTTHREAD__</state>
+ <state>USE_HAL_DRIVER</state>
<state>__RT_IPC_SOURCE__</state>
<state>__RT_KERNEL_SOURCE__</state>
</option>
@@ -1389,27 +1394,30 @@
<option>
<name>CCIncludePath2</name>
<state />
- <state>$PROJ_DIR$\..\..\..\components\drivers\phy</state>
- <state>$PROJ_DIR$\applications</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension\fcntl\octal</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension</state>
+ <state>$PROJ_DIR$\packages\stm32f1_cmsis_driver-latest\Include</state>
<state>$PROJ_DIR$\..\..\..\components\libc\posix\ipc</state>
+ <state>$PROJ_DIR$\applications</state>
+ <state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
+ <state>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Inc</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\config</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\eventfd</state>
+ <state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\phy</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
+ <state>$PROJ_DIR$\..\..\..\components\drivers\smp_call</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension\fcntl\octal</state>
+ <state>$PROJ_DIR$\..\..\..\include</state>
<state>$PROJ_DIR$\board\CubeMX_Config\Inc</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\extension</state>
+ <state>$PROJ_DIR$\board</state>
<state>$PROJ_DIR$\..\..\..\components\libc\posix\io\epoll</state>
+ <state>$PROJ_DIR$\packages\CMSIS-Core-latest\Include</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\poll</state>
+ <state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m3</state>
+ <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\eventfd</state>
<state>$PROJ_DIR$\..\..\..\components\libc\compilers\common\include</state>
<state>$PROJ_DIR$\..\libraries\HAL_Drivers</state>
- <state>$PROJ_DIR$\..\..\..\components\drivers\smp_call</state>
<state>$PROJ_DIR$\..\..\..\components\finsh</state>
- <state>$PROJ_DIR$\board</state>
- <state>$PROJ_DIR$\..\..\..\libcpu\arm\cortex-m3</state>
- <state>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers</state>
- <state>$PROJ_DIR$\..\..\..\include</state>
- <state>$PROJ_DIR$\..\..\..\components\drivers\include</state>
<state>$PROJ_DIR$\.</state>
- <state>$PROJ_DIR$\..\..\..\libcpu\arm\common</state>
- <state>$PROJ_DIR$\..\..\..\components\libc\posix\io\poll</state>
</option>
<option>
<name>CCStdIncCheck</name>
@@ -2091,6 +2099,9 @@
</file>
</group>
<group>
+ <name>CMSIS-Core</name>
+ </group>
+ <group>
<name>Compiler</name>
<file>
<name>$PROJ_DIR$\..\..\..\components\libc\compilers\common\cctype.c</name>
@@ -2171,6 +2182,12 @@
<name>$PROJ_DIR$\..\..\..\components\drivers\ipc\workqueue.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\..\..\..\components\drivers\misc\adc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\..\..\components\drivers\misc\rt_drv_pwm.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\..\..\components\drivers\pin\dev_pin.c</name>
</file>
<file>
@@ -2180,9 +2197,18 @@
<group>
<name>Drivers</name>
<file>
+ <name>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\drv_adc.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\drv_gpio.c</name>
</file>
<file>
+ <name>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\drv_pwm.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\drv_tim.c</name>
+ </file>
+ <file>
<name>$PROJ_DIR$\..\libraries\HAL_Drivers\drivers\drv_usart.c</name>
</file>
<file>
@@ -2198,16 +2224,16 @@
<group>
<name>Finsh</name>
<file>
- <name>$PROJ_DIR$\..\..\..\components\finsh\shell.c</name>
+ <name>$PROJ_DIR$\..\..\..\components\finsh\msh.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\..\components\finsh\cmd.c</name>
+ <name>$PROJ_DIR$\..\..\..\components\finsh\msh_parse.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\..\components\finsh\msh.c</name>
+ <name>$PROJ_DIR$\..\..\..\components\finsh\shell.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\..\components\finsh\msh_parse.c</name>
+ <name>$PROJ_DIR$\..\..\..\components\finsh\cmd.c</name>
</file>
</group>
<group>
@@ -2261,7 +2287,7 @@
<group>
<name>klibc</name>
<file>
- <name>$PROJ_DIR$\..\..\..\src\klibc\kstring.c</name>
+ <name>$PROJ_DIR$\..\..\..\src\klibc\kerrno.c</name>
</file>
<file>
<name>$PROJ_DIR$\..\..\..\src\klibc\rt_vsnprintf_tiny.c</name>
@@ -2270,10 +2296,10 @@
<name>$PROJ_DIR$\..\..\..\src\klibc\kstdio.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\..\src\klibc\rt_vsscanf.c</name>
+ <name>$PROJ_DIR$\..\..\..\src\klibc\kstring.c</name>
</file>
<file>
- <name>$PROJ_DIR$\..\..\..\src\klibc\kerrno.c</name>
+ <name>$PROJ_DIR$\..\..\..\src\klibc\rt_vsscanf.c</name>
</file>
</group>
<group>
@@ -2298,6 +2324,66 @@
<name>POSIX</name>
</group>
<group>
+ <name>STM32F1-CMSIS</name>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_cmsis_driver-latest\Source\Templates\iar\startup_stm32f103xb.s</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_cmsis_driver-latest\Source\Templates\system_stm32f1xx.c</name>
+ </file>
+ </group>
+ <group>
+ <name>STM32F1-HAL</name>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_adc_ex.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_crc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_rcc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_cec.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_uart.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_tim_ex.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_rcc_ex.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_adc.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_gpio.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_gpio_ex.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_pwr.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_dma.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_tim.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_usart.c</name>
+ </file>
+ <file>
+ <name>$PROJ_DIR$\packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_cortex.c</name>
+ </file>
+ </group>
+ <group>
<name>utestcases</name>
</group>
</project>
diff --git a/bsp/stm32/stm32f103-keysking-learning/project.uvprojx b/bsp/stm32/stm32f103-keysking-learning/project.uvprojx
index da13474cd2..56e6f2e10d 100644
--- a/bsp/stm32/stm32f103-keysking-learning/project.uvprojx
+++ b/bsp/stm32/stm32f103-keysking-learning/project.uvprojx
@@ -334,9 +334,9 @@
<v6Rtti>0</v6Rtti>
<VariousControls>
<MiscControls />
- <Define>__CLK_TCK=RT_TICK_PER_SECOND, __STDC_LIMIT_MACROS, __RTTHREAD__, RT_USING_ARMLIBC, RT_USING_LIBC</Define>
+ <Define>RT_USING_ARMLIBC, __CLK_TCK=RT_TICK_PER_SECOND, __RTTHREAD__, __STDC_LIMIT_MACROS, RT_USING_LIBC, USE_HAL_DRIVER</Define>
<Undefine />
- <IncludePath>..\..\..\components\libc\posix\io\epoll;..\..\..\components\libc\compilers\common\include;..\..\..\libcpu\arm\common;board;.;..\..\..\components\libc\compilers\common\extension;..\..\..\components\libc\posix\io\poll;..\libraries\HAL_Drivers\drivers;applications;..\..\..\components\drivers\include;..\libraries\HAL_Drivers\drivers\config;..\..\..\libcpu\arm\cortex-m3;..\..\..\components\libc\posix\ipc;..\..\..\include;..\..\..\components\drivers\include;..\libraries\HAL_Drivers;..\..\..\components\drivers\phy;..\..\..\components\drivers\include;..\..\..\components\libc\posix\io\eventfd;..\..\..\components\libc\compilers\common\extension\fcntl\octal;..\..\..\components\drivers\include;..\..\..\components\drivers\smp_call;board\CubeMX_Config\Inc;..\..\..\components\finsh;..\..\..\components\drivers\include</IncludePath>
+ <IncludePath>..\..\..\components\drivers\include;..\..\..\include;..\..\..\components\drivers\include;packages\stm32f1_cmsis_driver-latest\Include;..\..\..\components\finsh;..\..\..\components\libc\compilers\common\extension;..\libraries\HAL_Drivers\drivers\config;board\CubeMX_Config\Inc;..\..\..\components\libc\compilers\common\extension\fcntl\octal;..\..\..\libcpu\arm\common;..\..\..\libcpu\arm\cortex-m3;board;packages\stm32f1_hal_driver-latest\Inc;..\..\..\components\libc\posix\io\eventfd;..\..\..\components\drivers\phy;..\..\..\components\libc\compilers\common\include;..\libraries\HAL_Drivers\drivers;..\..\..\components\drivers\include;..\..\..\components\drivers\include;..\..\..\components\libc\posix\io\poll;packages\CMSIS-Core-latest\Include;..\..\..\components\drivers\smp_call;.;..\..\..\components\drivers\include;..\..\..\components\drivers\include;applications;..\..\..\components\libc\posix\io\epoll;..\..\..\components\libc\posix\ipc;..\libraries\HAL_Drivers</IncludePath>
</VariousControls>
</Cads>
<Aads>
@@ -640,6 +640,44 @@
</Files>
<Files>
<File>
+ <FileName>adc.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\..\..\components\drivers\misc\adc.c</FilePath>
+ <FileOption>
+ <FileArmAds>
+ <Cads>
+ <VariousControls>
+ <MiscControls> </MiscControls>
+ <Define>__RT_IPC_SOURCE__</Define>
+ <Undefine> </Undefine>
+ <IncludePath> </IncludePath>
+ </VariousControls>
+ </Cads>
+ </FileArmAds>
+ </FileOption>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>rt_drv_pwm.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\..\..\components\drivers\misc\rt_drv_pwm.c</FilePath>
+ <FileOption>
+ <FileArmAds>
+ <Cads>
+ <VariousControls>
+ <MiscControls> </MiscControls>
+ <Define>__RT_IPC_SOURCE__</Define>
+ <Undefine> </Undefine>
+ <IncludePath> </IncludePath>
+ </VariousControls>
+ </Cads>
+ </FileArmAds>
+ </FileOption>
+ </File>
+ </Files>
+ <Files>
+ <File>
<FileName>dev_pin.c</FileName>
<FileType>1</FileType>
<FilePath>..\..\..\components\drivers\pin\dev_pin.c</FilePath>
@@ -681,6 +719,13 @@
<GroupName>Drivers</GroupName>
<Files>
<File>
+ <FileName>drv_adc.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\libraries\HAL_Drivers\drivers\drv_adc.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
<FileName>drv_gpio.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\HAL_Drivers\drivers\drv_gpio.c</FilePath>
@@ -688,6 +733,20 @@
</Files>
<Files>
<File>
+ <FileName>drv_pwm.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\libraries\HAL_Drivers\drivers\drv_pwm.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>drv_tim.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>..\libraries\HAL_Drivers\drivers\drv_tim.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
<FileName>drv_usart.c</FileName>
<FileType>1</FileType>
<FilePath>..\libraries\HAL_Drivers\drivers\drv_usart.c</FilePath>
@@ -719,9 +778,9 @@
<GroupName>Finsh</GroupName>
<Files>
<File>
- <FileName>cmd.c</FileName>
+ <FileName>msh_parse.c</FileName>
<FileType>1</FileType>
- <FilePath>..\..\..\components\finsh\cmd.c</FilePath>
+ <FilePath>..\..\..\components\finsh\msh_parse.c</FilePath>
</File>
</Files>
<Files>
@@ -740,9 +799,9 @@
</Files>
<Files>
<File>
- <FileName>msh_parse.c</FileName>
+ <FileName>cmd.c</FileName>
<FileType>1</FileType>
- <FilePath>..\..\..\components\finsh\msh_parse.c</FilePath>
+ <FilePath>..\..\..\components\finsh\cmd.c</FilePath>
</File>
</Files>
</Group>
@@ -1038,9 +1097,9 @@
<GroupName>klibc</GroupName>
<Files>
<File>
- <FileName>rt_vsscanf.c</FileName>
+ <FileName>kerrno.c</FileName>
<FileType>1</FileType>
- <FilePath>..\..\..\src\klibc\rt_vsscanf.c</FilePath>
+ <FilePath>..\..\..\src\klibc\kerrno.c</FilePath>
</File>
</Files>
<Files>
@@ -1052,9 +1111,9 @@
</Files>
<Files>
<File>
- <FileName>kerrno.c</FileName>
+ <FileName>kstdio.c</FileName>
<FileType>1</FileType>
- <FilePath>..\..\..\src\klibc\kerrno.c</FilePath>
+ <FilePath>..\..\..\src\klibc\kstdio.c</FilePath>
</File>
</Files>
<Files>
@@ -1066,9 +1125,9 @@
</Files>
<Files>
<File>
- <FileName>kstdio.c</FileName>
+ <FileName>rt_vsscanf.c</FileName>
<FileType>1</FileType>
- <FilePath>..\..\..\src\klibc\kstdio.c</FilePath>
+ <FilePath>..\..\..\src\klibc\rt_vsscanf.c</FilePath>
</File>
</Files>
</Group>
@@ -1110,6 +1169,138 @@
</File>
</Files>
</Group>
+ <Group>
+ <GroupName>STM32F1-CMSIS</GroupName>
+ <Files>
+ <File>
+ <FileName>system_stm32f1xx.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_cmsis_driver-latest\Source\Templates\system_stm32f1xx.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>startup_stm32f103xb.s</FileName>
+ <FileType>2</FileType>
+ <FilePath>packages\stm32f1_cmsis_driver-latest\Source\Templates\arm\startup_stm32f103xb.s</FilePath>
+ </File>
+ </Files>
+ </Group>
+ <Group>
+ <GroupName>STM32F1-HAL</GroupName>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_pwr.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_pwr.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_rcc_ex.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_rcc_ex.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_cec.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_cec.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_tim.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_tim.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_adc.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_adc.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_dma.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_dma.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_gpio.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_gpio.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_gpio_ex.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_gpio_ex.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_adc_ex.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_adc_ex.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_cortex.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_cortex.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_uart.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_uart.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_crc.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_crc.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_tim_ex.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_tim_ex.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_rcc.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_rcc.c</FilePath>
+ </File>
+ </Files>
+ <Files>
+ <File>
+ <FileName>stm32f1xx_hal_usart.c</FileName>
+ <FileType>1</FileType>
+ <FilePath>packages\stm32f1_hal_driver-latest\Src\stm32f1xx_hal_usart.c</FilePath>
+ </File>
+ </Files>
+ </Group>
</Groups>
</Target>
</Targets>