|
|
|
@ -357,7 +357,7 @@ int main(void) |
|
|
|
Sys_Init(); |
|
|
|
Enable_Interrupts; |
|
|
|
|
|
|
|
SCI1_Init(g_ips_clk,921600 ,0); //115200 921600 |
|
|
|
SCI1_Init(g_ips_clk,115200 ,0); //115200 921600 |
|
|
|
// SCI2_Init(g_ips_clk, 115200,0); |
|
|
|
SCI3_Init(g_ips_clk,38400 ,0); |
|
|
|
/********************升级*******************/ |
|
|
|
@ -1132,11 +1132,11 @@ printf(" date = %s,time = %s \r\n", (char *)__DATE__, (char *)__TIME__); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
for(unsigned char i = 0 ; i < mes_length; i++) |
|
|
|
{ |
|
|
|
printf(" %x",wifi_buf[i]); |
|
|
|
} |
|
|
|
printf("\r\n"); |
|
|
|
// for(unsigned char i = 0 ; i < mes_length; i++) |
|
|
|
// { |
|
|
|
// printf(" %x",wifi_buf[i]); |
|
|
|
// } |
|
|
|
// printf("\r\n"); |
|
|
|
//实现算法 |
|
|
|
|
|
|
|
// 收到wifi-ota通知 |
|
|
|
@ -1190,18 +1190,34 @@ printf(" date = %s,time = %s \r\n", (char *)__DATE__, (char *)__TIME__); |
|
|
|
// updata_seq = wifi_buf[9] || (wifi_buf[8]<<8); |
|
|
|
// printf("1***%d %d\r\n",updata_seq,ota_seq); |
|
|
|
printf("***%d %d\r\n",ota_seq,256*wifi_buf[8]+wifi_buf[9]); |
|
|
|
if(ota_seq==(256*wifi_buf[8]+wifi_buf[9])) |
|
|
|
if(ota_seq==(256*wifi_buf[8]+wifi_buf[9])) //wifi_buf[10] bin长度 |
|
|
|
{ |
|
|
|
printf("bin:"); |
|
|
|
for(unsigned char i = 0 ; i < wifi_buf[10]; i++) |
|
|
|
{ |
|
|
|
printf(" %x",wifi_buf[i+11]); |
|
|
|
} |
|
|
|
printf("\r\n"); |
|
|
|
// printf("%d bin:",wifi_buf[10]); |
|
|
|
// for(unsigned char i = 0 ; i < wifi_buf[10]; i++) |
|
|
|
// { |
|
|
|
// printf(" %x",wifi_buf[i+11]); |
|
|
|
// } |
|
|
|
// printf("\r\n"); |
|
|
|
|
|
|
|
|
|
|
|
ota_seq++; |
|
|
|
|
|
|
|
//计算升级包信息 1.bin地址 2.bin长度 wifi_buf[10]bin长度 3.写入flash地址 |
|
|
|
|
|
|
|
unsigned char * ota_buf_address = &wifi_buf[11]; |
|
|
|
unsigned int ota_offset = wifi_buf[10]; |
|
|
|
unsigned int ota_flash_addr = ota_address; |
|
|
|
printf("len:%d addr:%x\r\n",ota_offset,ota_flash_addr); |
|
|
|
//写 flash |
|
|
|
ota_lt7689(ota_buf_address,ota_offset,ota_flash_addr); |
|
|
|
ota_address +=ota_offset; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ota_seq++; |
|
|
|
printf("---write\r\n"); |
|
|
|
} |
|
|
|
//重复 相同序号的升级包 |
|
|
|
else |
|
|
|
{ |
|
|
|
printf("***repeat!\r\n"); |
|
|
|
@ -1249,7 +1265,15 @@ printf(" date = %s,time = %s \r\n", (char *)__DATE__, (char *)__TIME__); |
|
|
|
|
|
|
|
// mcu inform wifi |
|
|
|
|
|
|
|
//封装 固件升级成功消息 |
|
|
|
send_length =inf_wifi_finish( inf_wifi_buf , pkg_seq); |
|
|
|
inf_wifi_buf_length = 0; |
|
|
|
//发送消息给wifi |
|
|
|
send_meg_wifi(inf_wifi_buf,send_length); |
|
|
|
|
|
|
|
// 跳转APP |
|
|
|
printf("turn to APP!\r\n"); |
|
|
|
APP(APP_ADDR); |
|
|
|
|
|
|
|
} |
|
|
|
//wifi 请求失败 |
|
|
|
|