lark1fq/ate/main.c
2025-10-06 18:02:51 +08:00

56 lines
1.0 KiB
C
Executable File

#include "led.h"
#include "button.h"
#include "heat.h"
#include "ltc1867.h"
#include "modbus.h"
#include "ltc2640.h"
#include "calc.h"
#include "sd.h"
#include "stm32f4xx_rcc.h"
uint32_t system_tick_cnt;
void system_tick_init(void)
{
RCC_ClocksTypeDef rcc_clocks;
system_tick_cnt = 0;
RCC_GetClocksFreq(&rcc_clocks);
SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK);
SysTick_Config(rcc_clocks.HCLK_Frequency / 1000);
}
void system_init(void)
{
led_init(LED1 | LED2);
button_init();
heat_init();
ltc1867_init();
modbus_init();
system_tick_init();
ltc2640_init();
}
int main(void)
{
system_init();
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);
SCB->VTOR = 0x08020000;
__enable_irq();
while (1) {
modbus_loop();
led_loop();
button_loop();
heat_loop();
ltc2640_loop();
calc_loop();
sd_loop();
}
return 0;
}
void SysTick_Handler(void)
{
system_tick_cnt++;
}