feat(debug): 新增 up 上传网关状态和 reg 重新注册命令
This commit is contained in:
@@ -100,10 +100,10 @@ const CatOneATCMD_m CatOneModeSetCmdArray[] = {
|
||||
//{
|
||||
// rt_err_t result;
|
||||
//
|
||||
// if(CatOne.Status != CAT_ONE_IDEL && CatOne.Status != CAT_ONE_WAIT_SEND)
|
||||
// if(CatOne.Cat1Status != CAT_ONE_IDEL && CatOne.Cat1Status != CAT_ONE_WAIT_SEND)
|
||||
// return CAT_ONE_RET_ERR;
|
||||
//
|
||||
// //CatOne.Status = CAT_ONE_RESET;
|
||||
// //CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
// result = rt_mq_send(CatOneRev_MQ, sData, sLen);
|
||||
// if(result != RT_EOK) {
|
||||
// CAT1_DBG_LOG("CatOne MQ Send ERR...\r\n");
|
||||
@@ -115,7 +115,7 @@ const CatOneATCMD_m CatOneModeSetCmdArray[] = {
|
||||
|
||||
void CatOneStop(void)
|
||||
{
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
}
|
||||
|
||||
void ETHStop(void)
|
||||
@@ -149,14 +149,14 @@ void CatOneGetIMEIAndSIM(char *Imei, char *Sim)
|
||||
//返回true-busy, false-Idle
|
||||
bool CatOneGetStatus(void)
|
||||
{
|
||||
if(CatOne.Status == CAT_ONE_IDEL)
|
||||
if(CatOne.Cat1Status == CAT_ONE_IDEL)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
|
||||
void CatOneReset(void)
|
||||
{
|
||||
CatOne.Status = CAT_ONE_RESET;
|
||||
CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
}
|
||||
|
||||
void CatTimeSync(char *Data)
|
||||
@@ -272,7 +272,7 @@ void CatOneAtCmdAnalyze(char *RxBuff)
|
||||
|
||||
case CAT_ONE_LIPOPEN:
|
||||
if(strstr(RxBuff, "OK") != NULL) {
|
||||
CatOne.Status = CatOne.NextStatus;
|
||||
CatOne.Cat1Status = CatOne.NextStatus;
|
||||
CatOne.CatOne1mSDelayCnt = 10 * 1000;
|
||||
return;
|
||||
}
|
||||
@@ -280,13 +280,13 @@ void CatOneAtCmdAnalyze(char *RxBuff)
|
||||
if(strstr(RxBuff, "LIPOPEN: 0,1") != NULL) {
|
||||
CAT1_DBG_LOG("Cat1 successfully to connect to the server.\r\n\r\n");
|
||||
CatOne.TcpConnFlag = true;
|
||||
CatOne.Status = CatOne.NextStatus;
|
||||
CatOne.Cat1Status = CatOne.NextStatus;
|
||||
rt_sem_release(CatOneRev_Sem);
|
||||
}
|
||||
else if(strstr(RxBuff, "LIPOPEN: 0,0") != NULL) {
|
||||
CAT1_DBG_LOG("Cat1 failed to connect to the server.\r\n\r\n");
|
||||
CatOne.TcpConnFlag = false;
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
}
|
||||
return;
|
||||
}
|
||||
@@ -338,7 +338,7 @@ void CatOneAtCmdAnalyze(char *RxBuff)
|
||||
if(strstr(p, "+LIPURC: 0,0") != NULL) {
|
||||
CAT1_DBG_LOG("TCP connection disconnected.\r\n\r\n");
|
||||
CatOne.TcpConnFlag = false;
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -354,7 +354,7 @@ void CatOneAtCmdAnalyze(char *RxBuff)
|
||||
else {
|
||||
return;
|
||||
}
|
||||
//CatOne.Status = CAT_ONE_CLOSE_TCP;
|
||||
//CatOne.Cat1Status = CAT_ONE_CLOSE_TCP;
|
||||
rt_sem_release(CatOneRev_Sem);//接收任务
|
||||
return;
|
||||
}
|
||||
@@ -363,7 +363,7 @@ void CatOneAtCmdAnalyze(char *RxBuff)
|
||||
|
||||
}
|
||||
if(CatOne.ATCmdRet == CAT_ONE_RET_OK) {
|
||||
CatOne.Status = CatOne.NextStatus;
|
||||
CatOne.Cat1Status = CatOne.NextStatus;
|
||||
if(CatOne.AtCmd == CAT_ONE_LIPSEND)
|
||||
CatOne.CatOne1mSDelayCnt = 5 * 1000;
|
||||
else
|
||||
@@ -396,7 +396,7 @@ void CatOneAtCmdSend(CatOneATCMD_m Cmd, uint32_t Dly, CatOneStatus_m NextStatus)
|
||||
EthRevTimeOutCnt = 0;
|
||||
EthOrCat1UartSend((uint8_t *)CatOne.CatOneSendBuff, strlen(CatOne.CatOneSendBuff));
|
||||
CatOne.CatOne1mSDelayCnt = Dly;
|
||||
CatOne.Status = CAT_ONE_WAIT_REV;
|
||||
CatOne.Cat1Status = CAT_ONE_WAIT_REV;
|
||||
CatOne.NextStatus = NextStatus;
|
||||
}
|
||||
|
||||
@@ -440,14 +440,14 @@ void CatOneLoopHandler(void)
|
||||
uint16_t ret;
|
||||
static uint8_t Cat1RevErrCnt = 0;
|
||||
|
||||
switch(CatOne.Status){
|
||||
switch(CatOne.Cat1Status){
|
||||
case CAT_ONE_IDEL:
|
||||
rt_thread_delay(1);
|
||||
if(CatOne.ResetDelayCnt > 0) {
|
||||
CatOne.ResetDelayCnt--;
|
||||
}
|
||||
else {
|
||||
CatOne.Status = CAT_ONE_RESET;
|
||||
CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -462,9 +462,9 @@ void CatOneLoopHandler(void)
|
||||
else { //3次错误,关机
|
||||
CAT1_DBG_LOG("Cat1 error, Close!\r\n");
|
||||
if(CatOne.AtCmd == CAT_ONE_LIPSEND)
|
||||
CatOne.Status = CAT_ONE_CLOSE_TCP;
|
||||
CatOne.Cat1Status = CAT_ONE_CLOSE_TCP;
|
||||
else
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -479,7 +479,7 @@ void CatOneLoopHandler(void)
|
||||
CatOneAtCmdSend(CatOneModeSetCmdArray[CatOne.AtCmdIdx], 1000, CAT_ONE_INIT);
|
||||
}
|
||||
else {
|
||||
CatOne.Status = CAT_ONE_TCP_CONN;
|
||||
CatOne.Cat1Status = CAT_ONE_TCP_CONN;
|
||||
CatOne.CatOne1mSDelayCnt = 0;
|
||||
CatOne.AtCmdIdx = 0;
|
||||
CatOne.AtCmd = CAT_ONE_AT_NULL;
|
||||
@@ -493,39 +493,39 @@ void CatOneLoopHandler(void)
|
||||
case CAT_ONE_WAIT_CONN:
|
||||
if(CatOne.TcpConnFlag) {
|
||||
if(CatOne.GateWay->SvrRegFlag == false)
|
||||
CatOne.Status = CAT_ONE_REG_SVR;
|
||||
CatOne.Cat1Status = CAT_ONE_REG_SVR;
|
||||
else
|
||||
CatOne.Status = CAT_ONE_WAIT_SEND;
|
||||
CatOne.Cat1Status = CAT_ONE_WAIT_SEND;
|
||||
}
|
||||
break;
|
||||
|
||||
case CAT_ONE_REG_SVR: //注册服务器
|
||||
ret = GateWayRegister(CatOneEthTxBuff);
|
||||
rt_mq_send(CatOne.GateWay->NetSendData_MQ, CatOneEthTxBuff, ret);
|
||||
CatOne.Status = CAT_ONE_WAIT_SEND;
|
||||
CatOne.Cat1Status = CAT_ONE_WAIT_SEND;
|
||||
break;
|
||||
|
||||
case CAT_ONE_WAIT_SEND:
|
||||
result = rt_mq_recv(CatOne.GateWay->NetSendData_MQ, Payload, CAT_ONE_REV_LEN_MAX, 1000);
|
||||
if(result == RT_EOK) {
|
||||
CatOneEthTxLen = NetCommOrgData(CatOne.GateWay, Payload, CatOneEthTxBuff);
|
||||
CatOne.Status = CAT_ONE_SEND_DATA;
|
||||
CatOne.Cat1Status = CAT_ONE_SEND_DATA;
|
||||
}
|
||||
else {
|
||||
if(CatOne.Status == CAT_ONE_RESET || CatOne.Status == CAT_ONE_OFF) //外部命令执行,状态改变
|
||||
if(CatOne.Cat1Status == CAT_ONE_RESET || CatOne.Cat1Status == CAT_ONE_OFF) //外部命令执行,状态改变
|
||||
return;
|
||||
if(!CatOne.TcpConnFlag) {
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
}
|
||||
else {
|
||||
CatSendErrCnt++;
|
||||
if(CatSendErrCnt > CAT1_ERR_RESET_DLY_MAX) {
|
||||
CatOne.Status = CAT_ONE_RESET;
|
||||
CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
CAT1_DBG_LOG("Cat1 has no data for a long time, Reset!\r\n");
|
||||
CatSendErrCnt = 0;
|
||||
break;
|
||||
}
|
||||
CatOne.Status = CAT_ONE_WAIT_SEND;
|
||||
CatOne.Cat1Status = CAT_ONE_WAIT_SEND;
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -534,7 +534,7 @@ void CatOneLoopHandler(void)
|
||||
CatOne.AtCmdResendCnt = 3;
|
||||
Cat1RevErrCnt++;
|
||||
if(Cat1RevErrCnt > 10) {
|
||||
CatOne.Status = CAT_ONE_RESET;
|
||||
CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
CAT1_DBG_LOG("Cat1 has no receive data for a long time, Reset!\r\n");
|
||||
Cat1RevErrCnt = 0;
|
||||
break;
|
||||
@@ -554,9 +554,9 @@ void CatOneLoopHandler(void)
|
||||
Cat1RevErrCnt = 0;
|
||||
}
|
||||
if(CatOne.GateWay->SvrRegFlag == false) //设备没注册,关闭4G,等待下一次重新注册
|
||||
CatOne.Status = CAT_ONE_OFF;
|
||||
CatOne.Cat1Status = CAT_ONE_OFF;
|
||||
else
|
||||
CatOne.Status = CAT_ONE_WAIT_SEND;
|
||||
CatOne.Cat1Status = CAT_ONE_WAIT_SEND;
|
||||
break;
|
||||
|
||||
case CAT_ONE_CLOSE_TCP:
|
||||
@@ -572,7 +572,7 @@ void CatOneLoopHandler(void)
|
||||
CAT1_PWR_KEY_SET();
|
||||
CatSendErrCnt = 0;
|
||||
CAT1_DBG_LOG("Cat1 Power Off!\r\n");
|
||||
CatOne.Status = CAT_ONE_IDEL;
|
||||
CatOne.Cat1Status = CAT_ONE_IDEL;
|
||||
CatOne.ResetDelayCnt = CATONE_RESET_DELAY_TIME_MAX;
|
||||
break;
|
||||
|
||||
@@ -587,7 +587,7 @@ void CatOneLoopHandler(void)
|
||||
CAT1_PWR_KEY_CLR();
|
||||
rt_thread_delay(1000);
|
||||
CAT1_PWR_KEY_SET();
|
||||
CatOne.Status = CAT_ONE_INIT;
|
||||
CatOne.Cat1Status = CAT_ONE_INIT;
|
||||
CatOne.AtCmdIdx = 0;
|
||||
rt_thread_delay(1000);
|
||||
CatOne.GateWay->BatteryReadDlyCnt = 60;
|
||||
@@ -750,7 +750,7 @@ bool CatOneEthSendQueue(uint8_t *sData, uint16_t sLen)
|
||||
static void CatOneInit(GateWayPara GateWay)
|
||||
{
|
||||
memset(&CatOne, 0x00, sizeof(CatOne_t));
|
||||
CatOne.Status = CAT_ONE_RESET;
|
||||
CatOne.Cat1Status = CAT_ONE_RESET;
|
||||
CatOne.GateWay = GateWay;
|
||||
CatOne.CatOneRevCallBack = GateWay->SvrRevCallBack;
|
||||
}
|
||||
@@ -878,3 +878,13 @@ void CatReadImeiOrSim(char *Imei, char *Sim)
|
||||
Sim[20] = 0x00;
|
||||
}
|
||||
}
|
||||
|
||||
void CatOneTriggerRegister(void)
|
||||
{
|
||||
CatOne.Cat1Status = CAT_ONE_REG_SVR;
|
||||
}
|
||||
|
||||
void ETHTriggerRegister(void)
|
||||
{
|
||||
CatOne.EthStatus = ETH_REG_SVR;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user