1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
|
//////////////////////////////////////
// Version finale pour Access Point //
// à modifier au niveau du nom //
// situé en ligne 64 //
//////////////////////////////////////
#include <RTClib.h>
#include <Wire.h>
#include <ESP8266WiFi.h>
//#include <WiFi.h>
#include <strings.h>
#include "index.h" //Our HTML webpage contents
//SSID and Password of your WiFi router
RTC_DS3231 rtc;
//char t[32];
//int i = 0;
char DateAndTimeString[20];
int Day;
int Month;
int Year;
int Secs;
int Minutes;
int Hours;
String s="";
String webString = "";
String MonTimestamp;
const char *ssid = "AC-ESP8266";
const char *password = "";
IPAddress local_IP(192,168,4,1);
IPAddress gateway(192,168,1,1);
IPAddress subnet(255,255,255,0);
WiFiServer server(80);
void setup()
{
Serial.begin(9600);
Serial.print("Setting soft-AP configuration ... ");
Serial.println(WiFi.softAPConfig(local_IP, gateway, subnet) ? "Ready" : "Failed!");
Serial.print("Setting soft-AP ... ");
Serial.println(WiFi.softAP(ssid,password) ? "Ready" : "Failed!");
Serial.print("Soft-AP IP address = ");
Serial.println(WiFi.softAPIP());
//------------------------------------------------------------
Serial.println("Start Access Point IP");
Serial.println(WiFi.softAPConfig(local_IP, gateway, subnet) ? "Ready" : "Failed!");
Serial.print("Setting soft-AP ... ");
Serial.println(WiFi.softAP(ssid,password) ? "Ready" : "Failed!");
Serial.print("Soft-AP IP address = ");
Serial.println(WiFi.softAPIP());
if (! rtc.begin()) {
Serial.println("Couldn't find RTC");
while (1);
}
// rtc.adjust(DateTime(2021, 11, 22, 12, 10, 10));
if (rtc.lostPower()) {
Serial.println("RTC lost power, lets set the time!");
// following line sets the RTC to the date & time this sketch was compiled
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
// This line sets the RTC with an explicit date & time, for example to set
// January 21, 2014 at 3am you would call:
// rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0));
}
//ClientRequest = "";
Serial.println("Access Point IP");
Serial.println((WiFi.softAPIP()));
Serial.println("Connected");
// WiFi.config(staticIP312_10, gateway312_10, subnet312_10); // enlevé
server.begin();
Serial.print("Your IP is: ");
Serial.println((WiFi.softAPIP()));
Serial.println((WiFi.localIP().toString()));
}
String print_time(DateTime timestamp) {
char message[120];
int Year = timestamp.year();
int Month = timestamp.month();
int Day = timestamp.day();
int Hour = timestamp.hour();
int Minute = timestamp.minute();
int Second= timestamp.second();
sprintf(message, "%d%d%d%02d%02d%02d", Year,Month,Day,Hour,Minute,Second);
return message;
}
void loop()
{
Serial.print("[Server Connected] ");
Serial.println(WiFi.softAPIP());
WiFiClient Client = server.available();
// Serial.print(".");
s = "Louise,";
s = "Louise,"+WiFi.macAddress()+",";
if (!Client) {
return; }
while(!Client.available()){ delay(20); }
/* ClientRequest = (client.readStringUntil('\r'));
ClientRequest.remove(0, 5);
ClientRequest.remove(ClientRequest.length()-9,9);
Serial.print("Vous avez reçu le message suivant: ");
Serial.println(ClientRequest);*/
if (Client) {
while (Client.connected()) {
if (Client.available()) {
delay(100);
/*
Client.println("HTTP/1.1 200 OK");
Client.println("Content-Type: text/html; charset=UTF-8");
Client.println("");
Client.println("<!DOCTYPE HTML>");
Client.println("<html>");
*/
DateTime now = rtc.now();
// Serial.println(print_time(now));
MonTimestamp=print_time(now);
// Serial.println("MonTimestamp: "+MonTimestamp);
// s=s+print_time(now)+",";
webString = s+print_time(now)+","; // Arduino has a hard time with float to string
Client.print(webString+'\n');
Serial.println("envoyé sur client: "+webString);
/* client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println("");
client.println("<!DOCTYPE HTML>");
client.println("<html>");
client.println(webString);
client.println("</html>");
*/
delay(1000);
}
}
/* Client.flush();
client.stop();
yield();*/
// client.println(i);
delay(10000);
}
} |
Partager