cmake-demo/App/Inc/sta/config.hpp
2025-03-25 15:28:07 +01:00

127 lines
2.9 KiB
C++

/*
* Configuration file for STA-Core.
*
* Created on: Aug 30, 2023
* Author: Dario
*/
#ifndef INC_STA_CONFIG_HPP_
#define INC_STA_CONFIG_HPP_
#define STA_STM32_ASEAG
#include <sta/devices/stm32/mcu/STM32F407xx.hpp>
// Doesn't really do too much right now. Has to be added for successful compilation.
#define STA_PRINTF_USE_STDLIB
#define STA_MCU_LITTLE_ENDIAN
#define STA_PLATFORM_STM32
// Enable debug serial output and assertions.
//#define STA_ASSERT_FORCE
#define STA_DEBUGGING_ENABLED
// Activate the timer for microsecond delays.
// #define STA_STM32_DELAY_ENABLE
// #define STA_STM32_DELAY_US_TIM htim1
// Settings for the rtos-utils
#define STA_RTOS_SYSTEM_EVENTS_ENABLE
// #define STA_RTOS_SYSTEM_WATCHDOG_ENABLE
#define STA_TACOS_CAN_BUS_ENABLED
#define STA_CAN_BUS_ENABLE
// Uses the default configuration for TACOS.
#include <sta/tacos/configs/default.hpp>
#include <states.hpp>
#include <can_ids.hpp>
#include <modules.hpp>
// Pin Definitions:
// Arming pins
// Hatch arming
#define ARMING_GROUPA GPIOE
#define ARMING_PIN_A GPIO_PIN_15
#define ARMING_GROUPB GPIOG
#define ARMING_PIN_B GPIO_PIN_0
// Main arming
#define ARMING_GROUPC GPIOA
#define ARMING_PIN_C GPIO_PIN_6
#define ARMING_GROUPD GPIOE
#define ARMING_PIN_D GPIO_PIN_0
// Main dereefing
#define ARMING_GROUPE GPIOB
#define ARMING_PIN_E GPIO_PIN_6
#define ARMING_GROUPF GPIOG
#define ARMING_PIN_F GPIO_PIN_11
// Shorting pins
// Hatch shorting
#define SHORTING_GROUPA GPIOE
#define SHORTING_PIN_A GPIO_PIN_13
#define SHORTING_GROUPB GPIOC
#define SHORTING_PIN_B GPIO_PIN_5
// Main shorting
#define SHORTING_GROUPC GPIOA
#define SHORTING_PIN_C GPIO_PIN_4
#define SHORTING_GROUPD GPIOB
#define SHORTING_PIN_D GPIO_PIN_8
// Main dereefing
#define SHORTING_GROUPE GPIOB
#define SHORTING_PIN_E GPIO_PIN_4
#define SHORTING_GROUPF GPIOG
#define SHORTING_PIN_F GPIO_PIN_9
// Fire pins
// Hatch fire
#define FIRE_DEREEFING_GROUP1 GPIOB
#define FIRE_DEREEFING_PIN_1 GPIO_PIN_10
#define FIRE_DEREEFING_GROUP2 GPIOE
#define FIRE_DEREEFING_PIN_2 GPIO_PIN_7
// Main fire
#define FIRE_MAIN_GROUP1 GPIOA
#define FIRE_MAIN_PIN_1 GPIO_PIN_7
#define FIRE_MAIN_GROUP2 GPIOE
#define FIRE_MAIN_PIN_2 GPIO_PIN_1
// Main dereefing
#define FIRE_HATCH_GROUP1 GPIOB
#define FIRE_HATCH_PIN_1 GPIO_PIN_7
#define FIRE_HATCH_GROUP2 GPIOG
#define FIRE_HATCH_PIN_2 GPIO_PIN_12
// Sense fire pins
#define SENSE_FIRE_GROUP1 GPIOE
#define SENSE_FIRE_PIN_1 GPIO_PIN_14
#define SENSE_FIRE_GROUP2 GPIOF
#define SENSE_FIRE_PIN_2 GPIO_PIN_15
#define SENSE_FIRE_GROUP3 GPIOA
#define SENSE_FIRE_PIN_3 GPIO_PIN_5
#define SENSE_FIRE_GROUP4 GPIOB
#define SENSE_FIRE_PIN_4 GPIO_PIN_9
#define SENSE_FIRE_GROUP5 GPIOB
#define SENSE_FIRE_PIN_5 GPIO_PIN_5
#define SENSE_FIRE_GROUP6 GPIOG
#define SENSE_FIRE_PIN_6 GPIO_PIN_10
#endif /* INC_STA_CONFIG_HPP_ */