diff --git a/Project/GateWay/MDK/GateWay.uvoptx b/Project/GateWay/MDK/GateWay.uvoptx index 83ea766..61c1a8e 100644 --- a/Project/GateWay/MDK/GateWay.uvoptx +++ b/Project/GateWay/MDK/GateWay.uvoptx @@ -428,40 +428,7 @@ - - - 0 - 0 - 643 - 1 -
55060
- 0 - 0 - 0 - 0 - 0 - 1 - ..\source\User\Src\CatOneTask.c - - \\GateWay\../source/User/Src/CatOneTask.c\643 -
- - 1 - 0 - 569 - 1 -
54386
- 0 - 0 - 0 - 0 - 0 - 1 - ..\source\User\Src\CatOneTask.c - - \\GateWay\../source/User/Src/CatOneTask.c\569 -
-
+ 0 @@ -503,6 +470,11 @@ 1 CatOne.AtCmd + + 8 + 1 + start,0x0A + diff --git a/Project/GateWay/source/User/Src/CatOneTask.c b/Project/GateWay/source/User/Src/CatOneTask.c index ed285ef..4b29acf 100644 --- a/Project/GateWay/source/User/Src/CatOneTask.c +++ b/Project/GateWay/source/User/Src/CatOneTask.c @@ -543,6 +543,7 @@ void CatOneLoopHandler(void) case CAT_ONE_DUCH_MODE: Cat1DuchReady = true; + uint32_t runMs = 0; while(ChannelIsActive(CatOne.GateWay->ConfigPara, CH_CAT1)) { if(duchRd != duchWr) { uint16_t avail = (duchWr - duchRd) & 0x1FFF; @@ -550,6 +551,7 @@ void CatOneLoopHandler(void) sprintf(CatOne.CatOneSendBuff, "AT+QISEND=0,%d\r\n", n); DebugOrCat1UartSend((uint8_t *)CatOne.CatOneSendBuff, strlen(CatOne.CatOneSendBuff)); rt_thread_delay(200); + runMs += 200; if(duchRd + n <= 8192) { DebugOrCat1UartSend((uint8_t *)&duchRing[duchRd], n); } else { @@ -559,13 +561,19 @@ void CatOneLoopHandler(void) } DebugOrCat1UartSend((uint8_t *)"\x1A", 1); rt_thread_delay(500); + runMs += 500; duchRd = (duchRd + n) & 0x1FFF; } else { rt_thread_delay(50); + runMs += 50; + } + if(runMs >= 1800000) { + CatOne.Cat1Status = CAT_ONE_INIT; + CatOne.AtCmdIdx = 0; + break; } } Cat1DuchReady = false; - CatOne.Cat1Status = CAT_ONE_IDEL; break; case CAT_ONE_OFF: