Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * NodeMCU/ESP8266 act as AP (Access Point) and simplest Web Server
- * Connect to AP "arduino-er", password = "password"
- * Open browser, visit 192.168.4.1
- */
- #include <ESP8266WiFi.h>
- #include <WiFiClient.h>
- #include <ESP8266WebServer.h>
- const char *ssid = "arduino69";
- const char *password = "password";
- /*const int sRockPin = 1; // the number of the server-side rock pushbutton pin
- const int sPaperPin = 2; // the number of the server-side paper pushbutton pin
- const int sScissorsPin = 3; // the number of the server-side scissors pushbutton pin
- const int gamePin = 6; // the number of the 'check who is winner' pushbutton pin
- int rockState = 0; // variable for reading the rock pushbutton status
- int paperState = 0; // variable for reading the paper pushbutton status
- int scissorsState = 0; // variable for reading the scissors pushbutton status
- int serverAnswer; // variable for server-side player final answer(rock,paper or scissor)
- int clientAnswer; // variable for client-side player final answer(rock,paper or scissor)
- String winner = ""; //variable that stores who is winner(server, client or tie)
- */
- ESP8266WebServer server(80);
- char* htmlBody_help = "<h1>Help</h1><br/>\n"
- "Visit http://192.168.4.1/ to access web server.<br/>\n"
- "Visit http://192.168.4.1/help to access this page.<br/>\n";
- void handleHelp(){
- //when client visits /rock, then client chose rock as answer
- server.send(200, "text/html", htmlBody_help);
- Serial.println("Help page");
- //clientAnswer = 0;
- }
- void handleRock(){
- //when client visits /rock, then client chose rock as answer
- server.send(200, "text/html", htmlBody_help);
- Serial.println("Rock");
- //clientAnswer = 0;
- }
- void handlePaper(){
- //client visits /paper
- server.send(200, "text/html", htmlBody_help);
- Serial.println("Paper");
- //clientAnswer = 1;
- }
- void handleScissors(){
- //client visits /scissors
- server.send(200, "text/html", htmlBody_help);
- Serial.println("Scissors");
- //clientAnswer = 2;
- }
- /*
- void checkState(){
- // checks what button was pressed and gives server-side player answer
- if (rockState == 1){
- serverAnswer = 0;
- } else if (paperState == 1){
- serverAnswer = 1;
- } else if (scissorsState == 1){
- serverAnswer = 2;
- }
- }
- void decideWinner(a, b){
- //decides who is winner and stores it in variable
- if(a == b){
- winner = "tie";
- } else if (a==0 && b==2){
- //server chose rock and client chose scissors
- winner = "server";
- //server won
- } else if (a==0 && b==1){
- winner = "client";
- } else if (a==1 && b==2){
- winner = "client";
- } else if (a==1 && b==0){
- winner = "server";
- } else if (a==2 && b==1){
- winner = "server";
- } else if (a==2 && b==0){
- winner = "client";
- }
- }
- void sayWinner(){
- // lights up the players led to see who won, if tie then light up both
- if (winner == "server"){
- Serial.println("server won");
- digitalWrite(5, HIGH);
- digitalWrite(4, LOW);
- } else if (winner == "client"){
- Serial.println("client won");
- digitalWrite(4, HIGH);
- digitalWrite(5, LOW);
- } else if (winner == "tie"){
- Serial.println("tie");
- digitalWrite(5, HIGH);
- digitalWrite(4, HIGH);
- } else {
- Serial.println("something wrong");
- digitalWrite(4, LOW);
- digitalWrite(5, LOW);
- }
- }
- */
- void setup() {
- delay(1000);
- Serial.begin(9600);
- Serial.println();
- /*pinMode(4, OUTPUT);
- pinMode(5, OUTPUT);
- pinMode(0, OUTPUT);
- pinMode(sRockPin, INPUT);
- pinMode(sPaperPin, INPUT);
- pinMode(sScissorsPin, INPUT);
- pinMode(gamePin, INPUT);
- */
- WiFi.softAP(ssid, password);
- IPAddress apip = WiFi.softAPIP();
- Serial.print("visit: \n");
- Serial.println(apip);
- server.on("/help", handleHelp);
- server.on("/rock", handleRock);
- server.on("/paper", handlePaper);
- server.on("/scissors", handleScissors);
- server.begin();
- Serial.println("HTTP server beginned");
- }
- void loop() {
- server.handleClient();
- /*rockState = digitalRead(sRockPin);
- paperState = digitalRead(sPaperPin);
- scissorsState = digitalRead(sScissorsPin);
- gameState = digitalRead(gamePin);
- checkState();
- if(gameState == 1){
- //pressed game button and see who win
- sayWinner();
- }
- */
- delay(10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement