|
|
|
@ -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 请求失败
|
|
|
|
|