Reducing SRAM size


i need reducing size of flash have more 893 bytes. here code:
code: [select]
#include <spi.h>
#include <ethernetv2_0.h>
#include <sd.h>

#define w5200_cs  10
#define sdcard_cs 4

int pins[] = {2};
byte mac[] = {0x00, 0xaa, 0xbb, 0xcc, 0xde, 0x02};
ethernetserver server(80);

void setup() {
  (int = 0; < sizeof(pins) / sizeof(pins[0]); i++)
  {
    pinmode(pins[i], output);
    digitalwrite(pins[i], low);
  }
  serial.begin(9600);
  serial.println("initializing sd card...");
  if (!sd.begin(4)) {
    serial.println("sd card initialization failed!");
    return;
  }
  serial.println("sd card initialized.");
  serial.println("attempting configure dhcp...");
  while (ethernet.begin(mac) == 0) {
    serial.println("dhcp configuration failed. trying again...");
  }
  server.begin();
  serial.print("the server can accessed at: ");
  serial.println(ethernet.localip());
}

void loop() {
  ethernetclient client = server.available();
  if (client) {
    serial.println("new client");
    boolean currentlineisblank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        serial.write(c);
        if (!client.find("pin=")) {
          sendhtmlheader(client);
          file webfile = sd.open("index.htm");
          if (webfile) {
            while (webfile.available()) {
              client.print(webfile.read());
              serial.println("sent file client.");
            }
            webfile.close();
          } else {
            serial.println("unable open index.htm.");
          }
          break;
        } else {
          int pinnumber = (client.read() - 48);
          int secondnumber = (client.read() - 48);
          if (secondnumber >= 0 && secondnumber <= 9) {
            pinnumber *= 10;
            pinnumber += secondnumber;
          }

          bool validpin = false;
          (int = 0; < sizeof(pins) / sizeof(pins[0]); i++) {
            if (pinnumber == pins[i]) {
              validpin = true;
            }
          }

          string pinstate = "alert(\"";
          if (validpin) {
            digitalwrite(pinnumber, !digitalread(pinnumber));

            pinstate += "pin ";
            pinstate += pinnumber;
            pinstate += " ";
            if (digitalread(pinnumber)) {
              pinstate += "on";
            } else {
              pinstate += "off";
            }
          } else {
            pinstate = "pin ";
            pinstate += pinnumber;
            pinstate += " not valid pin.";
          }
          pinstate += "\");";

          // send http response browser/client
          sendhtmlheader(client);
          client.println(pinstate);
          break;
        }
      }
    }
    delay(1);
    client.stop();
    serial.println("client disonnected");
  }
}

any ideas? use asap...

for start use f macro serial print calls:-
https://playground.arduino.cc/learning/memory


Arduino Forum > Using Arduino > Project Guidance > Reducing SRAM size


arduino

Comments

Popular posts from this blog

Flip address is out of range arduino uno r3

Arduino Uno not uploading

Indesign and MathType fonts