Refactored
This commit is contained in:
@@ -8,22 +8,18 @@
|
||||
|
||||
QueueHandle_t xQueue_Info = xQueueCreate(20, sizeof(uint32_t));
|
||||
|
||||
void WaitForUser(void)
|
||||
{
|
||||
void WaitForUser(void) {
|
||||
SysInit_UpdateInfo("$ERR");
|
||||
while(1)
|
||||
{
|
||||
while(1) {
|
||||
M5.update();
|
||||
if(M5.BtnP.wasReleased())
|
||||
{
|
||||
if(M5.BtnP.wasReleased()) {
|
||||
SysInit_UpdateInfo("$RESUME");
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void SysInit_Start(void)
|
||||
{
|
||||
void SysInit_Start(void) {
|
||||
bool ret = false;
|
||||
Serial.begin(115200);
|
||||
Serial.flush();
|
||||
@@ -54,22 +50,18 @@ void SysInit_Start(void)
|
||||
bool is_factory_test;
|
||||
SPI.begin(14, 13, 12, 4);
|
||||
ret = SD.begin(4, SPI, 20000000);
|
||||
if(ret == false)
|
||||
{
|
||||
if(ret == false) {
|
||||
is_factory_test = true;
|
||||
SetInitStatus(0, 0);
|
||||
// log_e("Failed to initialize SD card.");
|
||||
// SysInit_UpdateInfo("[ERROR] Failed to initialize SD card.");
|
||||
// WaitForUser();
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
is_factory_test = SD.exists("/__factory_test_flag__");
|
||||
}
|
||||
|
||||
SysInit_UpdateInfo("Initializing Touch pad...");
|
||||
if(M5.TP.begin(21, 22, 36) != ESP_OK)
|
||||
{
|
||||
if(M5.TP.begin(21, 22, 36) != ESP_OK) {
|
||||
SetInitStatus(1, 0);
|
||||
log_e("Touch pad initialization failed.");
|
||||
SysInit_UpdateInfo("[ERROR] Failed to initialize Touch pad.");
|
||||
@@ -80,25 +72,19 @@ void SysInit_Start(void)
|
||||
LoadSetting();
|
||||
|
||||
M5EPD_Canvas _initcanvas(&M5.EPD);
|
||||
if((!is_factory_test) && SD.exists("/font.ttf"))
|
||||
{
|
||||
if((!is_factory_test) && SD.exists("/font.ttf")) {
|
||||
_initcanvas.loadFont("/font.ttf", SD);
|
||||
SetTTFLoaded(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
_initcanvas.loadFont(binaryttf, sizeof(binaryttf));
|
||||
SetTTFLoaded(false);
|
||||
SetLanguage(LANGUAGE_EN);
|
||||
is_factory_test = true;
|
||||
}
|
||||
|
||||
if(is_factory_test)
|
||||
{
|
||||
if(is_factory_test) {
|
||||
SysInit_UpdateInfo("$OK");
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
SysInit_UpdateInfo("Initializing system...");
|
||||
}
|
||||
|
||||
@@ -108,8 +94,7 @@ void SysInit_Start(void)
|
||||
EPDGUI_PushFrame(frame_main);
|
||||
Frame_FactoryTest *frame_factorytest = new Frame_FactoryTest();
|
||||
EPDGUI_AddFrame("Frame_FactoryTest", frame_factorytest);
|
||||
if(!is_factory_test)
|
||||
{
|
||||
if(!is_factory_test) {
|
||||
Frame_Setting *frame_setting = new Frame_Setting();
|
||||
EPDGUI_AddFrame("Frame_Setting", frame_setting);
|
||||
Frame_Setting_Wallpaper *frame_wallpaper = new Frame_Setting_Wallpaper();
|
||||
@@ -129,20 +114,16 @@ void SysInit_Start(void)
|
||||
Frame_Home *frame_home = new Frame_Home();
|
||||
EPDGUI_AddFrame("Frame_Home", frame_home);
|
||||
|
||||
if(isWiFiConfiged())
|
||||
{
|
||||
if(isWiFiConfiged()) {
|
||||
SysInit_UpdateInfo("Connect to " + GetWifiSSID() + "...");
|
||||
WiFi.begin(GetWifiSSID().c_str(), GetWifiPassword().c_str());
|
||||
uint32_t t = millis();
|
||||
while (1)
|
||||
{
|
||||
if(millis() - t > 8000)
|
||||
{
|
||||
while (1) {
|
||||
if(millis() - t > 8000) {
|
||||
break;
|
||||
}
|
||||
|
||||
if(WiFi.status() == WL_CONNECTED)
|
||||
{
|
||||
if(WiFi.status() == WL_CONNECTED) {
|
||||
frame_wifiscan->SetConnected(GetWifiSSID(), WiFi.RSSI());
|
||||
break;
|
||||
}
|
||||
@@ -154,8 +135,7 @@ void SysInit_Start(void)
|
||||
|
||||
while(uxQueueMessagesWaiting(xQueue_Info));
|
||||
|
||||
if(!is_factory_test)
|
||||
{
|
||||
if(!is_factory_test) {
|
||||
SysInit_UpdateInfo("$OK");
|
||||
}
|
||||
|
||||
@@ -164,8 +144,7 @@ void SysInit_Start(void)
|
||||
delay(500);
|
||||
}
|
||||
|
||||
void SysInit_Loading(void *pvParameters)
|
||||
{
|
||||
void SysInit_Loading(void *pvParameters) {
|
||||
const uint16_t kPosy = 548;
|
||||
const uint8_t *kLD[] = {
|
||||
ImageResource_loading_01_96x96,
|
||||
@@ -200,51 +179,39 @@ void SysInit_Loading(void *pvParameters)
|
||||
int i = 0;
|
||||
char *p;
|
||||
uint32_t time = 0;
|
||||
while (1)
|
||||
{
|
||||
if(millis() - time > 250)
|
||||
{
|
||||
while (1) {
|
||||
if(millis() - time > 250) {
|
||||
time = millis();
|
||||
LoadingIMG.pushImage(0, 0, 96, 96, kLD[i]);
|
||||
LoadingIMG.pushCanvas(220, kPosy + 80, UPDATE_MODE_DU4);
|
||||
i++;
|
||||
if (i == 16)
|
||||
{
|
||||
if (i == 16) {
|
||||
i = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(xQueueReceive(xQueue_Info, &p, 0))
|
||||
{
|
||||
if(xQueueReceive(xQueue_Info, &p, 0)) {
|
||||
String str(p);
|
||||
free(p);
|
||||
if(str.indexOf("$OK") >= 0)
|
||||
{
|
||||
if(str.indexOf("$OK") >= 0) {
|
||||
LoadingIMG.pushImage(0, 0, 96, 96, ImageResource_loading_success_96x96);
|
||||
LoadingIMG.pushCanvas(220, kPosy + 80, UPDATE_MODE_GL16);
|
||||
break;
|
||||
}
|
||||
else if(str.indexOf("$ERR") >= 0)
|
||||
{
|
||||
} else if(str.indexOf("$ERR") >= 0) {
|
||||
LoadingIMG.pushImage(0, 0, 96, 96, ImageResource_loading_error_96x96);
|
||||
LoadingIMG.pushCanvas(220, kPosy + 80, UPDATE_MODE_GL16);
|
||||
LoadingIMG.fillCanvas(0);
|
||||
while(1)
|
||||
{
|
||||
if(xQueueReceive(xQueue_Info, &p, 0))
|
||||
{
|
||||
while(1) {
|
||||
if(xQueueReceive(xQueue_Info, &p, 0)) {
|
||||
String str(p);
|
||||
free(p);
|
||||
if(str.indexOf("$RESUME") >= 0)
|
||||
{
|
||||
if(str.indexOf("$RESUME") >= 0) {
|
||||
LoadingIMG.pushCanvas(220, kPosy + 80, UPDATE_MODE_GC16);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
} else {
|
||||
Info.fillCanvas(0);
|
||||
Info.drawString(str, 270, 20);
|
||||
Info.pushCanvas(0, kPosy, UPDATE_MODE_DU);
|
||||
@@ -254,13 +221,11 @@ void SysInit_Loading(void *pvParameters)
|
||||
vTaskDelete(NULL);
|
||||
}
|
||||
|
||||
void SysInit_UpdateInfo(String info)
|
||||
{
|
||||
void SysInit_UpdateInfo(String info) {
|
||||
char *p = (char*)malloc(info.length() + 1);
|
||||
memcpy(p, info.c_str(), info.length());
|
||||
p[info.length()] = '\0';
|
||||
if(xQueueSend(xQueue_Info, &p, 0) == 0)
|
||||
{
|
||||
if(xQueueSend(xQueue_Info, &p, 0) == 0) {
|
||||
free(p);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user