PER Firmware
Loading...
Searching...
No Matches
main.c File Reference

"Main Module" node source code More...

#include "main.h"
#include "common/amk/amk.h"
#include "can_library/faults_common.h"
#include "can_library/generated/MAIN_MODULE.h"
#include "common/common_defs/common_defs.h"
#include "common/freertos/freertos.h"
#include "common/phal/can.h"
#include "common/phal/gpio.h"
#include "common/phal/rcc.h"
#include "common/heartbeat/heartbeat.h"
#include "common/utils/countof.h"
#include "common/watchdog/watchdog.h"
#include "vehicle_init.h"
#include "vehicle_fsm.h"
#include "sdc.h"
#include "telemetry.h"

Functions

void HardFault_Handler (void)
 
 DEFINE_CAN_TASKS ()
 
 DEFINE_TASK (vehicle_fsm_periodic, VEHICLE_FSM_PERIOD_MS, osPriorityNormal, STACK_2048)
 
 DEFINE_TASK (fault_library_periodic, MAIN_MODULE_FAULT_SYNC_PERIOD_MS, osPriorityNormal, STACK_1024)
 
 DEFINE_TASK (SDC_task_periodic, SDC_TASK_PERIOD_MS, osPriorityNormal, STACK_512)
 
 DEFINE_TASK (report_telemetry_50hz, TELEMETRY_50HZ_PERIOD_MS, osPriorityLow, STACK_512)
 
 DEFINE_TASK (report_telemetry_1hz, TELEMETRY_1HZ_PERIOD_MS, osPriorityLow, STACK_512)
 
 DEFINE_TASK (report_telemetry_02hz, TELEMETRY_02HZ_PERIOD_MS, osPriorityLow, STACK_512)
 
 DEFINE_WATCHDOG_TASK ()
 
 DEFINE_HEARTBEAT_TASK (nullptr)
 
int main (void)
 

Variables

GPIOInitConfig_t gpio_config []
 
ClockRateConfig_t clock_config
 
uint32_t APB1ClockRateHz
 
uint32_t APB2ClockRateHz
 
uint32_t AHBClockRateHz
 
uint32_t PLLClockRateHz
 

Detailed Description

"Main Module" node source code

Author
Irving Wang (irvin.nosp@m.gw@p.nosp@m.urdue.nosp@m..edu)

Variable Documentation

◆ clock_config

ClockRateConfig_t clock_config
Initial value:
= {
.clock_source = CLOCK_SOURCE_HSE,
.use_pll = false,
.system_clock_target_hz = TargetCoreClockrateHz,
.ahb_clock_target_hz = (TargetCoreClockrateHz / 1),
.apb1_clock_target_hz = (TargetCoreClockrateHz / (1)),
.apb2_clock_target_hz = (TargetCoreClockrateHz / (1)),
}