typedef enum
{
IOT_DEV_EXCEPTION , // 生產
IOT_DEV_MAINTAIN , // 測試
IOT_DEV_STOCK , // 入庫
IOT_DEV_IDLE , // 待機
IOT_DEV_IDLE_ALARM , // 低壓待機
IOT_DEV_IDLE_SURVIVE , // 尋車待機回報
IOT_DEV_WAIT_START , // 設備喚醒等待指令
IOT_DEV_MOVING , // 出租
IOT_DEV_PAUSE , // 出租暫停
IOT_DEV_MOVING_ALARM , // 低壓出租
IOT_DEV_INVALID // 設備報廢
} DEVICE_STATES;
//==========================================
// Device RTOS System status Run loop
//==========================================
void dev_main(void){
switch(_iot_state) {
case IOT_DEV_EXCEPTION:
// 生產模式
//printf("生產模式:連線測試 MQTT Server,不進入斷訊處理。\n");
break;
case IOT_DEV_MAINTAIN:
// 測試模式
//printf("測試模式:使用測試 PCBUUID,驗證相關功能。\n");
break;
case IOT_DEV_STOCK:
// 入庫模式
//printf("入庫模式:停止所有連線,MCU 進入深度休眠,手動喚醒。\n");
break;
case IOT_DEV_IDLE:
// 待機模式
//printf("待機模式:每 15 分鐘上報 4G PING 設備狀態及定位資訊。\n");
break;
case IOT_DEV_IDLE_ALARM:
// 低壓待機
// printf("低壓待機:降低 PING 頻率,每天上報兩次。\n");
break;
case IOT_DEV_IDLE_SURVIVE:
// 尋車待機回報
// printf("尋車待機回報:每三天上報一次,禁止出租操作。\n");
break;
case IOT_DEV_WAIT_START:
// 設備喚醒等待指令
//printf("設備喚醒:馬達移動時每 10 秒 PING,馬達停止時每 5 分鐘 PING。\n");
break;
case IOT_DEV_MOVING:
// 出租模式
//printf("出租模式:馬達移動每 10 秒 PING,停止時每 5 分鐘 PING。\n");
break;
case IOT_DEV_PAUSE:
// 出租暫停
//printf("出租暫停:回報臨時停車,監控電力狀態,判定強制待機。\n");
break;
case IOT_DEV_MOVING_ALARM:
// 低壓出租
//printf("低壓出租:回報低壓警告,監控電力狀態。\n");
break;
case IOT_DEV_INVALID:
// 設備報廢
//printf("設備報廢:停止連線運作,需由維修解除。\n");
break;
default:
// 未知狀態
//printf("未知狀態:無法處理。\n");
break;
}
}
沒有留言:
張貼留言