Sys.Reset() Sys.ResetAsync() 统一为 Sys.Reboot(int Delayms = 0);

This commit is contained in:
WangQiang 2016-09-05 01:25:14 +00:00
parent d452e2af5b
commit 0fcd1c6b18
13 changed files with 37 additions and 32 deletions

View File

@ -306,7 +306,7 @@ void ACZeroReset(void *param)
InputPort* port = Button_GrayLevel::ACZero; InputPort* port = Button_GrayLevel::ACZero;
if (port) if (port)
{ {
//Sys.Reset(); //Sys.Reboot();
debug_printf("定时检查过零检测\r\n"); debug_printf("定时检查过零检测\r\n");
// 需要检测是否有交流电,否则关闭 // 需要检测是否有交流电,否则关闭

View File

@ -177,7 +177,7 @@ void AP0104::InitClient()
if (!client.Opened) if (!client.Opened)
{ {
debug_printf("联网超时,准备重启系统!\r\n\r\n"); debug_printf("联网超时,准备重启系统!\r\n\r\n");
Sys.Reset(); Sys.Reboot();
} }
}, },
client, 8 * 60 * 1000, -1, "check connet net"); client, 8 * 60 * 1000, -1, "check connet net");

View File

@ -189,7 +189,7 @@ void AP0801::InitClient()
if(!client.Opened) if(!client.Opened)
{ {
debug_printf("联网超时,准备重启系统!\r\n\r\n"); debug_printf("联网超时,准备重启系统!\r\n\r\n");
Sys.Reset(); Sys.Reboot();
} }
}, },
client, 8 * 60 * 1000, -1, "联网检查"); client, 8 * 60 * 1000, -1, "联网检查");
@ -510,7 +510,7 @@ void AP0801::Restore()
{ {
Config::Current->RemoveAll(); Config::Current->RemoveAll();
Sys.Reset(); Sys.Reboot();
} }
void AP0801::OnLongPress(InputPort* port, bool down) void AP0801::OnLongPress(InputPort* port, bool down)
@ -522,7 +522,7 @@ void AP0801::OnLongPress(InputPort* port, bool down)
if (port->PressTime >= 5000) if (port->PressTime >= 5000)
Restore(); Restore();
else if (port->PressTime >= 1000) else if (port->PressTime >= 1000)
Sys.Reset(); Sys.Reboot();
} }
/* /*

View File

@ -193,7 +193,7 @@ void AP0802::InitClient()
if(!client.Opened) if(!client.Opened)
{ {
debug_printf("联网超时,准备重启系统!\r\n\r\n"); debug_printf("联网超时,准备重启系统!\r\n\r\n");
Sys.Reset(); Sys.Reboot();
} }
}, },
client, 8 * 60 * 1000, -1, "联网检查"); client, 8 * 60 * 1000, -1, "联网检查");
@ -458,7 +458,7 @@ void AP0802::Restore()
{ {
Config::Current->RemoveAll(); Config::Current->RemoveAll();
Sys.Reset(); Sys.Reboot();
} }
void AP0802::OnLongPress(InputPort* port, bool down) void AP0802::OnLongPress(InputPort* port, bool down)
@ -470,7 +470,7 @@ void AP0802::OnLongPress(InputPort* port, bool down)
if (port->PressTime >= 5000) if (port->PressTime >= 5000)
Restore(); Restore();
else if (port->PressTime >= 1000) else if (port->PressTime >= 1000)
Sys.Reset(); Sys.Reboot();
} }
/* /*

View File

@ -148,7 +148,7 @@ void IOK027X::InitClient()
if(!client.Opened) if(!client.Opened)
{ {
debug_printf("联网超时准备重启Esp\r\n\r\n"); debug_printf("联网超时准备重启Esp\r\n\r\n");
// Sys.Reset(); // Sys.Reboot();
auto port = dynamic_cast<Esp8266*>(bsp.Host); auto port = dynamic_cast<Esp8266*>(bsp.Host);
port->Close(); port->Close();
Sys.Sleep(1000); Sys.Sleep(1000);
@ -285,7 +285,7 @@ void IOK027X::Restore()
{ {
Config::Current->RemoveAll(); Config::Current->RemoveAll();
Sys.Reset(); Sys.Reboot();
} }
void IOK027X::FlushLed() void IOK027X::FlushLed()
@ -342,7 +342,7 @@ void IOK027X::OnLongPress(InputPort* port, bool down)
if (time >= 6500 && time < 10000) if (time >= 6500 && time < 10000)
{ {
Sys.Sleep(1000); Sys.Sleep(1000);
Sys.Reset(); Sys.Reboot();
return; return;
} }

View File

@ -171,7 +171,7 @@ void IOK0612::InitClient()
if(!client.Opened) if(!client.Opened)
{ {
debug_printf("联网超时准备重启Esp\r\n\r\n"); debug_printf("联网超时准备重启Esp\r\n\r\n");
// Sys.Reset(); // Sys.Reboot();
auto port = dynamic_cast<Esp8266*>(bsp.Host); auto port = dynamic_cast<Esp8266*>(bsp.Host);
port->Close(); port->Close();
Sys.Sleep(1000); Sys.Sleep(1000);
@ -308,7 +308,7 @@ void IOK0612::Restore()
{ {
Config::Current->RemoveAll(); Config::Current->RemoveAll();
Sys.Reset(); Sys.Reboot();
} }
void IOK0612::FlushLed() void IOK0612::FlushLed()
@ -365,7 +365,7 @@ void IOK0612::OnLongPress(InputPort* port, bool down)
if (time >= 6500 && time < 10000) if (time >= 6500 && time < 10000)
{ {
Sys.Sleep(1000); Sys.Sleep(1000);
Sys.Reset(); Sys.Reboot();
return; return;
} }
if (time >= 5000) if (time >= 5000)

View File

@ -116,7 +116,7 @@ void PA0903::InitClient()
// 如果若干分钟后仍然没有打开令牌客户端,则重启系统 // 如果若干分钟后仍然没有打开令牌客户端,则重启系统
Sys.AddTask( Sys.AddTask(
[](void* p) { [](void* p) {
if (!((TokenClient*)p)->Opened) Sys.Reset(); if (!((TokenClient*)p)->Opened) Sys.Reboot();
}, },
client, 8 * 60 * 1000, -1, "CheckClient"); client, 8 * 60 * 1000, -1, "CheckClient");
} }
@ -258,7 +258,7 @@ void PA0903::Restore()
{ {
Config::Current->RemoveAll(); Config::Current->RemoveAll();
Sys.Reset(); Sys.Reboot();
} }
//auto host = (W5500*)Create5500(Spi1, PA8, PA0, led); //auto host = (W5500*)Create5500(Spi1, PA8, PA0, led);

View File

@ -1087,7 +1087,7 @@ bool Esp8266::SetWiFi(const Pair& args, Stream& result)
// 返回结果 // 返回结果
result.Write((byte)true); result.Write((byte)true);
// 延迟重启 // 延迟重启
if(haveChang)Sys.ResetAsync(5000); if(haveChang)Sys.Reboot(5000);
return true; return true;
} }

View File

@ -157,8 +157,10 @@ void TSys::Start()
} }
// 延迟异步重启 // 延迟异步重启
void TSys::ResetAsync(int msDelay) const void TSys::Reboot(int msDelay) const
{ {
if (msDelay <= 0)Reset();
auto func = &TSys::Reset; auto func = &TSys::Reset;
AddTask(*(Action*)&func, (void*)this, msDelay, -1, "延迟重启"); AddTask(*(Action*)&func, (void*)this, msDelay, -1, "延迟重启");
} }

View File

@ -94,16 +94,16 @@ public:
bool CheckMemory() const; bool CheckMemory() const;
// 重启系统
void Reset() const;
// 延迟异步重启 // 延迟异步重启
void ResetAsync(int msDelay) const; void Reboot(int msDelay = 0) const;
// 系统跟踪 // 系统跟踪
void InitTrace(void* port) const; void InitTrace(void* port) const;
void Trace(int times = 1) const; void Trace(int times = 1) const;
private: private:
// 重启系统
void Reset() const;
void OnInit(); void OnInit();
void OnShowInfo() const; void OnShowInfo() const;
void OnStart(); void OnStart();

View File

@ -207,7 +207,7 @@ void ClearConfig()
if(client) client->DisJoin(); if(client) client->DisJoin();
Sys.Sleep(300); Sys.Sleep(300);
Sys.Reset(); Sys.Reboot();
} }
bool CheckUserPress(InputPort* port, bool down, void* param) bool CheckUserPress(InputPort* port, bool down, void* param)
@ -226,7 +226,7 @@ bool CheckUserPress(InputPort* port, bool down, void* param)
// 按下3秒重启 // 按下3秒重启
else if(port->PressTime >= 3000) else if(port->PressTime >= 3000)
{ {
Sys.Reset(); Sys.Reboot();
return true; return true;
} }

View File

@ -216,7 +216,7 @@ void TinyClient::OnWrite(const TinyMessage& msg)
{ {
debug_printf("\r\n 配置区被修改200ms后重启\r\n"); debug_printf("\r\n 配置区被修改200ms后重启\r\n");
Sys.Sleep(200); Sys.Sleep(200);
Sys.Reset(); Sys.Reboot();
} }
// 写入指令以后,为了避免写入响应丢失,缩短心跳间隔 // 写入指令以后,为了避免写入响应丢失,缩短心跳间隔
@ -391,7 +391,7 @@ bool TinyClient::OnJoin(const TinyMessage& msg)
Cfg->Save(); Cfg->Save();
// 组网以后重启一次 // 组网以后重启一次
Sys.Reset(); Sys.Reboot();
return true; return true;
} }
@ -429,7 +429,7 @@ bool TinyClient::OnDisjoin(const TinyMessage& msg)
Cfg->Clear(); Cfg->Clear();
Sys.Sleep(3000); Sys.Sleep(3000);
Sys.Reset(); Sys.Reboot();
return true; return true;
} }
@ -461,7 +461,7 @@ void TinyClient::Ping()
//Server = 0; //Server = 0;
//Sys.Reset(); //Sys.Reboot();
//Server = 0; //Server = 0;
//Password.SetLength(0); //Password.SetLength(0);

View File

@ -343,7 +343,7 @@ void TokenClient::LoopTask()
if (MaxNotActive != 0 && LastActive + MaxNotActive < Sys.Ms()) if (MaxNotActive != 0 && LastActive + MaxNotActive < Sys.Ms())
{ {
Master->Close(); Master->Close();
// Sys.Reset(); // Sys.Reboot();
} }
} }
@ -894,7 +894,7 @@ void TokenClient::OnWrite(const TokenMessage& msg, TokenController* ctrl)
{ {
debug_printf("\r\n 配置区被修改200ms后重启\r\n"); debug_printf("\r\n 配置区被修改200ms后重启\r\n");
Sys.Sleep(200); Sys.Sleep(200);
Sys.Reset(); Sys.Reboot();
} }
LocalSend(0, Store.Data); LocalSend(0, Store.Data);
} }
@ -1010,7 +1010,8 @@ bool TokenClient::InvokeRestStart(void * param, const Pair& args, Stream& result
res.Set("Restart", (byte)01); res.Set("Restart", (byte)01);
debug_printf("1000ms后重启\r\n"); debug_printf("1000ms后重启\r\n");
Sys.AddTask([](void * param) {Sys.Reset(); }, nullptr, 1000, 0, "Restart"); // Sys.AddTask([](void * param) {Sys.Reboot(); }, nullptr, 1000, 0, "Restart");
Sys.Reboot(1000);
return true; return true;
} }
@ -1023,8 +1024,10 @@ bool TokenClient::InvokeRestBoot(void * param, const Pair& args, Stream& result)
debug_printf("1000ms后重置\r\n"); debug_printf("1000ms后重置\r\n");
//Sys.Sleep(500); //Sys.Sleep(500);
//Sys.Reset(); //Sys.Reboot();
Sys.AddTask([](void * param) {Sys.Reset(); }, nullptr, 1000, 0, "RestBoot"); //Sys.AddTask([](void * param) {Sys.Reset(); }, nullptr, 1000, 0, "RestBoot");
Sys.Reboot(1000);
return true; return true;
} }