Files
ESPWebDAV/config.cpp
2020-04-21 11:18:53 +08:00

52 lines
998 B
C++

#include <EEPROM.h>
#include "config.h"
// ------------------------
unsigned char Config::load() {
EEPROM.begin(EEPROM_SIZE);
uint8_t *p = (uint8_t*)(&data);
for (int i = 0; i < sizeof(data); i++)
{
*(p + i) = EEPROM.read(i);
}
EEPROM.commit();
return data.flag;
}
char* Config::ssid() {
return data.ssid;
}
void Config::ssid(char* ssid) {
if(ssid == NULL) return;
strncpy(data.ssid,ssid,WIFI_SSID_LEN);
}
char* Config::password() {
return data.psw;
}
void Config::password(char* password) {
if(password == NULL) return;
strncpy(data.psw,password,WIFI_PASSWD_LEN);
}
void Config::save(const char*ssid,const char*password) {
if(ssid ==NULL || password==NULL)
return;
EEPROM.begin(EEPROM_SIZE);
data.flag = 1;
strncpy(data.ssid, ssid, WIFI_SSID_LEN);
strncpy(data.psw, password, WIFI_PASSWD_LEN);
uint8_t *p = (uint8_t*)(&data);
for (int i = 0; i < sizeof(data); i++)
{
EEPROM.write(i, *(p + i));
}
EEPROM.commit();
}
Config config;