Changes between Version 8 and Version 9 of wade/embedded/arduino/example/example_7_1_ethernet_web_admin


Ignore:
Timestamp:
May 25, 2010, 4:15:30 PM (14 years ago)
Author:
wade
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • wade/embedded/arduino/example/example_7_1_ethernet_web_admin

    v8 v9  
    1111 * 接法:
    1212 * digital pin2:DC SWITCH
    13  *         pin3:AC SWITCH
    1413 *         pin10:W5100
    1514 *         pin11:W5100
     
    2322 *         b=03:AC on
    2423 *         b=04:AC off
     24 *         b=05:換 IP:192.168.1.251
     25 *         b=06:換 IP:192.168.1.250
    2526 */
    2627
    2728#include <Ethernet.h>
     29#include <NewSoftSerial.h>
     30//#include <string.h>
    2831
    2932// W5100 configuration
    3033byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
    31 byte ip[] = { 140, 110, 138, 240 };
     34byte ip[] = { 192, 168, 1, 250 };
    3235Server server(80);
    3336
     
    3740uint8_t ssTX = 7;
    3841// enable soft serial nss
    39 // NewSoftSerial nss(ssRX, ssTX);
     42NewSoftSerial nss(ssRX, ssTX);
    4043
    4144// initial
    4245#define id 1           // device ID
     46#define DC_V 400
    4347#define DC_read 0
    4448#define DC_control 2
     49#define AC_V 110
    4550#define AC_read 1
    4651#define AC_control 3
     
    5257  server.begin();
    5358  Serial.begin(9600);
     59  nss.begin(9600);
    5460  pinMode(DC_control, OUTPUT);
    5561  pinMode(AC_control, OUTPUT);
     
    8389         
    8490         
    85           // output the value of each analog input pin
    86           //for (int i = 0; i < 6; i++) {
     91          // java script auto reload
     92          client.println("<script language=\"javascript\">");
     93          client.println("setTimeout(\"self.location.reload();\",4000);");
     94          client.println("</script>");
     95
     96         
     97          // output the value of each digital and analog input pin
     98          for (int i = 0; i < 14; i++) {
     99            client.print("Digital Pin ");
     100            client.print(i);
     101            client.print(" is ");
     102            client.print(digitalRead(i));
     103            client.println("<br />");
     104          }
     105          for (int i = 0; i < 6; i++) {
     106            client.print("Analog Pin ");
     107            client.print(i);
     108            client.print(" is ");
     109            client.print(analogRead(i));
     110            client.println("<br />");
     111          }
     112         
     113          // AC and DC value for smart scoket
     114          /*
    87115          client.print("DC VAL = ");
    88           //  client.print(i);
    89           //  client.print(" is ");
    90116          client.print(analogRead(DC_read));
    91117          client.println("<br />");
     
    93119          client.print(analogRead(AC_read));
    94120          client.println("<br />");
    95           //}
     121          */
     122         
    96123          client.println("<form  method=get name=form>");
    97124          client.println("<button name=b value=01 type=submit>DC On</button>");
    98125          client.println("<button name=b value=02 type=submit>DC Off</button><br />");
    99126          client.println("<button name=b value=03 type=submit>AC On</button>");
    100           client.println("<button name=b value=04 type=submit>AC Off</button>");                 
     127          client.println("<button name=b value=04 type=submit>AC Off</button>");
     128          client.println("<button name=b value=05 type=submit>IP:251</button><br />");   
     129          client.println("<button name=b value=06 type=submit>IP:250</button>");   
    101130          client.println("</form>");
    102131          break;
    103          
    104132        }
    105133        if (c == '\n') {
     
    124152          {
    125153            client.print("ID="); client.print(id); client.print(",");
     154            client.print("DC_voltage"); client.print(DC_V); client.print(",");
    126155            client.print("DC_val="); client.print(analogRead(DC_read)); client.print(";");
    127156            client.print("DC_control="); client.print(digitalRead(DC_control)); client.print(";");
     157            client.print("AC_voltage"); client.print(AC_V); client.print(",");
    128158            client.print("AC_val="); client.print(analogRead(AC_read)); client.print(";");
    129159            client.print("AC_control="); client.print(digitalRead(AC_control)); client.println(";");
     
    154184          if (!strcmp(command, "04") )
    155185          {
    156             //Serial.println("low pin 3");
    157186            digitalWrite(AC_control, LOW);
    158             //nss.print("A");
    159             //nss.print(byte(0x02));
     187          }
     188          // change IP
     189          if (!strcmp(command, "05") )
     190          {
     191            byte ip[] = { 192, 168, 1, 251 };
     192            Ethernet.begin(mac, ip);
     193            server.begin();
     194          }
     195          if (!strcmp(command, "06") )
     196          {
     197            byte ip[] = { 192, 168, 1, 250 };
     198            Ethernet.begin(mac, ip);
     199            server.begin();
    160200          }
    161201        }