This commit is contained in:
2026-06-12 15:33:11 +08:00
parent 3276dc5981
commit f45ae095aa
2 changed files with 46 additions and 10 deletions

View File

@ -424,16 +424,19 @@ void Update_firmware(Stream &updateSource, size_t updateSize)
size_t http_download(String url) size_t http_download(String url)
{ {
// String url="/gaoguangpu/firmware/esp32/firmware_"+version+".bin"; // String url="/gaoguangpu/firmware/esp32/firmware_"+version+".bin";
write_log(log_path,"start http_download",10);
int err = http->get(url.c_str()); int err = http->get(url.c_str());
if (err != 0) if (err != 0)
{ {
//Serial.println(F("Date failed to connect")); //Serial.println(F("Date failed to connect"));
write_log(log_path,"Date failed to connect",10);
vTaskDelay(10000); vTaskDelay(10000);
return 0; return 0;
} }
int status = http->responseStatusCode(); int status = http->responseStatusCode();
if (!status) if (!status)
{ {
write_log(log_path,"http->responseStatusCode false",10);
vTaskDelay(10000); vTaskDelay(10000);
return 0; return 0;
} }
@ -477,7 +480,7 @@ size_t http_download(String url)
file.close(); file.close();
http->stop(); http->stop();
write_log(log_path,"download finish",10);
return count; return count;
} }
@ -505,6 +508,7 @@ bool check_file_ota(String MD5)
else else
{ {
//Serial.println("md5 error"); //Serial.println("md5 error");
write_log(log_path,"md5 error",10);
return false; return false;
} }
} }
@ -519,8 +523,10 @@ void http_OTA(String url,String MD5)
vTaskDelay(1); vTaskDelay(1);
} }
write_log(log_path,"wait mqtt stop",10);
xEventGroupSetBits(http_event_group, mqtt_stop_bit); xEventGroupSetBits(http_event_group, mqtt_stop_bit);
xEventGroupWaitBits(http_event_group, Http_start_bit,pdTRUE, pdFALSE,portMAX_DELAY); xEventGroupWaitBits(http_event_group, Http_start_bit,pdTRUE, pdFALSE,portMAX_DELAY);
write_log(log_path,"start http_OTA",10);
uint32_t count = http_download(url); uint32_t count = http_download(url);
if(count != 0) check_file_ota(MD5); if(count != 0) check_file_ota(MD5);

View File

@ -213,6 +213,18 @@ void setup()
// 初始化DS18b20 // 初始化DS18b20
uint8_t temp_number = DS18b20_init(); uint8_t temp_number = DS18b20_init();
// while(1)
// {
// ////排序时使用
// float temp[8];
// getall_temp(temp);
// for(int i = 0;i<8;i++)
// {
// Serial.printf("temp[%d]: %f\n",i + 1,temp[i]);
// }
// vTaskDelay(500);
// }
//ADC电压采集初始化 //ADC电压采集初始化
// adc_init(); // adc_init();
@ -234,7 +246,7 @@ void setup()
write_log(log_path," ",20); write_log(log_path," ",20);
write_log(log_path,"===============================================================",20); write_log(log_path,"===============================================================",20);
write_log(log_path,time,20); write_log(log_path,time,20);
write_log(log_path,"system start",20); write_log(log_path,"system start !",20);
@ -263,7 +275,7 @@ void setup()
// is11Sensor->guangpu_bochang.a2 = 0.000000000; // is11Sensor->guangpu_bochang.a2 = 0.000000000;
sys_info_init(); sys_info_init();
sys_sd_doc["firmware"] = "V2.0.4";
// dingbiao_init("/dingbiao/dingbiao_up_gain.bin"); // dingbiao_init("/dingbiao/dingbiao_up_gain.bin");
// dingbiao_init("/dingbiao/dingbiao_up_offset.bin"); // dingbiao_init("/dingbiao/dingbiao_up_offset.bin");
// dingbiao_init("/dingbiao/dingbiao_down_gain.bin"); // dingbiao_init("/dingbiao/dingbiao_down_gain.bin");
@ -309,6 +321,13 @@ void setup()
is11Sensor->guangpu_bochang.b1 = is11Sensor->SensorInfo.a2; is11Sensor->guangpu_bochang.b1 = is11Sensor->SensorInfo.a2;
is11Sensor->guangpu_bochang.b2 = is11Sensor->SensorInfo.a3; is11Sensor->guangpu_bochang.b2 = is11Sensor->SensorInfo.a3;
is11Sensor->guangpu_bochang.b3 = is11Sensor->SensorInfo.a4; is11Sensor->guangpu_bochang.b3 = is11Sensor->SensorInfo.a4;
sys_sd_doc["bochangxishu"]["a0"] = is11Sensor->guangpu_bochang.a0;
sys_sd_doc["bochangxishu"]["a1"] = is11Sensor->guangpu_bochang.a1;
sys_sd_doc["bochangxishu"]["a2"] = is11Sensor->guangpu_bochang.a2;
sys_sd_doc["bochangxishu"]["a3"] = is11Sensor->guangpu_bochang.a3;
} }
else else
{ {
@ -328,7 +347,7 @@ void setup()
xTaskCreatePinnedToCore(task_4G_mode, "task_4G_mode",1024*23,NULL, 1,&A4G_Handler, 1); xTaskCreatePinnedToCore(task_4G_mode, "task_4G_mode",1024*23,NULL, 1,&A4G_Handler, 1);
xTaskCreatePinnedToCore(OTA_task , "OTA_task",1024*10 ,NULL, 1,&OTA_Handler, 1); xTaskCreatePinnedToCore(OTA_task , "OTA_task",1024*4 ,NULL, 1,&OTA_Handler, 1);
} }
else else
{ {
@ -780,7 +799,8 @@ void task_4G_mode(void *pvParameters)
write_log(log_path,"task 4G mode",10); write_log(log_path,"task 4G mode",10);
while (1) while (1)
{ {
Serial.println("task_4G_mode 11"); // Serial.println("task_4G_mode 11");
write_log(log_path,"task_4G_mode 11",10);
// vTaskDelay(1000 * 10); // vTaskDelay(1000 * 10);
bool warn_sta = false; bool warn_sta = false;
float temperature[8]; float temperature[8];
@ -968,12 +988,22 @@ void task_4G_mode(void *pvParameters)
void OTA_task(void *pvParameters) void OTA_task(void *pvParameters)
{ {
vTaskDelay(10);
write_log(log_path,"ota task start",10);
while (1) while (1)
{ {
xEventGroupWaitBits(Main_EventGroup, OTA_BIT, pdTRUE, pdFALSE, portMAX_DELAY); xEventGroupWaitBits(Main_EventGroup, OTA_BIT, pdTRUE, pdFALSE, portMAX_DELAY);
vTaskDelay(100); vTaskDelay(100);
vTaskSuspend(Task0_Handler);
vTaskSuspend(Task1_Handler);
vTaskSuspend(A4G_Handler);
String url = sys_sd_doc["version_url"]; String url = sys_sd_doc["version_url"];
String MD5 = sys_sd_doc["MD5"]; String MD5 = sys_sd_doc["MD5"];
write_log(log_path,"ota start",10);
write_log(log_path,"ota url: " + url,10);
write_log(log_path,"ota MD5: " + MD5,10);
http_OTA(url, MD5); http_OTA(url, MD5);
} }
} }
@ -995,10 +1025,10 @@ void receive_command_unpack(uint8_t * read_buf,uint16_t data_length,uint8_t port
// write_log(log_path,"ret: " + String(ret),10); // write_log(log_path,"ret: " + String(ret),10);
// Serial.println("read_buf: " + String(read_buf,data_length)); // Serial.println("read_buf: " + String(read_buf,data_length));
for (int i = 0; i < data_length; i++) // for (int i = 0; i < data_length; i++)
{ // {
Serial.printf("%02X ",read_buf[i]); // Serial.printf("%02X ",read_buf[i]);
} // }
if (ret > 0) if (ret > 0)