You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

182 lines
3.6 KiB

#include "main.h"
void L0_main_init(void)
{
Lc_delay_ms(200);
//板卡初始化
L0_board_config();
//串口0初始化
L0_uart0_buf_init();
//串口2初始化
L0_uart2_buf_init();
//串口3初始化
L0_uart3_buf_init();
//Lc_delay_ms(100);
L1_tick_init();
// P53口初始化 推挽输出
L0_PW_3V3_INIT();
// 控制3v3输出(OID,WIFI)
L0_PW_3V3_ON();
//开启全局中断
EA = 1;
#if 0
L1_oid_init();
printf(" ok\r\n");
while(9)
{L1_Oid_readoid();}
#endif
//系统时钟初始化
// 定时器初始化
L0_timer0_Init();
//G初始化
L3_param_init();
//R初始化
L3_reg_init();
//485初始化
L2_485_init();
//游戏任务初始化
L3_task_game_init();
//寄存器监听任务初始化
//L3_task_reglisten_init();
//w600任务初始化
// L3_task_gm35_flow_init(W600_ST);
//按键任务初始化
L0_key_init();
//笔头任务初始化
L1_oid_init();
//语音模块初始化
// L3_task_speech_init();
//tcp轮询任务初始化
L3_task_tcp_init();
L3_task_tcp_control_init();
}
//===============================================
//主函数
//===============================================
void main(void)
{
int i;
u8 voice_30[6] = {0x7E,0x04,0xAE,0x1E,0xD0,0xEF};
//初始化
L0_main_init();
//获取mcu id
L0_id_get_rom(G.mcu_id);
L0_uart0_sendstr("MCU_ID = ");
L0_uart0_0d0a();
L0_uart0_sendArrayHex(G.mcu_id,7);
L0_uart0_0d0a();
//打印程序版本信息
L0_uart0_sendArray("v1.0",4);
L0_uart0_0d0a();
Lc_delay_ms(3000);
L0_uart3_sendArray((U8 *)&voice_30,6);
Lc_delay_ms(1000);
L0_uart3_sendArray((U8 *)&audio_up,9);
while(1)
{
L1_Oid_readoid();
if(1 == s_nos_tick.t1s_heartbeat)//1s
{
s_nos_tick.t1s_heartbeat = 0;//置0清空
D_print_heartbeat()
L0_uart0_uc('.');
}
#if 0
// 串口2的 接收数据 测试
// if(ts_uart[uNum2].r.ok == 1)
// {
// ts_uart[uNum2].r.ok = 0;
// L0_uart0_sendArray(ts_uart[uNum2].r.buf, D_recv2_max);
// }
// 串口3的 接收数据 测试
if(ts_uart[uNum3].r.ok == 1)
{
ts_uart[uNum3].r.ok = 0;
L0_uart0_uc('@');
L0_uart0_sendArray(ts_uart[uNum3].r.buf, D_recv3_max);
}
// if(L3_tick_interval(100L))/////10ms
// {L2_tick_stamp();
// D_print_heartbeat_close();
/// L1_as_readA(0);//读取倾角传感器数据
/// Lc_buf_copy_uc(s_uart1_rec.buf,s_as[0].d,8);
// s_uart1_rec.buf= 传感器数据
/// ff 08 xh xl yh yl zh zl
/// s_uart1_rec.ok =1;
}
/// L2_sd_save();
#endif
/////////////////////////////////////////
#if 0
if(s_uart0_rec.ok)
{
//// buf 0 1 2 3 4 5 6 7
//// FA 0D 36 20 10 55 05 06
s_uart0_rec.ok = 0;
L1_uart0_uchexArray(s_uart0_rec.buf,s_uart0_rec.num);
switch(s_uart0_rec.buf[1])
{
case 0x0d:
// L1_sd_debug(&s_uart0_rec.buf[2]);
break;
case 0x00:
L1_oid_debug(&s_uart0_rec.buf[2]);
break;
default:
break;
}
}
// 7E 04 AE 1E XX EF
#endif
// 游戏处理
L3_task_game_handler(&_s_task_game);
//笔头数据采集
L3_task_oid_handle(&ts_task_oid);
//WIFI
// L3_uart2_exp_protocol(&s_uart2_at);
L2_task_gm35_flow_handle(&s_task_gm35_flow);
//寄存器值监控
L3_task_reglisten_handle(&s_task_reglisten);
//输出,响应485协议
//L3_task_modbus_handler(&s_uart0_rec);
//语音模块
L3_task_speech_handle(&ts_speech);
//按键处理
L3_task_key_handle(&s_task_key_handle);
//L3_task_modbus_handler2(&s_uart2_rec);
#if 1
//tcp发送
// L3_task_tcp_handle(&ts_tcp);
//tcp master->slaver发送逻辑控制
// L3_task_tcp_control_handle(&ts_tcp_control);
#endif
}
}
//end main