Files
Bionic_sphere/Bionic_Core/OTAClass/OTAClass.cpp
T
Misaki a47e20cb64 1. 优化了cpp_json的内容,使其更modern
2. 稍微优化了一下系统配置类
3. 增加了系统版本号,便于区分系统版本,方便OTA
4. 重写OTA的逻辑,完成了Cpp的OTA封装,测试通过
2025-09-24 04:01:23 +08:00

60 lines
1.8 KiB
C++

//
// Created by misaki on 2025/9/2.
//
#include "OTAClass.h"
#include "esp_log.h"
#include <freertos/FreeRTOS.h>
#include <string>
#include "SDFileManager.h"
#include "CommClass.h"
void OTAClass::Init() {
ESP_LOGI("OTA", "Init");
// 列出当前目录内容
std::string listing = SDFileManager::getInstance()->lsCommand(".", false, true);
ESP_LOGI("SD", "%s", listing.c_str());
// 切换到music目录
SDFileManager::getInstance()->cdCommand("music");
std::string pwdPath = SDFileManager::getInstance()->pwdCommand();
ESP_LOGI("SD", "%s", pwdPath.c_str());
// 列出当前目录内容
listing = SDFileManager::getInstance()->lsCommand(".", false, true);
ESP_LOGI("SD", "%s", listing.c_str());
// LVGLRender::getInstance()->RenderGif("gzl_m.gif");
// 设置音量
// AudioOutput::getInstance()->setVolume(5);
// 同步播放
// AudioOutput::getInstance()->playSync("/sdcard/music", "kokoronashi_8k.mp3");
// // 配置Wifi连接线程参数
// ThreadConfig wifi_config;
// wifi_config.name = "WifiConnector"; // 线程名称
// wifi_config.core_id = 1; // 绑定到核心1(避免与主线程冲突)
// wifi_config.stack_size = 4096; // 设置稍大的栈空间(Wifi连接可能需要)
// wifi_config.priority = 6; // 设置较高优先级(确保连接及时)
// // 使用单例方式创建线程,调用connectWifi成员函数
// std::thread wifi_thread = ThreadManager::createSingletonThread<WifiConnectors>(
// wifi_config,
// &WifiConnectors::connectWifi,
// "Misaki-2.4G", // SSID
// "88888888", // 密码
// 5 // 最大重试次数
// );
// wifi_thread.detach();
}
// 启动OTA更新线程,前提是已经连接WiFi
void OTAClass::Update() {
}