146 lines
2.9 KiB
C
146 lines
2.9 KiB
C
#include "app.h"
|
|
#include "os_timer.h"
|
|
#include "stdio.h"
|
|
#include "string.h"
|
|
|
|
#include "bsp_Uart.h"
|
|
#include "bsp_Wdg.h"
|
|
#include "bsp_Led.h"
|
|
#include "bsp_74HC4067.h"
|
|
#include "bsp_Flash.h"
|
|
#include "tjc_usart_hmi.h"
|
|
|
|
#include "proto_modbus_master_tdlas.h"
|
|
#include "proto_modbus_slave_ex.h"
|
|
|
|
const char *HwVersion = "V1.0";
|
|
char SwVersion[24] = "V0.001.0";
|
|
void TASK_Idle(void);
|
|
void Task_10ms(void);
|
|
void Task_50ms(void);
|
|
void Task_100ms(void);
|
|
void Task_200ms(void);
|
|
void Task_500ms(void);
|
|
void Task_1s(void);
|
|
void Task_2s(void);
|
|
|
|
/******************************************
|
|
* 函数: AppInit
|
|
* 功能: 初始化
|
|
* 参数: 无
|
|
* 返回: 无
|
|
* 描述: 无
|
|
******************************************/
|
|
void App_Init(void)
|
|
{
|
|
Usr_Flash.Init();
|
|
|
|
COM_Uart1.Init(&COM_Uart1);
|
|
COM_Uart2.Init(&COM_Uart2);
|
|
COM_Uart4.Init(&COM_Uart4);
|
|
Led.Init();
|
|
UartCH_Config.init();
|
|
|
|
|
|
|
|
tdlas.init();
|
|
modbus_slave_ex.init();
|
|
TJC_Init(&COM_Uart2);
|
|
initRingBuffer();
|
|
char init_msg[] = "系统初始化...\r\n";
|
|
HAL_UART_Transmit(COM_Uart2.Uart, (uint8_t*)init_msg, strlen(init_msg), 100);
|
|
//Wdg.Init();
|
|
}
|
|
|
|
/******************************************
|
|
* 函数: App_Task
|
|
* 功能: 分时复用
|
|
* 参数: 无
|
|
* 返回: 无
|
|
* 描述: 主循环中调用
|
|
******************************************/
|
|
void App_Task(void)
|
|
{
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_10ms, osTime_MSecTick, 10))
|
|
{
|
|
OsTimeTick_10ms = osTime_MSecTick;
|
|
Task_10ms();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_50ms, osTime_MSecTick, 50))
|
|
{
|
|
OsTimeTick_50ms = osTime_MSecTick;
|
|
Task_50ms();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_100ms, osTime_MSecTick, 100))
|
|
{
|
|
OsTimeTick_100ms = osTime_MSecTick;
|
|
Task_100ms();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_200ms, osTime_MSecTick, 200))
|
|
{
|
|
OsTimeTick_200ms = osTime_MSecTick;
|
|
Task_200ms();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_500ms, osTime_MSecTick, 500))
|
|
{
|
|
OsTimeTick_500ms = osTime_MSecTick;
|
|
Task_500ms();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_1s, osTime_MSecTick, 1000))
|
|
{
|
|
OsTimeTick_1s = osTime_MSecTick;
|
|
Task_1s();
|
|
}
|
|
if (TIME_TRUE == OsTimer_CheckTimeOut(OsTimeTick_2s, osTime_MSecTick, 2000))
|
|
{
|
|
OsTimeTick_2s = osTime_MSecTick;
|
|
Task_2s();
|
|
}
|
|
TASK_Idle();
|
|
}
|
|
/*空闲执行的函数*/
|
|
void TASK_Idle(void)
|
|
{
|
|
COM_Uart1.Rx_Task(&COM_Uart1);
|
|
COM_Uart2.Rx_Task(&COM_Uart2);
|
|
COM_Uart4.Rx_Task(&COM_Uart4);
|
|
}
|
|
|
|
void Task_10ms(void)
|
|
{
|
|
}
|
|
|
|
void Task_50ms(void)
|
|
{
|
|
// tdlas.tx_task();
|
|
}
|
|
|
|
void Task_100ms(void)
|
|
{
|
|
// tdlas.tx_task();
|
|
}
|
|
|
|
void Task_200ms(void)
|
|
{
|
|
|
|
}
|
|
|
|
void Task_500ms(void)
|
|
{
|
|
// UartCH_Config.ch_set(ch);
|
|
// tdlas.tx_task();
|
|
Led.Flash();
|
|
}
|
|
|
|
|
|
void Task_1s(void)
|
|
{
|
|
|
|
}
|
|
|
|
void Task_2s(void)
|
|
{
|
|
|
|
}
|
|
|