Browse Source

Небольшие правки для нормального приема сообщений от клиентов

master
Nikita Romanenko 6 years ago
parent
commit
364b0bf33b
  1. 2
      html/acc.html
  2. 15
      src/html.h
  3. 17
      src/main.cpp

2
html/acc.html

@ -63,7 +63,7 @@
function calibrateDevice() {
var calibrating = 5;
var calibrating = 10;
socket.send(JSON.stringify(calibrating));
document.getElementById("calibrate_text").innerHTML = "Калибровка в течении 10 секунд - Сделайте несколько оборотов устройством перпендикулярно оси Х";
}

15
src/html.h

@ -5,7 +5,8 @@ enum parts
HTML_BEGIN,
HTML_END,
STYLE,
SCRIPT
SCRIPT,
ACC_CALIBRATE
};
const char html_begin[] PROGMEM = {
@ -78,6 +79,11 @@ const char script[] PROGMEM = {
}\n\
context.stroke();\n\
};\n\
function calibrateDevice() {\n\
var calibrating = 10;\n\
socket.send(JSON.stringify(calibrating));\n\
document.getElementById(\"calibrate_text\").innerHTML = \"Калибровка в течении 10 секунд - Сделайте несколько оборотов устройством перпендикулярно оси Х\";\n\
}\n\
</script>\n\
"};
@ -89,6 +95,10 @@ const char html_end[] PROGMEM = {
</body>\n\
</html>\n"};
const char acc_calibrate[] PROGMEM = {
"<p id=\"calibrate_text\" onclick=\"calibrateDevice()\">Устройство не откалибровано.</p>\n\
<button onclick=\"calibrateDevice()\">Откалибровать</button>"};
static int getHtml(parts p, char &adr, uint16_t buf_size, uint16_t bias)
{
char *buffer = &adr;
@ -108,6 +118,9 @@ static int getHtml(parts p, char &adr, uint16_t buf_size, uint16_t bias)
case SCRIPT:
html_part = script;
break;
case ACC_CALIBRATE:
html_part = acc_calibrate;
break;
}
length = strlen_P(html_part);
for (int i = 0; i != length; i++)

17
src/main.cpp

@ -18,6 +18,12 @@ Graph graphAcc = Graph(200, 50);
long int lastDataSend = 0;
int timeOfCal = 0;
bool accCalibrated = false;
int accCalRemains = 0;
int accMax1 = 0;
int accMax2 = 0;
WebSocketsServer webSocket = WebSocketsServer(81);
void handleAccelerometer()
@ -29,7 +35,7 @@ void handleAccelerometer()
bias += getHtml(HTML_BEGIN, *html_code, arr_size, 0);
bias += getHtml(STYLE, *html_code, arr_size, bias);
bias += getHtml(SCRIPT, *html_code, arr_size, bias);
bias += getHtml(SCRIPT, *html_code, arr_size, bias);
bias += getHtml(HTML_END, *html_code, arr_size, bias);
server.send(200, "text/html", html_code);
@ -112,6 +118,14 @@ void sendAccelerometerData() {
}
}
void webSocketEvent(uint8_t num, WStype_t type, uint8_t * payload, size_t length) {
switch(type) {
case WStype_TEXT:
timeOfCal = (int) *payload;
Serial.printf("[%u] get Text: %d\n", num, timeOfCal);
}
}
void setup(void)
{
@ -136,6 +150,7 @@ void setup(void)
Serial.println("HTTP server started");
webSocket.begin();
webSocket.onEvent(webSocketEvent);
}
void loop(void)

Loading…
Cancel
Save