g0b1vetx-board/Application/os-app.h
2584532475@qq.com 0f40dd8b17 网络自适应
2024-09-10 11:51:07 +08:00

192 lines
5.7 KiB
C

#ifndef _OS_APP_H
#define _OS_APP_H
#include "stdint.h"
#include <rtthread.h>
#include <time.h>
// OS-APP 线程
#define OS_APP_THREAD_PRIORITY 25 // 优先级
#define OS_APP_THREAD_TIMESLICE 5
// 阀门控制线程
#define SLUICE_THREAD_PRIORITY 24 // 优先级
#define SLUICE_THREAD_TIMESLICE 5
// 4851 主机线程
#define U4851M_THREAD_PRIORITY 23 // 优先级
#define U4851M_THREAD_TIMESLICE 5
// 4852 主机线程
#define U4852M_THREAD_PRIORITY 22 // 优先级
#define U4852M_THREAD_TIMESLICE 5
// 4853 主机线程
#define U4853M_THREAD_PRIORITY 21 // 优先级
#define U4853M_THREAD_TIMESLICE 5
// 网络线程
#define NET_APP_THREAD_PRIORITY 20 // 优先级
#define NET_APP_THREAD_TIMESLICE 5
// modbus 从机 用于实现modbus 程序
#define PROBUS_APP_THREAD_PRIORITY 19 // 优先级
#define PROBUS_APP_THREAD_TIMESLICE 5
// UI线程
#define DIS_THREAD_PRIORITY 18 // 优先级
#define DIS_THREAD_TIMESLICE 5
// DTU线程
#define DTU_THREAD_PRIORITY 17 // 优先级
#define DTU_THREAD_TIMESLICE 5
// DTU线程
#define DTU2_THREAD_PRIORITY 16 // 优先级
#define DTU2_THREAD_TIMESLICE 5
// MQTT线程
#define MQTT_THREAD_PRIORITY 15 // 优先级
#define MQTT_THREAD_TIMESLICE 5
// CAT1线程
#define CAT1_THREAD_PRIORITY 14 // 优先级
#define CAT1_THREAD_TIMESLICE 5
// CAT1线程
#define ZS001_THREAD_PRIORITY 14 // 优先级
#define ZS001_THREAD_TIMESLICE 5
// CAT1线程
#define MJETH1_THREAD_PRIORITY 14 // 优先级
#define MJETH1_THREAD_TIMESLICE 5
// UI线程
#define CFG_THREAD_PRIORITY 13 // 优先级
#define CFG_THREAD_TIMESLICE 5
// 升级
#define UPGRADE_THREAD_PRIORITY 12 // 优先级
#define UPGRADE_THREAD_TIMESLICE 5
// RTC
#define RTC_THREAD_PRIORITY 11 // 优先级
#define RTC_THREAD_TIMESLICE 5
int ThreadNewOsApp (void);
void SluiceThreadStart (void);
void U4851ThreadStart (void);
void U4852ThreadStart (void);
void U4853ThreadStart (void);
void NET_APPThreadStart (void);
void DisThreadStart (void);
void DTUThreadStart (void);
void PROBUS_APPThreadStart (void);//
void CAT1ThreadStart (void);
void ZS001ThreadStart (void);
void MJEth1ThreadStart (void);
void UpgradeThreadStart (void);
void RtcThreadStart (void);
void OsSendMail(rt_mailbox_t box,uint16_t type,uint16_t index);
#define EVENT_CTRL_SET_OPT_SLU (1U<< 0) // 发送开度控制到提闸线程
#define EVENT_CTRL_SET_STP_SLU (1U<< 1) // 发送停止控制到提闸线程
#define EVENT_CTRL_SET_SUP_SLU (1U<< 2) // 发送上升控制到提闸线程
#define EVENT_CTRL_SET_SDW_SLU (1U<< 3) // 发送下降控制到提闸线程
#define EVENT_CTRL_SET_OPT_CTT (1U<< 4) // 发送开度控制到控制层
#define EVENT_CTRL_SET_STP_CTT (1U<< 5) // 发送停止控制到控制层
#define EVENT_CTRL_SET_SUP_CTT (1U<< 6) // 发送上升控制到控制层
#define EVENT_CTRL_SET_SDW_CTT (1U<< 7) // 发送下降控制到控制层
#define EVENT_CTRL_SET_UNLOCK (1U<< 8) // 开锁
#define EVENT_UART_4851_RX (1U << 0)
#define EVENT_UART_4852_RX (1U << 1)
#define EVENT_UART_4853_RX (1U << 2)
#define EVENT_UART_VIEW_RX (1U << 3)
#define EVENT_UART_DEBUG_RX (1U << 4)
#define EVENT_UART_GSM_RX (1U << 5)
#define EVENT_UART_ETH1_RX (1U << 6)
#define EVENT_UART_ETH2_RX (1U << 7)
#define EVENT_UART_LORA_RX (1U << 8)
#define EVENT_UART_CONFIG_RX (1U << 9)
#define EVENT_TRIG_NETMODE_TX1 (1U << 0) // 通过网络模块驱动发送数据
#define EVENT_TRIG_NETMODE_RX1 (1U << 1)
#define EVENT_TRIG_NETMODE_RST (1U << 2) // 重启网路模块
#define EVENT_TRIG_MQTT_SUB (1U << 3) // 订阅成功
#define EVENT_TRIG_MQTT_RST (1U << 4) // 重启网路模块
#define EVENT_TRIG_MQTT_TX (1U << 5) // MQTT 发送数据
#define EVENT_TRIG_COMM_RX (1U << 6) // MQTT 接受到数据
#define EVENT_TRIG_COMM_RST (1U << 7) // MQTT 发送数据
#define EVENT_TRIG_UPGRADE_RX (1U << 8) // MQTT 接受到数据
#define EVENT_TRIG_NETMODE_TX2 (1U << 9) // 通过网络模块向通道2发送数据
#define EVENT_TRIG_CAT1_SHUT (1U << 10) // 通过4G 模块关机
#define EVENT_TRIG_ETH_SHUT (1U << 11) // 通过Eth 模块关机
#define MAIL_COMM_HEART 0
#define MAIL_COMM_REGIST 1
#define MAIL_COMM_STAND 2
#define MAIL_COMM_SLUICE 3
#define MAIL_COMM_READPARA 4 // 读取参数
#define MAIL_COMM_UPACK 5 // 升级的ACK
#define MAIL_COMM_SLACK 6 // 提闸的ACK
#define MAIL_COMM_WRACK 7 // 修改参数ACK
#define MAIL_COMM_FACACK 8 // 出厂设置ACK
#define MAIL_SLUICE_OPT 0
#define MAIL_SLUICE_STP 1
#define MAIL_SLUICE_SUP 2
#define MAIL_SLUICE_SDW 3
#define MAIL_CT_OPT 0 // 执行
#define MAIL_CT_SUP 1 // 上升
#define MAIL_CT_SDW 2 // 下降
#define MAIL_CT_STP 3 // 停止
#define MAIL_AUDIO_WEL 0 // 执行
#define MAIL_AUDIO_LOAD 1 // 下降
#define MAIL_AUDIO_OPEN 2 // 上升
#define MAIL_AUDIO_UP 3 // 停止
#define MAIL_AUDIO_DOWN 4 // 停止
#define MAIL_AUDIO_STOP 5 // 停止
#define MAIL_AUDIO_LOGIN_SUC 6 // 停止
#define MAIL_AUDIO_LOGIN_FIL 7 // 停止
#define MAIL_AUDIO_LOGIN_ADM 8 // 停止
#define MAIL_VIEW_LOGIN 1 // 登录成功 需要跳转页面
#define MAIL_VIEW_FLUSH 2 // 刷新界面显示
#define MAIL_VIEW_READSL 3 // 读取闸门开度
#define MAIL_VIEW_COD_STE 4 // 更新编码器状态
#define MAIL_VIEW_NET_STE 5 // 更新网络状态
#define MAIL_VIEW_SLU_STE 6 // 更新闸门状态
#define MAIL_VIEW_AUDIO 7 // 播放语音
extern rt_event_t gCtrlEvents;
extern rt_event_t gUartEvents;
extern rt_event_t gUIEvents; // 界面显示事件
extern rt_event_t gTrigEvents; // 界面显示事件
extern rt_event_t gCommEvents;
extern rt_mailbox_t gTCommMail;
extern rt_mailbox_t gCtrlMail;
extern rt_mailbox_t gSluiceMail;
extern rt_mailbox_t gViewMail;
#endif