From 14ae809ac42b3e8755c90a8dfa0392dbdcf70c02 Mon Sep 17 00:00:00 2001
From: AILA <2497568277@qq.com>
Date: Wed, 8 Jan 2025 09:58:23 +0800
Subject: [PATCH] ESP8266 DHT11 CH4 Sensor
---
.mxproject | 24 ++--
Core/Inc/adc.h | 2 +-
Core/Inc/gpio.h | 2 +-
Core/Inc/i2c.h | 2 +-
Core/Inc/stm32f1xx_hal_conf.h | 2 +-
Core/Inc/tim.h | 52 +++++++++
Core/Inc/usart.h | 2 +-
Core/Src/adc.c | 10 +-
Core/Src/gpio.c | 14 +--
Core/Src/i2c.c | 18 +--
Core/Src/main.c | 212 ++++++++++++++++++++++++++++------
Core/Src/tim.c | 107 +++++++++++++++++
Core/Src/usart.c | 24 ++--
MDK-ARM | 1 +
STM32F103C8T6_KQZLJC.ioc | 68 ++++++-----
15 files changed, 428 insertions(+), 112 deletions(-)
create mode 100644 Core/Inc/tim.h
create mode 100644 Core/Src/tim.c
create mode 160000 MDK-ARM
diff --git a/.mxproject b/.mxproject
index e55ee8e..236d91e 100644
--- a/.mxproject
+++ b/.mxproject
@@ -2,31 +2,33 @@
LibFiles=Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_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_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_hal_dma_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_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_hal_i2c.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_hal_uart.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_i2c.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_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_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_hal_dma_ex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_dma.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_cortex.h;Drivers/STM32F1xx_HAL_Driver/Inc/stm32f1xx_hal_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_hal_i2c.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_hal_uart.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/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=..\Core\Src\main.c;..\Core\Src\gpio.c;..\Core\Src\adc.c;..\Core\Src\i2c.c;..\Core\Src\usart.c;..\Core\Src\stm32f1xx_it.c;..\Core\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_i2c.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;..\Core\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_i2c.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;..\Core\Src/system_stm32f1xx.c;;;
+SourceFiles=..\Core\Src\main.c;..\Core\Src\gpio.c;..\Core\Src\adc.c;..\Core\Src\i2c.c;..\Core\Src\tim.c;..\Core\Src\usart.c;..\Core\Src\stm32f1xx_it.c;..\Core\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_i2c.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;..\Core\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_i2c.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;..\Core\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;..\Core\Inc;
CDefines=USE_HAL_DRIVER;STM32F103xB;USE_HAL_DRIVER;USE_HAL_DRIVER;
[PreviousGenFiles]
AdvancedFolderStructure=true
-HeaderFileListSize=7
+HeaderFileListSize=8
HeaderFiles#0=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/gpio.h
HeaderFiles#1=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/adc.h
HeaderFiles#2=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/i2c.h
-HeaderFiles#3=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/usart.h
-HeaderFiles#4=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/stm32f1xx_it.h
-HeaderFiles#5=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/stm32f1xx_hal_conf.h
-HeaderFiles#6=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/main.h
+HeaderFiles#3=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/tim.h
+HeaderFiles#4=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/usart.h
+HeaderFiles#5=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/stm32f1xx_it.h
+HeaderFiles#6=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/stm32f1xx_hal_conf.h
+HeaderFiles#7=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc/main.h
HeaderFolderListSize=1
HeaderPath#0=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Inc
HeaderFiles=;
-SourceFileListSize=7
+SourceFileListSize=8
SourceFiles#0=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/gpio.c
SourceFiles#1=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/adc.c
SourceFiles#2=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/i2c.c
-SourceFiles#3=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/usart.c
-SourceFiles#4=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/stm32f1xx_it.c
-SourceFiles#5=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/stm32f1xx_hal_msp.c
-SourceFiles#6=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/main.c
+SourceFiles#3=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/tim.c
+SourceFiles#4=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/usart.c
+SourceFiles#5=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/stm32f1xx_it.c
+SourceFiles#6=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/stm32f1xx_hal_msp.c
+SourceFiles#7=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src/main.c
SourceFolderListSize=1
SourcePath#0=C:/Users/24975/OneDrive/Desktop/KQZLCJ/code_2/STM32F103C8T6_KQZLJC/Core/Src
SourceFiles=;
diff --git a/Core/Inc/adc.h b/Core/Inc/adc.h
index 9af41b1..e500cd3 100644
--- a/Core/Inc/adc.h
+++ b/Core/Inc/adc.h
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- *
© Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
diff --git a/Core/Inc/gpio.h b/Core/Inc/gpio.h
index 3149c8f..a4cdc06 100644
--- a/Core/Inc/gpio.h
+++ b/Core/Inc/gpio.h
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
diff --git a/Core/Inc/i2c.h b/Core/Inc/i2c.h
index 715dec1..f3212a9 100644
--- a/Core/Inc/i2c.h
+++ b/Core/Inc/i2c.h
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
diff --git a/Core/Inc/stm32f1xx_hal_conf.h b/Core/Inc/stm32f1xx_hal_conf.h
index b12e4b5..3dee395 100644
--- a/Core/Inc/stm32f1xx_hal_conf.h
+++ b/Core/Inc/stm32f1xx_hal_conf.h
@@ -63,7 +63,7 @@
/*#define HAL_SMARTCARD_MODULE_ENABLED */
/*#define HAL_SPI_MODULE_ENABLED */
/*#define HAL_SRAM_MODULE_ENABLED */
-/*#define HAL_TIM_MODULE_ENABLED */
+#define HAL_TIM_MODULE_ENABLED
#define HAL_UART_MODULE_ENABLED
/*#define HAL_USART_MODULE_ENABLED */
/*#define HAL_WWDG_MODULE_ENABLED */
diff --git a/Core/Inc/tim.h b/Core/Inc/tim.h
new file mode 100644
index 0000000..a5c7db4
--- /dev/null
+++ b/Core/Inc/tim.h
@@ -0,0 +1,52 @@
+/**
+ ******************************************************************************
+ * @file tim.h
+ * @brief This file contains all the function prototypes for
+ * the tim.c file
+ ******************************************************************************
+ * @attention
+ *
+ * © Copyright (c) 2025 STMicroelectronics.
+ * All rights reserved.
+ *
+ * This software component is licensed by ST under BSD 3-Clause license,
+ * the "License"; You may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ * opensource.org/licenses/BSD-3-Clause
+ *
+ ******************************************************************************
+ */
+/* Define to prevent recursive inclusion -------------------------------------*/
+#ifndef __TIM_H__
+#define __TIM_H__
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Includes ------------------------------------------------------------------*/
+#include "main.h"
+
+/* USER CODE BEGIN Includes */
+
+/* USER CODE END Includes */
+
+extern TIM_HandleTypeDef htim1;
+
+/* USER CODE BEGIN Private defines */
+
+/* USER CODE END Private defines */
+
+void MX_TIM1_Init(void);
+
+/* USER CODE BEGIN Prototypes */
+
+/* USER CODE END Prototypes */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* __TIM_H__ */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
diff --git a/Core/Inc/usart.h b/Core/Inc/usart.h
index 2411e0c..3347686 100644
--- a/Core/Inc/usart.h
+++ b/Core/Inc/usart.h
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
diff --git a/Core/Src/adc.c b/Core/Src/adc.c
index c9f870c..43770e3 100644
--- a/Core/Src/adc.c
+++ b/Core/Src/adc.c
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
@@ -54,7 +54,7 @@ void MX_ADC1_Init(void)
}
/** Configure Regular Channel
*/
- sConfig.Channel = ADC_CHANNEL_1;
+ sConfig.Channel = ADC_CHANNEL_6;
sConfig.Rank = ADC_REGULAR_RANK_1;
sConfig.SamplingTime = ADC_SAMPLETIME_1CYCLE_5;
if (HAL_ADC_ConfigChannel(&hadc1, &sConfig) != HAL_OK)
@@ -82,8 +82,9 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* adcHandle)
__HAL_RCC_GPIOA_CLK_ENABLE();
/**ADC1 GPIO Configuration
PA1 ------> ADC1_IN1
+ PA6 ------> ADC1_IN6
*/
- GPIO_InitStruct.Pin = GPIO_PIN_1;
+ GPIO_InitStruct.Pin = GPIO_PIN_1|GPIO_PIN_6;
GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
@@ -106,8 +107,9 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* adcHandle)
/**ADC1 GPIO Configuration
PA1 ------> ADC1_IN1
+ PA6 ------> ADC1_IN6
*/
- HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1);
+ HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1|GPIO_PIN_6);
/* USER CODE BEGIN ADC1_MspDeInit 1 */
diff --git a/Core/Src/gpio.c b/Core/Src/gpio.c
index 1d3dd60..660abc1 100644
--- a/Core/Src/gpio.c
+++ b/Core/Src/gpio.c
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
@@ -53,7 +53,7 @@ void MX_GPIO_Init(void)
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */
- HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4|GPIO_PIN_5, GPIO_PIN_RESET);
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0|GPIO_PIN_4|GPIO_PIN_5, GPIO_PIN_RESET);
/*Configure GPIO pin : PC13 */
GPIO_InitStruct.Pin = GPIO_PIN_13;
@@ -62,14 +62,8 @@ void MX_GPIO_Init(void)
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
- /*Configure GPIO pins : PA0 PA8 */
- GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_8;
- GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
- GPIO_InitStruct.Pull = GPIO_NOPULL;
- HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
-
- /*Configure GPIO pins : PA4 PA5 */
- GPIO_InitStruct.Pin = GPIO_PIN_4|GPIO_PIN_5;
+ /*Configure GPIO pins : PA0 PA4 PA5 */
+ GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_4|GPIO_PIN_5;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
diff --git a/Core/Src/i2c.c b/Core/Src/i2c.c
index 103a6fa..21c97bb 100644
--- a/Core/Src/i2c.c
+++ b/Core/Src/i2c.c
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
@@ -68,14 +68,16 @@ void HAL_I2C_MspInit(I2C_HandleTypeDef* i2cHandle)
__HAL_RCC_GPIOB_CLK_ENABLE();
/**I2C1 GPIO Configuration
- PB6 ------> I2C1_SCL
- PB7 ------> I2C1_SDA
+ PB8 ------> I2C1_SCL
+ PB9 ------> I2C1_SDA
*/
- GPIO_InitStruct.Pin = GPIO_PIN_6|GPIO_PIN_7;
+ GPIO_InitStruct.Pin = GPIO_PIN_8|GPIO_PIN_9;
GPIO_InitStruct.Mode = GPIO_MODE_AF_OD;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
+ __HAL_AFIO_REMAP_I2C1_ENABLE();
+
/* I2C1 clock enable */
__HAL_RCC_I2C1_CLK_ENABLE();
/* USER CODE BEGIN I2C1_MspInit 1 */
@@ -96,12 +98,12 @@ void HAL_I2C_MspDeInit(I2C_HandleTypeDef* i2cHandle)
__HAL_RCC_I2C1_CLK_DISABLE();
/**I2C1 GPIO Configuration
- PB6 ------> I2C1_SCL
- PB7 ------> I2C1_SDA
+ PB8 ------> I2C1_SCL
+ PB9 ------> I2C1_SDA
*/
- HAL_GPIO_DeInit(GPIOB, GPIO_PIN_6);
+ HAL_GPIO_DeInit(GPIOB, GPIO_PIN_8);
- HAL_GPIO_DeInit(GPIOB, GPIO_PIN_7);
+ HAL_GPIO_DeInit(GPIOB, GPIO_PIN_9);
/* USER CODE BEGIN I2C1_MspDeInit 1 */
diff --git a/Core/Src/main.c b/Core/Src/main.c
index e991cf1..c1b0fc0 100644
--- a/Core/Src/main.c
+++ b/Core/Src/main.c
@@ -21,6 +21,7 @@
#include "main.h"
#include "adc.h"
#include "i2c.h"
+#include "tim.h"
#include "usart.h"
#include "gpio.h"
@@ -35,12 +36,29 @@
/* Private typedef -----------------------------------------------------------*/
/* USER CODE BEGIN PTD */
-#define WIFI_SSID "AILA"
-#define WIFI_PASSWORD "77777777"
-#define SERVER_IP "112.74.107.30"
-#define SERVER_PORT 8031
-#define TX_BUFFER_SIZE 512
+#define WIFI_SSID "AILA"
+#define WIFI_PASSWORD "77777777"
+#define SERVER_IP "112.74.107.30"
+#define SERVER_PORT 9008
+#define TX_BUFFER_SIZE 512
+#define DHT11_PIN GPIO_PIN_0
+#define DHT11_PORT GPIOA
+
+uint8_t humidity = 0, temperature = 0;
+
+void Delay_us(uint16_t us)
+{
+ uint16_t differ = 0xffff - us - 5;
+ __HAL_TIM_SET_COUNTER(&htim1, differ);
+ HAL_TIM_Base_Start(&htim1);
+
+ while (differ < 0xffff - 5)
+ {
+ differ = __HAL_TIM_GET_COUNTER(&htim1);
+ }
+ HAL_TIM_Base_Stop(&htim1);
+}
/* USER CODE END PTD */
@@ -48,32 +66,138 @@
/* USER CODE BEGIN PD */
uint8_t txBuffer[TX_BUFFER_SIZE];
-void sendATCommand(char *command, uint16_t timeout) {
- HAL_UART_Transmit(&huart2, (uint8_t *)command, strlen(command), HAL_MAX_DELAY);
- HAL_Delay(timeout);
+void sendATCommand(char *command, uint16_t timeout)
+{
+ HAL_UART_Transmit(&huart2, (uint8_t *)command, strlen(command), HAL_MAX_DELAY);
+ HAL_Delay(timeout);
}
-void ESP8266_Init() {
- sendATCommand("AT+RST\r\n", 2000);
- sendATCommand("AT+CWMODE=1\r\n", 1000);
- snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CWJAP=\"%s\",\"%s\"\r\n", WIFI_SSID, WIFI_PASSWORD);
- sendATCommand((char *)txBuffer, 5000);
- snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CIPSTART=\"TCP\",\"%s\",%d\r\n", SERVER_IP, SERVER_PORT);
- sendATCommand((char *)txBuffer, 3000);
+void ESP8266_Init()
+{
+ sendATCommand("AT+RST\r\n", 2000);
+ sendATCommand("AT+CWMODE=1\r\n", 1000);
+ snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CWJAP=\"%s\",\"%s\"\r\n", WIFI_SSID, WIFI_PASSWORD);
+ sendATCommand((char *)txBuffer, 5000);
+ snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CIPSTART=\"TCP\",\"%s\",%d\r\n", SERVER_IP, SERVER_PORT);
+ sendATCommand((char *)txBuffer, 3000);
}
-void ESP8266_SendData(char *data) {
- snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CIPSEND=%d\r\n", strlen(data));
- sendATCommand((char *)txBuffer, 1000);
- HAL_UART_Transmit(&huart2, (uint8_t *)data, strlen(data), HAL_MAX_DELAY);
- HAL_Delay(1000);
+void ESP8266_SendData(char *data)
+{
+ snprintf((char *)txBuffer, TX_BUFFER_SIZE, "AT+CIPSEND=%d\r\n", strlen(data));
+ sendATCommand((char *)txBuffer, 1000);
+ HAL_UART_Transmit(&huart2, (uint8_t *)data, strlen(data), HAL_MAX_DELAY);
+ HAL_Delay(1000);
}
-
/* USER CODE END PD */
/* Private macro -------------------------------------------------------------*/
/* USER CODE BEGIN PM */
+uint8_t Data[5] = {0x00, 0x00, 0x00, 0x00, 0x00};
+/*------------------------------*/
+void DHT_GPIO_SET_OUTPUT(void)
+{
+ GPIO_InitTypeDef GPIO_InitStructure;
+ GPIO_InitStructure.Pin = GPIO_PIN_0;
+ GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_PP;
+ GPIO_InitStructure.Speed = GPIO_SPEED_FREQ_HIGH;
+ HAL_GPIO_Init(GPIOA, &GPIO_InitStructure);
+}
+
+void DHT_GPIO_SET_INPUT(void)
+{
+ GPIO_InitTypeDef GPIO_InitStructure;
+ GPIO_InitStructure.Pin = GPIO_PIN_0;
+ GPIO_InitStructure.Mode = GPIO_MODE_INPUT;
+ GPIO_InitStructure.Speed = GPIO_SPEED_FREQ_HIGH;
+ HAL_GPIO_Init(GPIOA, &GPIO_InitStructure);
+}
+
+/*------------------------------*/
+
+uint8_t DHT_Read_Byte(void)
+{
+ uint8_t ReadData = 0;
+ uint8_t temp;
+ uint8_t retry = 0;
+ uint8_t i;
+ for (i = 0; i < 8; i++)
+ {
+ while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 0 && retry < 100)
+ {
+ Delay_us(1);
+ retry++;
+ }
+ retry = 0;
+
+ Delay_us(40);
+ if (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 1)
+ temp = 1;
+ else
+ temp = 0;
+
+ while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 1 && retry < 100)
+ {
+ Delay_us(1);
+ retry++;
+ }
+ retry = 0;
+
+ ReadData <<= 1;
+ ReadData |= temp;
+ }
+
+ return ReadData;
+}
+
+/*------------------------------*/
+
+/*
+ uint8_t DHT_Read(void)表达完整时序
+*/
+uint8_t DHT_Read(void)
+{
+ uint8_t retry = 0;
+ uint8_t i;
+
+ DHT_GPIO_SET_OUTPUT();
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET);
+ HAL_Delay(18);
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET);
+ Delay_us(20);
+
+
+ DHT_GPIO_SET_INPUT();
+ Delay_us(20);
+ if (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 0)
+ {
+ while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 0 && retry < 100)
+ {
+ Delay_us(1);
+ retry++;
+ }
+ retry = 0;
+ while (HAL_GPIO_ReadPin(GPIOA, GPIO_PIN_0) == 1 && retry < 100)
+ {
+ Delay_us(1);
+ retry++;
+ }
+ retry = 0;
+
+ for (i = 0; i < 5; i++)
+ {
+ Data[i] = DHT_Read_Byte();
+ }
+ Delay_us(50);
+ }
+
+ uint32_t sum = Data[0] + Data[1] + Data[2] + Data[3]; // 校验
+ if ((sum) == Data[4])
+ return 1;
+ else
+ return 0;
+}
/* USER CODE END PM */
@@ -81,6 +205,12 @@ void ESP8266_SendData(char *data) {
/* USER CODE BEGIN PV */
+uint32_t adc_value = 0;
+
+
+
+
+
/* USER CODE END PV */
/* Private function prototypes -----------------------------------------------*/
@@ -127,27 +257,43 @@ int main(void)
MX_USART3_UART_Init();
MX_ADC1_Init();
MX_I2C1_Init();
+ MX_TIM1_Init();
/* USER CODE BEGIN 2 */
-
- HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_SET);
- HAL_GPIO_WritePin(GPIOA,GPIO_PIN_5,GPIO_PIN_SET);
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_4, GPIO_PIN_SET);
+ HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
+
+ ESP8266_Init();
-ESP8266_Init();
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
- HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
- HAL_Delay(1000);
- HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
- HAL_Delay(1000);
+ HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
+ HAL_Delay(1000);
+ HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_RESET);
+ HAL_Delay(1000);
-
- char jsonData[] = "{\"MODEL\":\"AIR100\",\"IMEI\":\"A06217704269732\",\"PM25\":\"16\",\"PM1\":\"11\",\"PM10\":\"15\",\"CO2\":\"320\",\"HCHO\":\"0.06\",\"TEMP\":\"32\",\"TVOC\":\"0.06\",\"humi\":\"60\",\"time\":\"2019-06-04 11:44:04\",\"VER\":\"0.9\"}";
- ESP8266_SendData(jsonData);
+ if (DHT_Read())
+ {
+ humidity = Data[0]; // 更新湿度
+ temperature = Data[2]; // 更新温度
+ }
+
+HAL_ADC_Start(&hadc1); // 开始ADC转换
+if (HAL_ADC_PollForConversion(&hadc1, 10) == HAL_OK) // 等待转换完成,超时时间10ms
+{
+ adc_value = HAL_ADC_GetValue(&hadc1); // 获取ADC值
+}
+HAL_ADC_Stop(&hadc1); // 停止ADC
+
+
+ char jsonData[TX_BUFFER_SIZE];
+ snprintf(jsonData, TX_BUFFER_SIZE, "{\"MODEL\":\"AIR100\",\"IMEI\":\"JkyAir000000099\",\"PM25\":\"16\",\"PM1\":\"11\",\"PM10\":\"15\",\"CO2\":\"320\",\"HCHO\":\"%d\",\"TEMP\":\"%d\",\"TVOC\":\"0.06\",\"HUMI\":\"%d\",\"TIME\":\"2019-06-04 11:44:04\",\"VER\":\"0.9\"}", adc_value, temperature, humidity);
+
+ ESP8266_SendData(jsonData);
/* USER CODE END WHILE */
@@ -205,8 +351,6 @@ void SystemClock_Config(void)
void CE_CO2_nonfud()
{
-
-
}
/* USER CODE END 4 */
diff --git a/Core/Src/tim.c b/Core/Src/tim.c
new file mode 100644
index 0000000..6958329
--- /dev/null
+++ b/Core/Src/tim.c
@@ -0,0 +1,107 @@
+/**
+ ******************************************************************************
+ * @file tim.c
+ * @brief This file provides code for the configuration
+ * of the TIM instances.
+ ******************************************************************************
+ * @attention
+ *
+ * © Copyright (c) 2025 STMicroelectronics.
+ * All rights reserved.
+ *
+ * This software component is licensed by ST under BSD 3-Clause license,
+ * the "License"; You may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at:
+ * opensource.org/licenses/BSD-3-Clause
+ *
+ ******************************************************************************
+ */
+
+/* Includes ------------------------------------------------------------------*/
+#include "tim.h"
+
+/* USER CODE BEGIN 0 */
+
+/* USER CODE END 0 */
+
+TIM_HandleTypeDef htim1;
+
+/* TIM1 init function */
+void MX_TIM1_Init(void)
+{
+
+ /* USER CODE BEGIN TIM1_Init 0 */
+
+ /* USER CODE END TIM1_Init 0 */
+
+ TIM_ClockConfigTypeDef sClockSourceConfig = {0};
+ TIM_MasterConfigTypeDef sMasterConfig = {0};
+
+ /* USER CODE BEGIN TIM1_Init 1 */
+
+ /* USER CODE END TIM1_Init 1 */
+ htim1.Instance = TIM1;
+ htim1.Init.Prescaler = 71;
+ htim1.Init.CounterMode = TIM_COUNTERMODE_UP;
+ htim1.Init.Period = 65535;
+ htim1.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
+ htim1.Init.RepetitionCounter = 0;
+ htim1.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
+ if (HAL_TIM_Base_Init(&htim1) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
+ if (HAL_TIM_ConfigClockSource(&htim1, &sClockSourceConfig) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ sMasterConfig.MasterOutputTrigger = TIM_TRGO_RESET;
+ sMasterConfig.MasterSlaveMode = TIM_MASTERSLAVEMODE_DISABLE;
+ if (HAL_TIMEx_MasterConfigSynchronization(&htim1, &sMasterConfig) != HAL_OK)
+ {
+ Error_Handler();
+ }
+ /* USER CODE BEGIN TIM1_Init 2 */
+
+ /* USER CODE END TIM1_Init 2 */
+
+}
+
+void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle)
+{
+
+ if(tim_baseHandle->Instance==TIM1)
+ {
+ /* USER CODE BEGIN TIM1_MspInit 0 */
+
+ /* USER CODE END TIM1_MspInit 0 */
+ /* TIM1 clock enable */
+ __HAL_RCC_TIM1_CLK_ENABLE();
+ /* USER CODE BEGIN TIM1_MspInit 1 */
+
+ /* USER CODE END TIM1_MspInit 1 */
+ }
+}
+
+void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* tim_baseHandle)
+{
+
+ if(tim_baseHandle->Instance==TIM1)
+ {
+ /* USER CODE BEGIN TIM1_MspDeInit 0 */
+
+ /* USER CODE END TIM1_MspDeInit 0 */
+ /* Peripheral clock disable */
+ __HAL_RCC_TIM1_CLK_DISABLE();
+ /* USER CODE BEGIN TIM1_MspDeInit 1 */
+
+ /* USER CODE END TIM1_MspDeInit 1 */
+ }
+}
+
+/* USER CODE BEGIN 1 */
+
+/* USER CODE END 1 */
+
+/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
diff --git a/Core/Src/usart.c b/Core/Src/usart.c
index 2628097..dd0ce24 100644
--- a/Core/Src/usart.c
+++ b/Core/Src/usart.c
@@ -6,7 +6,7 @@
******************************************************************************
* @attention
*
- * © Copyright (c) 2024 STMicroelectronics.
+ * © Copyright (c) 2025 STMicroelectronics.
* All rights reserved.
*
* This software component is licensed by ST under BSD 3-Clause license,
@@ -128,20 +128,22 @@ void HAL_UART_MspInit(UART_HandleTypeDef* uartHandle)
/* USART1 clock enable */
__HAL_RCC_USART1_CLK_ENABLE();
- __HAL_RCC_GPIOA_CLK_ENABLE();
+ __HAL_RCC_GPIOB_CLK_ENABLE();
/**USART1 GPIO Configuration
- PA9 ------> USART1_TX
- PA10 ------> USART1_RX
+ PB6 ------> USART1_TX
+ PB7 ------> USART1_RX
*/
- GPIO_InitStruct.Pin = GPIO_PIN_9;
+ GPIO_InitStruct.Pin = GPIO_PIN_6;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH;
- HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
+ HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
- GPIO_InitStruct.Pin = GPIO_PIN_10;
+ GPIO_InitStruct.Pin = GPIO_PIN_7;
GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL;
- HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
+ HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
+
+ __HAL_AFIO_REMAP_USART1_ENABLE();
/* USER CODE BEGIN USART1_MspInit 1 */
@@ -215,10 +217,10 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* uartHandle)
__HAL_RCC_USART1_CLK_DISABLE();
/**USART1 GPIO Configuration
- PA9 ------> USART1_TX
- PA10 ------> USART1_RX
+ PB6 ------> USART1_TX
+ PB7 ------> USART1_RX
*/
- HAL_GPIO_DeInit(GPIOA, GPIO_PIN_9|GPIO_PIN_10);
+ HAL_GPIO_DeInit(GPIOB, GPIO_PIN_6|GPIO_PIN_7);
/* USER CODE BEGIN USART1_MspDeInit 1 */
diff --git a/MDK-ARM b/MDK-ARM
new file mode 160000
index 0000000..1d6c08d
--- /dev/null
+++ b/MDK-ARM
@@ -0,0 +1 @@
+Subproject commit 1d6c08d58a2f5395cfee7dd44c0b676935e371ed
diff --git a/STM32F103C8T6_KQZLJC.ioc b/STM32F103C8T6_KQZLJC.ioc
index 437bee6..f88297a 100644
--- a/STM32F103C8T6_KQZLJC.ioc
+++ b/STM32F103C8T6_KQZLJC.ioc
@@ -1,6 +1,6 @@
#MicroXplorer Configuration settings - do not modify
-ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_1
-ADC1.IPParameters=Rank-0\#ChannelRegularConversion,master,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,NbrOfConversionFlag
+ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_6
+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
@@ -14,23 +14,25 @@ Mcu.IP1=I2C1
Mcu.IP2=NVIC
Mcu.IP3=RCC
Mcu.IP4=SYS
-Mcu.IP5=USART1
-Mcu.IP6=USART2
-Mcu.IP7=USART3
-Mcu.IPNb=8
+Mcu.IP5=TIM1
+Mcu.IP6=USART1
+Mcu.IP7=USART2
+Mcu.IP8=USART3
+Mcu.IPNb=9
Mcu.Name=STM32F103C(8-B)Tx
Mcu.Package=LQFP48
Mcu.Pin0=PC13-TAMPER-RTC
Mcu.Pin1=PD0-OSC_IN
-Mcu.Pin10=PB11
-Mcu.Pin11=PA8
-Mcu.Pin12=PA9
-Mcu.Pin13=PA10
-Mcu.Pin14=PA13
-Mcu.Pin15=PA14
-Mcu.Pin16=PB6
-Mcu.Pin17=PB7
+Mcu.Pin10=PB10
+Mcu.Pin11=PB11
+Mcu.Pin12=PA13
+Mcu.Pin13=PA14
+Mcu.Pin14=PB6
+Mcu.Pin15=PB7
+Mcu.Pin16=PB8
+Mcu.Pin17=PB9
Mcu.Pin18=VP_SYS_VS_Systick
+Mcu.Pin19=VP_TIM1_VS_ClockSourceINT
Mcu.Pin2=PD1-OSC_OUT
Mcu.Pin3=PA0-WKUP
Mcu.Pin4=PA1
@@ -38,8 +40,8 @@ Mcu.Pin5=PA2
Mcu.Pin6=PA3
Mcu.Pin7=PA4
Mcu.Pin8=PA5
-Mcu.Pin9=PB10
-Mcu.PinsNb=19
+Mcu.Pin9=PA6
+Mcu.PinsNb=20
Mcu.ThirdPartyNb=0
Mcu.UserConstants=
Mcu.UserName=STM32F103C8Tx
@@ -56,12 +58,12 @@ NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false
NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:true\:false\:true
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
+PA0-WKUP.GPIOParameters=GPIO_PuPd
+PA0-WKUP.GPIO_PuPd=GPIO_NOPULL
PA0-WKUP.Locked=true
-PA0-WKUP.Signal=GPIO_Input
+PA0-WKUP.Signal=GPIO_Output
PA1.Locked=true
PA1.Signal=ADCx_IN1
-PA10.Mode=Asynchronous
-PA10.Signal=USART1_RX
PA13.Mode=Serial_Wire
PA13.Signal=SYS_JTMS-SWDIO
PA14.Mode=Serial_Wire
@@ -74,18 +76,20 @@ PA4.Locked=true
PA4.Signal=GPIO_Output
PA5.Locked=true
PA5.Signal=GPIO_Output
-PA8.Locked=true
-PA8.Signal=GPIO_Input
-PA9.Mode=Asynchronous
-PA9.Signal=USART1_TX
+PA6.Locked=true
+PA6.Signal=ADCx_IN6
PB10.Mode=Asynchronous
PB10.Signal=USART3_TX
PB11.Mode=Asynchronous
PB11.Signal=USART3_RX
-PB6.Mode=I2C
-PB6.Signal=I2C1_SCL
-PB7.Mode=I2C
-PB7.Signal=I2C1_SDA
+PB6.Mode=Asynchronous
+PB6.Signal=USART1_TX
+PB7.Mode=Asynchronous
+PB7.Signal=USART1_RX
+PB8.Mode=I2C
+PB8.Signal=I2C1_SCL
+PB9.Mode=I2C
+PB9.Signal=I2C1_SDA
PC13-TAMPER-RTC.Locked=true
PC13-TAMPER-RTC.Signal=GPIO_Output
PD0-OSC_IN.Mode=HSE-External-Oscillator
@@ -120,7 +124,7 @@ ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=MDK-ARM V5.32
ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=false
-ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_USART2_UART_Init-USART2-false-HAL-true,5-MX_USART3_UART_Init-USART3-false-HAL-true,6-MX_ADC1_Init-ADC1-false-HAL-true,7-MX_I2C1_Init-I2C1-false-HAL-true
+ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART1_UART_Init-USART1-false-HAL-true,4-MX_USART2_UART_Init-USART2-false-HAL-true,5-MX_USART3_UART_Init-USART3-false-HAL-true,6-MX_ADC1_Init-ADC1-false-HAL-true,7-MX_I2C1_Init-I2C1-false-HAL-true,8-MX_TIM1_Init-TIM1-false-HAL-true
RCC.ADCFreqValue=12000000
RCC.ADCPresc=RCC_ADCPCLK2_DIV6
RCC.AHBFreq_Value=72000000
@@ -143,8 +147,12 @@ RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
RCC.TimSysFreq_Value=72000000
RCC.USBFreq_Value=72000000
RCC.VCOOutput2Freq_Value=8000000
-SH.ADCx_IN1.0=ADC1_IN1,IN1
+SH.ADCx_IN1.0=ADC1_IN1
SH.ADCx_IN1.ConfNb=1
+SH.ADCx_IN6.0=ADC1_IN6,IN6
+SH.ADCx_IN6.ConfNb=1
+TIM1.IPParameters=Prescaler
+TIM1.Prescaler=71
USART1.IPParameters=VirtualMode
USART1.VirtualMode=VM_ASYNC
USART2.IPParameters=VirtualMode
@@ -153,4 +161,6 @@ USART3.IPParameters=VirtualMode
USART3.VirtualMode=VM_ASYNC
VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick
+VP_TIM1_VS_ClockSourceINT.Mode=Internal
+VP_TIM1_VS_ClockSourceINT.Signal=TIM1_VS_ClockSourceINT
board=custom