Go Down

Topic: Ethernet Shield Wiznet5100 + Leitor SD [É possível] (Read 1 time) previous topic - next topic

Fernando_Estevam

Galera,

eu tenho uma dúvida.
É possivel eu utilizar o ethernet shield como servidor web e também utilizar o leitor SD dele(simultaneamente)?

Obrigado.

Depende do modelo. As últimas versões dos escudos ethernet oficiais, permitem isso. As (ou a) primeira e muitas imitacões não o permitem.
Eu não sou o teu criado. Se respondo no fórum é para ajudar todos mediante a minha disponibilidade e disposição. Responder por mensagem pessoal iria contra o propósito do fórum e por isso evito-o.
Se realmente pretendes que eu te ajude por mensagem pessoal, então podemos chegar a um acordo e contrato onde me pagas pela ajuda que eu fornecer e poderás então definir os termos de confidencialidade do meu serviço. De forma contrária toda e qualquer ajuda que eu der tem de ser visível a todos os participantes do fórum (será boa ideia, veres o significado da palavra fórum).
Nota também que eu não me responsabilizo por parvoíces escritas neste espaço pelo que se vais seguir algo dito por mim, entende que o farás por tua conta e risco.

Dito isto, mensagens pessoais só se forem pessoais, ou seja, se já interagimos de alguma forma no passado ou se me pretendes convidar para uma churrascada com cerveja (paga por ti, obviamente).

Fernando_Estevam

Obrigado.

Você já viu lagum exemplo de codificação da utilização dos dois?

Vou dar uma pesquisada.

Abraço

Kotch

Eu uso este!

"NAO SOU VENDEDOR DO PRODUTO"
http://produto.mercadolivre.com.br/MLB-177648457-modulo-ethernet-enc28j60-para-arduino-pic-avr-8051-_JM

e isto

http://arduino.cc/forum/index.php/topic,59248.0.html

e estas libs com este programa

#include "sd_reader_config.h"
#include "sd_raw.h"
#include "sd_raw_config.h"

int print_disk_info();
int sample();
int readDisk();

byte incomingByte;
void printWelcome();
long int address;
byte tempBytes[2];


void setup()
{

  Serial.begin(9600);
  delay(1000);

  printWelcome();
  if(!sd_raw_init())
  {
     Serial.println("MMC/SD initialization failed");
  }
  print_disk_info();
}



void loop()
{
    int i;

    if(Serial.available()>0)
    {
      incomingByte=Serial.read();

    switch(incomingByte)
    {
        case 114:
            readDisk();
            break;
        case 115:
            sample();
            break;
        default:
            break;
    }
    }
}

int sample()
{
    int i,j;
    int temp;
    byte low;
    byte high;
    byte inByte;

    Serial.println();
    Serial.println();
    Serial.println("Sampling..");
    for(i=0;i<500;i=i+2)
    {
     if(Serial.available()>0)
     {
      inByte=Serial.read();
      if(inByte==113) return 0;
     }
     temp=analogRead(0);
     Serial.print(temp,DEC);
     Serial.print(" ");

     //Convert int to 2 bytes
     low=temp&0xFF;
     high=temp>>8;
    // Serial.print(temp,DEC);
     //Serial.print(low,DEC);
     //Serial.print(high,DEC);

     tempBytes[0]=low;
     tempBytes[1]=high;

     if(!sd_raw_write(i,tempBytes,2))
     {
       Serial.print("Write error");
     }
     //sd_raw_sync();
     delay(5000);

  Serial.println();

    }

    return 1;
}


int readDisk()
{
    byte low;
    byte high;
    byte info[2];
    int i;
    int  result;
    Serial.println();
    for(i=0;i<50;i=i+2)
    {
     sd_raw_read(i,info,2);

     //Serial.print(info[0],DEC);
     //Serial.print(" ");
     //Serial.print(info[1],DEC);
     low=info[0];
     high=info[1];
     result=high<<8;
     //result<<8;
     Serial.print(" ");
     Serial.print(result+low,DEC);
     Serial.print(" ");
    }

}

void printWelcome()
{
    Serial.println("------------------------");
    Serial.println("Data sampling system");
    Serial.println("send r to read disk");
    Serial.println("send s to start sampling");
    Serial.println("send q to stop sampling");
    Serial.println("Ready.....");
    Serial.println("-------------------------");
}


int print_disk_info()
{


    struct sd_raw_info disk_info;
    if(!sd_raw_get_info(&disk_info))
    {
     return 0;
    }


    Serial.println();
    Serial.print("rev:    ");
    Serial.print(disk_info.revision,HEX);
    Serial.println();
    Serial.print("serial: 0x");
    Serial.print(disk_info.serial,HEX);
    Serial.println();
    Serial.print("date:   ");
    Serial.print(disk_info.manufacturing_month,DEC);
    Serial.println();
    Serial.print(disk_info.manufacturing_year,DEC);
    Serial.println();
    Serial.print("size:   ");
    Serial.print(disk_info.capacity,DEC);
    Serial.println();
    Serial.print("copy:   ");
    Serial.print(disk_info.flag_copy,DEC);
    Serial.println();
    Serial.print("wr.pr.: ");
    Serial.print(disk_info.flag_write_protect_temp,DEC);
    Serial.print('/');
    Serial.print(disk_info.flag_write_protect,DEC);
    Serial.println();
    Serial.print("format: ");
    Serial.print(disk_info.format,DEC);
    Serial.println();
    Serial.print("free:   ");

    return 1;
}






????????????????????


Go Up