source: trunk/firmware_v4/Core/Inc/main.h

Last change on this file was 42, checked in by f.jahn, 5 days ago
File size: 5.1 KB
Line 
1/* USER CODE BEGIN Header */
2/**
3 ******************************************************************************
4 * @file : main.h
5 * @brief : Header for main.c file.
6 * This file contains the common defines of the application.
7 ******************************************************************************
8 * @attention
9 *
10 * Copyright (c) 2026 STMicroelectronics.
11 * All rights reserved.
12 *
13 * This software is licensed under terms that can be found in the LICENSE file
14 * in the root directory of this software component.
15 * If no LICENSE file comes with this software, it is provided AS-IS.
16 *
17 ******************************************************************************
18 */
19/* USER CODE END Header */
20
21/* Define to prevent recursive inclusion -------------------------------------*/
22#ifndef __MAIN_H
23#define __MAIN_H
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
29/* Includes ------------------------------------------------------------------*/
30#include "stm32c0xx_hal.h"
31
32/* Private includes ----------------------------------------------------------*/
33/* USER CODE BEGIN Includes */
34
35/* USER CODE END Includes */
36
37/* Exported types ------------------------------------------------------------*/
38/* USER CODE BEGIN ET */
39
40/* USER CODE END ET */
41
42/* Exported constants --------------------------------------------------------*/
43/* USER CODE BEGIN EC */
44#define SYSTEM_BOOTLOADER_START_ADDR 0x1FFF0000
45#define GOTO_SYSTEM_BOOTLOADER_MARK 0xACCE55ED
46/* USER CODE END EC */
47
48/* Exported macro ------------------------------------------------------------*/
49/* USER CODE BEGIN EM */
50
51/* USER CODE END EM */
52
53/* Exported functions prototypes ---------------------------------------------*/
54void Error_Handler(void);
55
56/* USER CODE BEGIN EFP */
57
58/* USER CODE END EFP */
59
60/* Private defines -----------------------------------------------------------*/
61#define GPIO_INPUT_MODE_B3_Pin GPIO_PIN_9
62#define GPIO_INPUT_MODE_B3_GPIO_Port GPIOB
63#define GPIO_OUTPUT_LED_ON_Pin GPIO_PIN_14
64#define GPIO_OUTPUT_LED_ON_GPIO_Port GPIOC
65#define GPIO_OUTPUT_LED_ERROR_Pin GPIO_PIN_15
66#define GPIO_OUTPUT_LED_ERROR_GPIO_Port GPIOC
67#define GPIO_INPUT_LVP_Pin GPIO_PIN_0
68#define GPIO_INPUT_LVP_GPIO_Port GPIOA
69#define GPIO_INPUT_OVP_Pin GPIO_PIN_1
70#define GPIO_INPUT_OVP_GPIO_Port GPIOA
71#define ADC1_IN2_TEMP_SENSOR_Pin GPIO_PIN_2
72#define ADC1_IN2_TEMP_SENSOR_GPIO_Port GPIOA
73#define ADC1_IN3_U_IN_Pin GPIO_PIN_3
74#define ADC1_IN3_U_IN_GPIO_Port GPIOA
75#define ADC1_IN4_U_OUT_Pin GPIO_PIN_4
76#define ADC1_IN4_U_OUT_GPIO_Port GPIOA
77#define ADC1_IN5_RES1_Pin GPIO_PIN_5
78#define ADC1_IN5_RES1_GPIO_Port GPIOA
79#define FAN_TACHO_Pin GPIO_PIN_6
80#define FAN_TACHO_GPIO_Port GPIOA
81#define FAN_PWM_Pin GPIO_PIN_7
82#define FAN_PWM_GPIO_Port GPIOA
83#define GPIO_INPUT_BTN_ON_Pin GPIO_PIN_0
84#define GPIO_INPUT_BTN_ON_GPIO_Port GPIOB
85#define GPIO_INPUT_BTN_OFF_Pin GPIO_PIN_1
86#define GPIO_INPUT_BTN_OFF_GPIO_Port GPIOB
87#define GPIO_INPUT_FAULT_Pin GPIO_PIN_2
88#define GPIO_INPUT_FAULT_GPIO_Port GPIOB
89#define GPIO_OUTPUT_10V_EN_Pin GPIO_PIN_8
90#define GPIO_OUTPUT_10V_EN_GPIO_Port GPIOA
91#define GPIO_INPUT_BMS_Pin GPIO_PIN_6
92#define GPIO_INPUT_BMS_GPIO_Port GPIOC
93#define R1_Pin GPIO_PIN_12
94#define R1_GPIO_Port GPIOA
95#define R2_Pin GPIO_PIN_15
96#define R2_GPIO_Port GPIOA
97#define GPIO_OUTPUT_RELAIS_SET_Pin GPIO_PIN_3
98#define GPIO_OUTPUT_RELAIS_SET_GPIO_Port GPIOB
99#define GPIO_OUTPUT_RELAIS_RESET_Pin GPIO_PIN_4
100#define GPIO_OUTPUT_RELAIS_RESET_GPIO_Port GPIOB
101#define GPIO_OUTPUT_BUZZER_Pin GPIO_PIN_5
102#define GPIO_OUTPUT_BUZZER_GPIO_Port GPIOB
103#define GPIO_INPUT_MODE_B0_Pin GPIO_PIN_6
104#define GPIO_INPUT_MODE_B0_GPIO_Port GPIOB
105#define GPIO_INPUT_MODE_B1_Pin GPIO_PIN_7
106#define GPIO_INPUT_MODE_B1_GPIO_Port GPIOB
107#define GPIO_INPUT_MODE_B2_Pin GPIO_PIN_8
108#define GPIO_INPUT_MODE_B2_GPIO_Port GPIOB
109
110/* USER CODE BEGIN Private defines */
111#define COMMAND_STORE_CONFIG 1
112#define COMMAND_FULL_RESTORE 2
113#define COMMAND_FACTORY_RESTORE 3
114#define COMMAND_RESTORE_LAST_SAVED_VALUES 4
115#define COMMAND_RESTART 6
116#define COMMAND_STORE_WITH_SERIAL_NUMBER 1234
117#define COMMAND_GOTO_SYS_BOOTLOADER 5458
118
119
120#define VREF 3300
121#define BLINK_CODE_WARN_MANUAL 1
122#define BLINK_CODE_ERROR_OVP_LVP 2
123#define BLINK_CODE_ERROR_FAULT_INPUT 3
124#define BLINK_CODE_ERROR_VOLTAGE_DROP 4
125#define BLINK_CODE_ERROR_TEMP 5
126
127
128
129#define LED_RT_OFF_TIME 1000
130#define LED_RT_ON_TIME_WARN_MANUAL_MODE 200
131#define LED_RT_ON_TIME_WARN_FAULT_INPUT 200
132#define LED_RT_ON_TIME_WARN_OVP_AND_LVP_INPUT 200
133#define LED_RT_ON_TIME_WARN_VOLTAGE_DROP 200
134#define LED_RT_ON_TIME_WARN_TEMP 200
135
136#define LED_GN_OFF_TIME 1000
137#define LED_GN_ON_TIME_ON_MODE 200
138
139#define BUZZER_OFF_TIME 5000
140#define BUZZER_ON_TIME_CONFIRM 200
141#define BUZZER_ON_TIME_REJECT 500
142#define BUZZER_ON_TIME_ALARM_MANUAL_MODE 200
143
144/* USER CODE END Private defines */
145
146#ifdef __cplusplus
147}
148#endif
149
150#endif /* __MAIN_H */
Note: See TracBrowser for help on using the repository browser.