修正小强发现的8266的Port为空的问题

This commit is contained in:
Stone 2016-06-29 04:21:45 +00:00
parent 5be5216947
commit ebadfb6dd7
2 changed files with 27 additions and 20 deletions

View File

@ -34,6 +34,31 @@ void LoadStationTask(void* param);
/******************************** Esp8266 ********************************/ /******************************** Esp8266 ********************************/
Esp8266::Esp8266(ITransport* port, Pin power, Pin rst) Esp8266::Esp8266(ITransport* port, Pin power, Pin rst)
{
Init(port, power, rst);
}
Esp8266::Esp8266(COM idx, Pin power, Pin rst)
{
auto srp = new SerialPort(idx, 115200);
srp->Tx.SetCapacity(0x100);
srp->Rx.SetCapacity(0x100);
Init(srp, power, rst);
InitConfig();
LoadConfig();
// 配置模式作为工作模式
WorkMode = Mode;
}
Esp8266::~Esp8266()
{
delete SSID;
delete Pass;
}
void Esp8266::Init(ITransport* port, Pin power, Pin rst)
{ {
Set(port); Set(port);
@ -57,26 +82,6 @@ Esp8266::Esp8266(ITransport* port, Pin power, Pin rst)
Pass = new String(); Pass = new String();
} }
Esp8266::Esp8266(COM idx, Pin power, Pin rst)
{
auto srp = new SerialPort(idx, 115200);
srp->Tx.SetCapacity(0x100);
srp->Rx.SetCapacity(0x100);
Esp8266(srp, power, rst);
InitConfig();
LoadConfig();
// 配置模式作为工作模式
WorkMode = Mode;
}
Esp8266::~Esp8266()
{
delete SSID;
delete Pass;
}
void Esp8266::SetLed(Pin led) void Esp8266::SetLed(Pin led)
{ {
if(led != P0) if(led != P0)

View File

@ -21,6 +21,8 @@ public:
Esp8266(COM idx, Pin power = P0, Pin rst = P0); Esp8266(COM idx, Pin power = P0, Pin rst = P0);
virtual ~Esp8266(); virtual ~Esp8266();
void Init(ITransport* port, Pin power = P0, Pin rst = P0);
void OpenAsync(); void OpenAsync();
virtual void Config(); virtual void Config();
void SetLed(Pin led); void SetLed(Pin led);