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