projects
/
mirrors
/
NG455.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
4c42d1a
)
1.优化ota升级逻辑
master
author
d15521469561
<1731678236@qq.com>
Thu, 18 Jun 2026 09:57:52 +0000
(17:57 +0800)
committer
d15521469561
<1731678236@qq.com>
Thu, 18 Jun 2026 09:57:52 +0000
(17:57 +0800)
App/src/iap.c
patch
|
blob
|
history
App/src/iot.c
patch
|
blob
|
history
diff --git
a/App/src/iap.c
b/App/src/iap.c
index
ce05080
..
a5cc3a4
100644
(file)
--- a/
App/src/iap.c
+++ b/
App/src/iap.c
@@
-10,7
+10,9
@@
IAP_CMD_REPLY_T iap_cmd;
IAP_CMD_REPLY_T iap_reply;
IAP_CMD_REPLY_T iap_cmd;
IAP_CMD_REPLY_T iap_reply;
-uint8_t iap_timeout_cnt = 0;//Ä£×éÉý¼¶Ö÷¿ØUSB²»ÔÊÐíÉý¼¶Ö÷¿Ø
+uint8_t iap_app_upgrae_mcu_cnt = 0;//APPÉý¼¶Ö÷¿Ø USB²»ÔÊÐíÉý¼¶Ö÷¿Ø
+
+uint8_t iap_usb_upgrae_mcu_cnt = 0;//USBÉý¼¶Ö÷¿Ø ²»ÔÊÐíÄ£×éÉý¼¶Ö÷¿Ø
uint8_t iap_end_flag = 0;
uint8_t iap_end_flag = 0;
@@
-131,7
+133,7
@@
void Iap_Process(uint8_t* data, uint8_t len)
memcpy(iap_cmd.other.buf, data, len);
memcpy(iap_reply.other.buf, iap_cmd.other.buf, 3);
iap_reply.cmd.status = REPLY_STATUS_NO_CMD;
memcpy(iap_cmd.other.buf, data, len);
memcpy(iap_reply.other.buf, iap_cmd.other.buf, 3);
iap_reply.cmd.status = REPLY_STATUS_NO_CMD;
- if(iap_cmd.cmd.cmd1 != CMD1_IAP_PANEL || iap_
timeout
_cnt > 0)
+ if(iap_cmd.cmd.cmd1 != CMD1_IAP_PANEL || iap_
app_upgrae_mcu
_cnt > 0)
{
return;
}
{
return;
}
@@
-139,6
+141,7
@@
void Iap_Process(uint8_t* data, uint8_t len)
if(iap_cmd.cmd.cmd2 == CMD2_IAP_FETCH || iap_cmd.cmd.cmd2 == CMD2_IAP_CERTIFICATE || iap_cmd.cmd.cmd2 == CMD2_IAP_END || iap_auth == 1)
{
// ·ÖÎöÃüÁîÂë
if(iap_cmd.cmd.cmd2 == CMD2_IAP_FETCH || iap_cmd.cmd.cmd2 == CMD2_IAP_CERTIFICATE || iap_cmd.cmd.cmd2 == CMD2_IAP_END || iap_auth == 1)
{
// ·ÖÎöÃüÁîÂë
+ iap_usb_upgrae_mcu_cnt = 20;
switch(iap_cmd.cmd.cmd2)
{
// »ñÈ¡ÐÅÏ¢
switch(iap_cmd.cmd.cmd2)
{
// »ñÈ¡ÐÅÏ¢
@@
-491,9
+494,13
@@
uint8_t Iap_Lite_Verify(uint32_t addr, uint8_t packet_size, uint8_t* data)
void Iap_Lite_Check_TimeOut(void)
{
void Iap_Lite_Check_TimeOut(void)
{
- if(iap_timeout_cnt > 0)
+ if(iap_app_upgrae_mcu_cnt > 0)
+ {
+ iap_app_upgrae_mcu_cnt--;
+ }
+ if(iap_usb_upgrae_mcu_cnt > 0)
{
{
- iap_
timeout
_cnt--;
+ iap_
usb_upgrae_mcu
_cnt--;
}
}
}
}
@@
-505,10
+512,14
@@
void Iap_Lite_Process(uint8_t* data, uint16_t len, uint8_t host_type)
iap_lite_reply.payload.reply = REPLY_STATUS_NONE;
iap_lite_reply.payload.sub_cmd = iap_lite_cmd->payload.sub_cmd;
iap_lite_reply.payload.reply = REPLY_STATUS_NONE;
iap_lite_reply.payload.sub_cmd = iap_lite_cmd->payload.sub_cmd;
+ if(iap_usb_upgrae_mcu_cnt > 0)
+ {
+ return;
+ }
// ¼ì²éÐÒé°æ±¾
if(iap_lite_cmd->payload.protocol_version == 0x01)
{
// ¼ì²éÐÒé°æ±¾
if(iap_lite_cmd->payload.protocol_version == 0x01)
{
- iap_
timeout
_cnt=10;
+ iap_
app_upgrae_mcu
_cnt=10;
// ·ÖÎöÃüÁîÂë
switch(iap_lite_cmd->payload.sub_cmd)
{
// ·ÖÎöÃüÁîÂë
switch(iap_lite_cmd->payload.sub_cmd)
{
diff --git
a/App/src/iot.c
b/App/src/iot.c
index
9db21e5
..
866a28f
100644
(file)
--- a/
App/src/iot.c
+++ b/
App/src/iot.c
@@
-302,11
+302,7
@@
void Iot_Uart_Rx_Handle(uint8_t *data ,uint8_t len)
case 0x0D:
{
case 0x0D:
{
-// get_key_led_replay_flag = 1;
-// // Iot_Stop_Send_Key_Color();
-// // Iot_Send_Button_Color_Info();
-// iot_stop_send(0);
-// iot_send_process(0,(uint8_t *)&led_key_profile[0],5);
+
}
break;
}
break;