This commit is contained in:
Mysteo91
2023-07-28 17:29:45 +03:00
parent 4835d6a3a5
commit c6549ebd6f
10 changed files with 174 additions and 86 deletions

View File

@@ -1,6 +1,6 @@
<component name="ProjectRunConfigurationManager"> <component name="ProjectRunConfigurationManager">
<configuration default="false" name="OCD mainprog" type="com.jetbrains.cidr.embedded.openocd.conf.type" factoryName="com.jetbrains.cidr.embedded.openocd.conf.factory" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="myProject" TARGET_NAME="main_prog.elf" CONFIG_NAME="Debug" version="1" RUN_TARGET_PROJECT_NAME="myProject" RUN_TARGET_NAME="main_prog.elf"> <configuration default="false" name="OCD mainprog" type="com.jetbrains.cidr.embedded.openocd.conf.type" factoryName="com.jetbrains.cidr.embedded.openocd.conf.factory" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="myProject" TARGET_NAME="main_prog.elf" CONFIG_NAME="Debug" version="1" RUN_PATH="$PROJECT_DIR$/cmake-build-release/main_prog/main_prog_SRECORD.hex">
<openocd version="1" gdb-port="3333" telnet-port="4444" board-config="board/st_nucleo_g0.cfg" reset-type="INIT" download-type="UPDATED_ONLY"> <openocd version="1" gdb-port="3333" telnet-port="4444" board-config="board/st_nucleo_g0.cfg" reset-type="INIT" download-type="NONE">
<debugger kind="GDB" isBundled="true" /> <debugger kind="GDB" isBundled="true" />
</openocd> </openocd>
<method v="2"> <method v="2">

View File

@@ -34,8 +34,13 @@ extern "C" {
} }
#include "uart_bridge.hpp" #include "uart_bridge.hpp"
#include "tim.h"
UartBridge bridge(true, USART1, USART2, 9600, 9600); UartBridge bridge(true, USART1, USART2, 9600, 9600);
void zummerOff (void);
void zummerOn (void);
void lightingOn (void);
void lightingOff (void);
/************************************************************************************//** /************************************************************************************//**
** \brief Initializes the user program application. Should be called once during ** \brief Initializes the user program application. Should be called once during
** software program initialization. ** software program initialization.
@@ -50,8 +55,11 @@ void AppInit(void)
LedInit(); LedInit();
/* initialize the bootloader interface */ /* initialize the bootloader interface */
bridge.init(); bridge.init();
zummerOff();
lightingOff();
/* /*
BootComInit(); BootComInit();
*/ */
} /*** end of AppInit ***/ } /*** end of AppInit ***/
@@ -63,25 +71,72 @@ void AppInit(void)
** **
****************************************************************************************/ ****************************************************************************************/
uint8_t temp[2]; uint8_t temp[2];
uint32_t controlPinMs = 0;
uint8_t controlPinFlag = 0;
uint8_t controlPinHighStart = 0;
uint8_t updateMode = 0;
void zummerOff (void)
{
HAL_TIM_Base_Stop(&htim3);
HAL_TIM_PWM_Stop(&htim3, TIM_CHANNEL_2);
}
void zummerOn (void)
{
HAL_TIM_Base_Start(&htim3);
HAL_TIM_PWM_Start(&htim3, TIM_CHANNEL_2);
}
void lightingOn (void)
{
HAL_GPIO_WritePin(LIGHTING_EN_GPIO_Port, LIGHTING_EN_Pin, GPIO_PIN_SET);
}
void lightingOff (void)
{
HAL_GPIO_WritePin(LIGHTING_EN_GPIO_Port, LIGHTING_EN_Pin, GPIO_PIN_RESET);
}
void AppTask(void) void AppTask(void)
{ {
if (!bridge.uart1Buf->is_empty() && (__HAL_UART_GET_FLAG(bridge.getHuart2(), UART_FLAG_TC))) if (!updateMode) {
if (HAL_GPIO_ReadPin(CONTROL_PIN_GPIO_Port, CONTROL_PIN_Pin) == GPIO_PIN_SET) {
if (controlPinFlag == 0)
{ {
controlPinHighStart = HAL_GetTick();
controlPinFlag = 1;
}
} else if (controlPinFlag == 1) {
controlPinFlag = 0;
uint32_t ms = HAL_GetTick() - controlPinHighStart;
if (ms >= 5000 && ms < 5200) {
////////Update mode
HAL_UART_DeInit(&huart1);
BootComInit();
zummerOff();
lightingOff();
} else if (ms >= 100 && ms < 150) {
zummerOn();
//////ZUMMER ON
} else if (ms >= 200 && ms < 250) {
zummerOff();
//////ZUMMER OFF
}
}
if (!bridge.uart1Buf->is_empty() && (__HAL_UART_GET_FLAG(bridge.getHuart2(), UART_FLAG_TC))) {
temp[1] = bridge.uart1Buf->dequeue(); temp[1] = bridge.uart1Buf->dequeue();
HAL_UART_Transmit_IT(bridge.getHuart2(), &temp[1], 1); HAL_UART_Transmit_IT(bridge.getHuart2(), &temp[1], 1);
} }
if (!bridge.uart2Buf->is_empty() && (__HAL_UART_GET_FLAG(bridge.getHuart1(), UART_FLAG_TC))) if (!bridge.uart2Buf->is_empty() && (__HAL_UART_GET_FLAG(bridge.getHuart1(), UART_FLAG_TC))) {
{
temp[2] = bridge.uart2Buf->dequeue(); temp[2] = bridge.uart2Buf->dequeue();
HAL_UART_Transmit_IT(bridge.getHuart1(), &temp[2], 1); HAL_UART_Transmit_IT(bridge.getHuart1(), &temp[2], 1);
} }
}
else
{
BootComCheckActivationRequest();
}
} }
/* check for bootloader activation request */
/*
BootComCheckActivationRequest();
*/
/*** end of AppTask ***/ /*** end of AppTask ***/

View File

@@ -42,22 +42,14 @@ else()
set(CMAKE_CXX_COMPILER arm-none-eabi-g++) set(CMAKE_CXX_COMPILER arm-none-eabi-g++)
set(CMAKE_ASM_COMPILER arm-none-eabi-gcc) set(CMAKE_ASM_COMPILER arm-none-eabi-gcc)
set(LEN_OFFSET 0xBC) set(LEN_OFFSET 0xBC)
set (CRC_ADDRESS 0)
set (FLASH_MAIN_ADDRESS 0)
set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY) set(CMAKE_TRY_COMPILE_TARGET_TYPE STATIC_LIBRARY)
add_subdirectory(cmake_func)
math(EXPR LEN_ADDRESS "${FLASH_MAIN_ADDRESS} + ${LEN_OFFSET}" OUTPUT_FORMAT HEXADECIMAL)
add_compile_definitions("PAGE_SIZE=0x0800")
set(LEN_OFFSET 0xBC)
set (CRC_ADDRESS 0) set (CRC_ADDRESS 0)
set (FLASH_MAIN_ADDRESS 0) set (FLASH_MAIN_ADDRESS 0)
set(MEM_MAP_FILE "memory_map.inc") set(MEM_MAP_FILE "memory_map.inc")
math(EXPR LEN_ADDRESS "${FLASH_MAIN_ADDRESS} + ${LEN_OFFSET}" OUTPUT_FORMAT HEXADECIMAL) add_subdirectory(cmake_func)
add_compile_definitions("PAGE_SIZE=0x0800") add_compile_definitions("PAGE_SIZE=0x0800")
set(CMAKE_AR arm-none-eabi-ar) set(CMAKE_AR arm-none-eabi-ar)
set(CMAKE_OBJCOPY arm-none-eabi-objcopy) set(CMAKE_OBJCOPY arm-none-eabi-objcopy)
set(CMAKE_OBJDUMP arm-none-eabi-objdump) set(CMAKE_OBJDUMP arm-none-eabi-objdump)
@@ -147,6 +139,7 @@ else()
if (BOOT) if (BOOT)
set (HAL_DRIVER_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/Boot/Core/Inc/stm32g0xx_hal_conf.h) set (HAL_DRIVER_CONFIG ${CMAKE_CURRENT_SOURCE_DIR}/Boot/Core/Inc/stm32g0xx_hal_conf.h)
FUNC_CREATE_MEMORY_MAP("${MEM_MAP_FILE}" "128" "8" "4" ) FUNC_CREATE_MEMORY_MAP("${MEM_MAP_FILE}" "128" "8" "4" )
math(EXPR LEN_ADDRESS "${FLASH_MAIN_ADDRESS} + ${LEN_OFFSET}" OUTPUT_FORMAT HEXADECIMAL)
add_compile_definitions("BOOT_FLASH_VECTOR_TABLE_CS_OFFSET=${LEN_OFFSET}" "LEN_ADDRESS=${LEN_ADDRESS}") add_compile_definitions("BOOT_FLASH_VECTOR_TABLE_CS_OFFSET=${LEN_OFFSET}" "LEN_ADDRESS=${LEN_ADDRESS}")
add_compile_definitions("PAGE_SIZE=0x0800") add_compile_definitions("PAGE_SIZE=0x0800")
add_subdirectory(libs) add_subdirectory(libs)

View File

@@ -79,7 +79,9 @@ else()
set(MEM_MAP_FILE "memory_map.inc") set(MEM_MAP_FILE "memory_map.inc")
FUNC_CREATE_MEMORY_MAP("${MEM_MAP_FILE}" "128" "8" "4" ) FUNC_CREATE_MEMORY_MAP("${MEM_MAP_FILE}" "128" "8" "4" )
endif() endif()
math(EXPR LEN_ADDRESS "${FLASH_MAIN_ADDRESS} + ${LEN_OFFSET}" OUTPUT_FORMAT HEXADECIMAL)
add_compile_definitions("BOOT_FLASH_VECTOR_TABLE_CS_OFFSET=${LEN_OFFSET}" "LEN_ADDRESS=${LEN_ADDRESS}")
add_compile_definitions("PAGE_SIZE=0x0800")
add_link_options(-specs=nano.specs -specs=nosys.specs) add_link_options(-specs=nano.specs -specs=nosys.specs)
add_executable(${PROJECT_NAME}.elf ${SOURCES}) add_executable(${PROJECT_NAME}.elf ${SOURCES})
target_compile_options(${PROJECT_NAME}.elf PUBLIC ${COMPILE_OPTIONS}) target_compile_options(${PROJECT_NAME}.elf PUBLIC ${COMPILE_OPTIONS})
@@ -89,6 +91,10 @@ add_link_options(-specs=nano.specs -specs=nosys.specs)
target_compile_definitions(${PROJECT_NAME}.elf PUBLIC ${COMPILE_DEF}) target_compile_definitions(${PROJECT_NAME}.elf PUBLIC ${COMPILE_DEF})
set(HEX_FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}.hex) set(HEX_FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}.hex)
set(BIN_FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}.bin) set(BIN_FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}.bin)
set(HEX_FILE_SRECORD_WITH_LEN_AND_CRC ${PROJECT_BINARY_DIR}/${PROJECT_NAME}_SRECORD.hex)
set(AFTER_BUILD_SCRIPT ${CMAKE_SOURCE_DIR}/scripts/after_build.ps1)
math(EXPR CRC_USER_END_ADDRESS "${CRC32_USER_PROG_AND_USER_LIB_ADDRESS} + 4")
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
add_custom_command(TARGET ${PROJECT_NAME}.elf PRE_BUILD add_custom_command(TARGET ${PROJECT_NAME}.elf PRE_BUILD
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_SOURCE_DIR}/${MEM_MAP_FILE_DEBUG}" ${PROJECT_BINARY_DIR}/../${MEM_MAP_FILE} COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_SOURCE_DIR}/${MEM_MAP_FILE_DEBUG}" ${PROJECT_BINARY_DIR}/../${MEM_MAP_FILE}
@@ -103,6 +109,8 @@ endif()
COMMAND ${CMAKE_OBJCOPY} -Obinary $<TARGET_FILE:${PROJECT_NAME}.elf> ${BIN_FILE} COMMAND ${CMAKE_OBJCOPY} -Obinary $<TARGET_FILE:${PROJECT_NAME}.elf> ${BIN_FILE}
COMMENT "Building ${HEX_FILE} COMMENT "Building ${HEX_FILE}
Building ${BIN_FILE}" Building ${BIN_FILE}"
COMMAND powershell ${AFTER_BUILD_SCRIPT} ${HEX_FILE} ${HEX_FILE_SRECORD_WITH_LEN_AND_CRC} ${LEN_ADDRESS}
) )
#///////////////////////////USER CUSTOM COMMANDS #///////////////////////////USER CUSTOM COMMANDS

View File

@@ -58,12 +58,14 @@ void Error_Handler(void);
/* USER CODE END EFP */ /* USER CODE END EFP */
/* Private defines -----------------------------------------------------------*/ /* Private defines -----------------------------------------------------------*/
#define GPIO_RESET_Pin GPIO_PIN_1
#define GPIO_RESET_GPIO_Port GPIOA
#define LIGHTING_EN_Pin GPIO_PIN_4 #define LIGHTING_EN_Pin GPIO_PIN_4
#define LIGHTING_EN_GPIO_Port GPIOA #define LIGHTING_EN_GPIO_Port GPIOA
#define READER_EN_Pin GPIO_PIN_5 #define READER_EN_Pin GPIO_PIN_5
#define READER_EN_GPIO_Port GPIOA #define READER_EN_GPIO_Port GPIOA
#define ZUMMER_PINOUT_Pin GPIO_PIN_5 #define CONTROL_PIN_Pin GPIO_PIN_4
#define ZUMMER_PINOUT_GPIO_Port GPIOB #define CONTROL_PIN_GPIO_Port GPIOB
/* USER CODE BEGIN Private defines */ /* USER CODE BEGIN Private defines */

View File

@@ -40,6 +40,8 @@ extern TIM_HandleTypeDef htim3;
void MX_TIM3_Init(void); void MX_TIM3_Init(void);
void HAL_TIM_MspPostInit(TIM_HandleTypeDef *htim);
/* USER CODE BEGIN Prototypes */ /* USER CODE BEGIN Prototypes */
/* USER CODE END Prototypes */ /* USER CODE END Prototypes */

View File

@@ -52,11 +52,8 @@ void MX_GPIO_Init(void)
/*Configure GPIO pin Output Level */ /*Configure GPIO pin Output Level */
HAL_GPIO_WritePin(GPIOA, LIGHTING_EN_Pin|READER_EN_Pin, GPIO_PIN_RESET); HAL_GPIO_WritePin(GPIOA, LIGHTING_EN_Pin|READER_EN_Pin, GPIO_PIN_RESET);
/*Configure GPIO pin Output Level */ /*Configure GPIO pins : PA0 PAPin */
HAL_GPIO_WritePin(ZUMMER_PINOUT_GPIO_Port, ZUMMER_PINOUT_Pin, GPIO_PIN_RESET); GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_RESET_Pin;
/*Configure GPIO pins : PA0 PA1 */
GPIO_InitStruct.Pin = GPIO_PIN_0|GPIO_PIN_1;
GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING; GPIO_InitStruct.Mode = GPIO_MODE_IT_RISING;
GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Pull = GPIO_NOPULL;
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
@@ -69,11 +66,10 @@ void MX_GPIO_Init(void)
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
/*Configure GPIO pin : PtPin */ /*Configure GPIO pin : PtPin */
GPIO_InitStruct.Pin = ZUMMER_PINOUT_Pin; GPIO_InitStruct.Pin = CONTROL_PIN_Pin;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Mode = GPIO_MODE_INPUT;
GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Pull = GPIO_PULLDOWN;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(CONTROL_PIN_GPIO_Port, &GPIO_InitStruct);
HAL_GPIO_Init(ZUMMER_PINOUT_GPIO_Port, &GPIO_InitStruct);
} }

View File

@@ -38,7 +38,7 @@ void MX_I2C2_Init(void)
/* USER CODE END I2C2_Init 1 */ /* USER CODE END I2C2_Init 1 */
hi2c2.Instance = I2C2; hi2c2.Instance = I2C2;
hi2c2.Init.Timing = 0x00303D5B; hi2c2.Init.Timing = 0x10707DBC;
hi2c2.Init.OwnAddress1 = 0; hi2c2.Init.OwnAddress1 = 0;
hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT; hi2c2.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE; hi2c2.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;

View File

@@ -34,8 +34,9 @@ void MX_TIM3_Init(void)
/* USER CODE END TIM3_Init 0 */ /* USER CODE END TIM3_Init 0 */
TIM_ClockConfigTypeDef sClockSourceConfig = {0};
TIM_MasterConfigTypeDef sMasterConfig = {0}; TIM_MasterConfigTypeDef sMasterConfig = {0};
TIM_IC_InitTypeDef sConfigIC = {0}; TIM_OC_InitTypeDef sConfigOC = {0};
/* USER CODE BEGIN TIM3_Init 1 */ /* USER CODE BEGIN TIM3_Init 1 */
@@ -43,10 +44,19 @@ void MX_TIM3_Init(void)
htim3.Instance = TIM3; htim3.Instance = TIM3;
htim3.Init.Prescaler = 0; htim3.Init.Prescaler = 0;
htim3.Init.CounterMode = TIM_COUNTERMODE_UP; htim3.Init.CounterMode = TIM_COUNTERMODE_UP;
htim3.Init.Period = 65535; htim3.Init.Period = 21332;
htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; htim3.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE; htim3.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
if (HAL_TIM_IC_Init(&htim3) != HAL_OK) if (HAL_TIM_Base_Init(&htim3) != HAL_OK)
{
Error_Handler();
}
sClockSourceConfig.ClockSource = TIM_CLOCKSOURCE_INTERNAL;
if (HAL_TIM_ConfigClockSource(&htim3, &sClockSourceConfig) != HAL_OK)
{
Error_Handler();
}
if (HAL_TIM_PWM_Init(&htim3) != HAL_OK)
{ {
Error_Handler(); Error_Handler();
} }
@@ -56,65 +66,74 @@ void MX_TIM3_Init(void)
{ {
Error_Handler(); Error_Handler();
} }
sConfigIC.ICPolarity = TIM_INPUTCHANNELPOLARITY_RISING; sConfigOC.OCMode = TIM_OCMODE_PWM1;
sConfigIC.ICSelection = TIM_ICSELECTION_DIRECTTI; sConfigOC.Pulse = 10616;
sConfigIC.ICPrescaler = TIM_ICPSC_DIV1; sConfigOC.OCPolarity = TIM_OCPOLARITY_LOW;
sConfigIC.ICFilter = 0; sConfigOC.OCFastMode = TIM_OCFAST_DISABLE;
if (HAL_TIM_IC_ConfigChannel(&htim3, &sConfigIC, TIM_CHANNEL_1) != HAL_OK) if (HAL_TIM_PWM_ConfigChannel(&htim3, &sConfigOC, TIM_CHANNEL_2) != HAL_OK)
{ {
Error_Handler(); Error_Handler();
} }
/* USER CODE BEGIN TIM3_Init 2 */ /* USER CODE BEGIN TIM3_Init 2 */
/* USER CODE END TIM3_Init 2 */ /* USER CODE END TIM3_Init 2 */
HAL_TIM_MspPostInit(&htim3);
} }
void HAL_TIM_IC_MspInit(TIM_HandleTypeDef* tim_icHandle) void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* tim_baseHandle)
{ {
GPIO_InitTypeDef GPIO_InitStruct = {0}; if(tim_baseHandle->Instance==TIM3)
if(tim_icHandle->Instance==TIM3)
{ {
/* USER CODE BEGIN TIM3_MspInit 0 */ /* USER CODE BEGIN TIM3_MspInit 0 */
/* USER CODE END TIM3_MspInit 0 */ /* USER CODE END TIM3_MspInit 0 */
/* TIM3 clock enable */ /* TIM3 clock enable */
__HAL_RCC_TIM3_CLK_ENABLE(); __HAL_RCC_TIM3_CLK_ENABLE();
/* USER CODE BEGIN TIM3_MspInit 1 */
/* USER CODE END TIM3_MspInit 1 */
}
}
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* timHandle)
{
GPIO_InitTypeDef GPIO_InitStruct = {0};
if(timHandle->Instance==TIM3)
{
/* USER CODE BEGIN TIM3_MspPostInit 0 */
/* USER CODE END TIM3_MspPostInit 0 */
__HAL_RCC_GPIOB_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE();
/**TIM3 GPIO Configuration /**TIM3 GPIO Configuration
PB4 ------> TIM3_CH1 PB5 ------> TIM3_CH2
*/ */
GPIO_InitStruct.Pin = GPIO_PIN_4; GPIO_InitStruct.Pin = GPIO_PIN_5;
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP; GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
GPIO_InitStruct.Alternate = GPIO_AF1_TIM3; GPIO_InitStruct.Alternate = GPIO_AF1_TIM3;
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct); HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
/* USER CODE BEGIN TIM3_MspInit 1 */ /* USER CODE BEGIN TIM3_MspPostInit 1 */
/* USER CODE END TIM3_MspInit 1 */ /* USER CODE END TIM3_MspPostInit 1 */
} }
} }
void HAL_TIM_IC_MspDeInit(TIM_HandleTypeDef* tim_icHandle) void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* tim_baseHandle)
{ {
if(tim_icHandle->Instance==TIM3) if(tim_baseHandle->Instance==TIM3)
{ {
/* USER CODE BEGIN TIM3_MspDeInit 0 */ /* USER CODE BEGIN TIM3_MspDeInit 0 */
/* USER CODE END TIM3_MspDeInit 0 */ /* USER CODE END TIM3_MspDeInit 0 */
/* Peripheral clock disable */ /* Peripheral clock disable */
__HAL_RCC_TIM3_CLK_DISABLE(); __HAL_RCC_TIM3_CLK_DISABLE();
/**TIM3 GPIO Configuration
PB4 ------> TIM3_CH1
*/
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_4);
/* USER CODE BEGIN TIM3_MspDeInit 1 */ /* USER CODE BEGIN TIM3_MspDeInit 1 */
/* USER CODE END TIM3_MspDeInit 1 */ /* USER CODE END TIM3_MspDeInit 1 */

View File

@@ -4,6 +4,8 @@ CAD.pinconfig=
CAD.provider= CAD.provider=
File.Version=6 File.Version=6
GPIO.groupedBy=Group By Peripherals GPIO.groupedBy=Group By Peripherals
I2C2.IPParameters=Timing
I2C2.Timing=0x10707DBC
KeepUserPlacement=false KeepUserPlacement=false
Mcu.CPN=STM32G070CBT6 Mcu.CPN=STM32G070CBT6
Mcu.Family=STM32G0 Mcu.Family=STM32G0
@@ -27,6 +29,7 @@ Mcu.Pin14=PB6
Mcu.Pin15=PB7 Mcu.Pin15=PB7
Mcu.Pin16=VP_SYS_VS_Systick Mcu.Pin16=VP_SYS_VS_Systick
Mcu.Pin17=VP_SYS_VS_DBSignals Mcu.Pin17=VP_SYS_VS_DBSignals
Mcu.Pin18=VP_TIM3_VS_ClockSourceINT
Mcu.Pin2=PA0 Mcu.Pin2=PA0
Mcu.Pin3=PA1 Mcu.Pin3=PA1
Mcu.Pin4=PA2 Mcu.Pin4=PA2
@@ -35,7 +38,7 @@ Mcu.Pin6=PA4
Mcu.Pin7=PA5 Mcu.Pin7=PA5
Mcu.Pin8=PA11 [PA9] Mcu.Pin8=PA11 [PA9]
Mcu.Pin9=PA12 [PA10] Mcu.Pin9=PA12 [PA10]
Mcu.PinsNb=18 Mcu.PinsNb=19
Mcu.ThirdPartyNb=0 Mcu.ThirdPartyNb=0
Mcu.UserConstants= Mcu.UserConstants=
Mcu.UserName=STM32G070CBTx Mcu.UserName=STM32G070CBTx
@@ -51,6 +54,8 @@ NVIC.USART1_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
NVIC.USART2_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.USART2_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true
PA0.Locked=true PA0.Locked=true
PA0.Signal=GPXTI0 PA0.Signal=GPXTI0
PA1.GPIOParameters=GPIO_Label
PA1.GPIO_Label=GPIO_RESET
PA1.Locked=true PA1.Locked=true
PA1.Signal=GPXTI1 PA1.Signal=GPXTI1
PA11\ [PA9].Locked=true PA11\ [PA9].Locked=true
@@ -75,12 +80,12 @@ PA5.GPIOParameters=GPIO_Label
PA5.GPIO_Label=READER_EN PA5.GPIO_Label=READER_EN
PA5.Locked=true PA5.Locked=true
PA5.Signal=GPIO_Output PA5.Signal=GPIO_Output
PB4.GPIOParameters=GPIO_Label
PB4.GPIO_Label=CONTROL_PIN
PB4.Locked=true PB4.Locked=true
PB4.Signal=S_TIM3_CH1 PB4.Signal=GPIO_Input
PB5.GPIOParameters=GPIO_Label
PB5.GPIO_Label=ZUMMER_PINOUT
PB5.Locked=true PB5.Locked=true
PB5.Signal=GPIO_Output PB5.Signal=S_TIM3_CH2
PB6.Locked=true PB6.Locked=true
PB6.Mode=Asynchronous PB6.Mode=Asynchronous
PB6.Signal=USART1_TX PB6.Signal=USART1_TX
@@ -120,40 +125,46 @@ ProjectManager.StackSize=0x400
ProjectManager.TargetToolchain=STM32CubeIDE ProjectManager.TargetToolchain=STM32CubeIDE
ProjectManager.ToolChainLocation= ProjectManager.ToolChainLocation=
ProjectManager.UnderRoot=true ProjectManager.UnderRoot=true
ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_I2C2_Init-I2C2-false-HAL-true,4-MX_TIM3_Init-TIM3-false-HAL-true,5-MX_USART1_UART_Init-USART1-false-HAL-true,6-MX_USART2_UART_Init-USART2-false-HAL-true ProjectManager.functionlistsort=1-SystemClock_Config-RCC-false-HAL-false,2-MX_GPIO_Init-GPIO-false-HAL-true,3-MX_I2C2_Init-I2C2-false-HAL-true,4-MX_USART1_UART_Init-USART1-false-HAL-true,5-MX_USART2_UART_Init-USART2-false-HAL-true
RCC.AHBFreq_Value=16000000 RCC.ADCFreq_Value=64000000
RCC.APBFreq_Value=16000000 RCC.AHBFreq_Value=64000000
RCC.APBTimFreq_Value=16000000 RCC.APBFreq_Value=64000000
RCC.CortexFreq_Value=16000000 RCC.APBTimFreq_Value=64000000
RCC.CortexFreq_Value=64000000
RCC.EXTERNAL_CLOCK_VALUE=48000 RCC.EXTERNAL_CLOCK_VALUE=48000
RCC.FCLKCortexFreq_Value=16000000 RCC.FCLKCortexFreq_Value=64000000
RCC.FamilyName=M RCC.FamilyName=M
RCC.HCLKFreq_Value=16000000 RCC.HCLKFreq_Value=64000000
RCC.HSE_VALUE=8000000 RCC.HSE_VALUE=8000000
RCC.HSI_VALUE=16000000 RCC.HSI_VALUE=16000000
RCC.I2C1Freq_Value=16000000 RCC.I2C1Freq_Value=64000000
RCC.I2S1Freq_Value=16000000 RCC.I2S1Freq_Value=64000000
RCC.IPParameters=AHBFreq_Value,APBFreq_Value,APBTimFreq_Value,CortexFreq_Value,EXTERNAL_CLOCK_VALUE,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2S1Freq_Value,LSCOPinFreq_Value,LSE_VALUE,LSI_VALUE,MCO1PinFreq_Value,PLLPoutputFreq_Value,PLLRCLKFreq_Value,PWRFreq_Value,SYSCLKFreq_VALUE,USART1Freq_Value,USART2Freq_Value,VCOInputFreq_Value,VCOOutputFreq_Value RCC.IPParameters=ADCFreq_Value,AHBFreq_Value,APBFreq_Value,APBTimFreq_Value,CortexFreq_Value,EXTERNAL_CLOCK_VALUE,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2S1Freq_Value,LSCOPinFreq_Value,LSE_VALUE,LSI_VALUE,MCO1PinFreq_Value,PLLN,PLLPoutputFreq_Value,PLLRCLKFreq_Value,PLLSourceVirtual,PWRFreq_Value,SYSCLKFreq_VALUE,SYSCLKSource,USART1Freq_Value,USART2Freq_Value,VCOInputFreq_Value,VCOOutputFreq_Value
RCC.LSCOPinFreq_Value=32000 RCC.LSCOPinFreq_Value=32000
RCC.LSE_VALUE=32768 RCC.LSE_VALUE=32768
RCC.LSI_VALUE=32000 RCC.LSI_VALUE=32000
RCC.MCO1PinFreq_Value=16000000 RCC.MCO1PinFreq_Value=64000000
RCC.PLLN=16
RCC.PLLPoutputFreq_Value=64000000 RCC.PLLPoutputFreq_Value=64000000
RCC.PLLRCLKFreq_Value=64000000 RCC.PLLRCLKFreq_Value=64000000
RCC.PWRFreq_Value=16000000 RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE
RCC.SYSCLKFreq_VALUE=16000000 RCC.PWRFreq_Value=64000000
RCC.USART1Freq_Value=16000000 RCC.SYSCLKFreq_VALUE=64000000
RCC.USART2Freq_Value=16000000 RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK
RCC.VCOInputFreq_Value=16000000 RCC.USART1Freq_Value=64000000
RCC.USART2Freq_Value=64000000
RCC.VCOInputFreq_Value=8000000
RCC.VCOOutputFreq_Value=128000000 RCC.VCOOutputFreq_Value=128000000
SH.GPXTI0.0=GPIO_EXTI0 SH.GPXTI0.0=GPIO_EXTI0
SH.GPXTI0.ConfNb=1 SH.GPXTI0.ConfNb=1
SH.GPXTI1.0=GPIO_EXTI1 SH.GPXTI1.0=GPIO_EXTI1
SH.GPXTI1.ConfNb=1 SH.GPXTI1.ConfNb=1
SH.S_TIM3_CH1.0=TIM3_CH1,Input_Capture1_from_TI1 SH.S_TIM3_CH2.0=TIM3_CH2,PWM Generation2 CH2
SH.S_TIM3_CH1.ConfNb=1 SH.S_TIM3_CH2.ConfNb=1
TIM3.Channel-Input_Capture1_from_TI1=TIM_CHANNEL_1 TIM3.Channel-PWM\ Generation2\ CH2=TIM_CHANNEL_2
TIM3.IPParameters=Channel-Input_Capture1_from_TI1 TIM3.IPParameters=Channel-PWM Generation2 CH2,Period,Pulse-PWM Generation2 CH2
TIM3.Period=21332
TIM3.Pulse-PWM\ Generation2\ CH2=10616
USART1.BaudRate=9600 USART1.BaudRate=9600
USART1.IPParameters=VirtualMode-Asynchronous,BaudRate,SwapParam USART1.IPParameters=VirtualMode-Asynchronous,BaudRate,SwapParam
USART1.SwapParam=ADVFEATURE_SWAP_ENABLE USART1.SwapParam=ADVFEATURE_SWAP_ENABLE
@@ -165,4 +176,6 @@ VP_SYS_VS_DBSignals.Mode=DisableDeadBatterySignals
VP_SYS_VS_DBSignals.Signal=SYS_VS_DBSignals VP_SYS_VS_DBSignals.Signal=SYS_VS_DBSignals
VP_SYS_VS_Systick.Mode=SysTick VP_SYS_VS_Systick.Mode=SysTick
VP_SYS_VS_Systick.Signal=SYS_VS_Systick VP_SYS_VS_Systick.Signal=SYS_VS_Systick
VP_TIM3_VS_ClockSourceINT.Mode=Internal
VP_TIM3_VS_ClockSourceINT.Signal=TIM3_VS_ClockSourceINT
board=custom board=custom