Pages: [1]   Go Down
Author Topic: Arduino Ethernet Shield  (Read 657 times)
0 Members and 1 Guest are viewing this topic.
Fidenza, Parma
Offline Offline
God Member
*****
Karma: 9
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao a tutti ero interessato ad un Ethernet Shield ed ho visto che ce ne sono due in commercio..
Quella ufficiale e quella di nuelectronics..
Il programma che devo fare non deve svolgere nulla di difficile.. deve andare a caricare ogni 30 secondi circa una pagina e scaricare un numero e in base a questo eseguire un'azione..
E deve due volte al giorno inviare dei dati in POST al modem per accendere e spegnere l'interfaccia WiFi
Per fare questo compito quale delle due schede è più consigliata?
Ho visto che una (l'originale) costa più del doppio della tarocca solo che (sembra) molto più facile da programmare..
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2309
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao Guglio,
ti confermo che l'Ethernet Shield originale è più semplice da programmare.
In realtà son entrambe semplici da programmare, ma la libreria creata per lo shield della Nuelectronics ha metodi e funzioni non proprio leggibilissimi  smiley

La differenza sostanzialmente sta nel chipset usato.
L'Ethernet Shield originale usa il WIZnet W5100, mentre l'altra l'ENC28J60.

A dire il vero ci sono più varianti:
che montano il WIZnet w5100 c'è pure il modulo WIZNET WIZ812MJ, che va montato su shield apposito (ce ne son ovarie versioni, della Adafruit e della NKC); che monta il ENC28J60 c'è pure un progetto DIY di una scheda delle dimensioni di una carta di credito che monta anche l'ATMega (lo trovi su Instructables).

Spero di non averti confuso di più le idee!
M
Logged

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 9
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Grazie..
Scarto a priori l'instructable perchè non sono ancora così pratico da riuscire a costruirmi la scheda in casa..
Sono indeciso quindi fra le due schede, tarocca ed ufficiale...

Il codice di quella non ufficiale è come hai detto tu complicato da leggere perchè le funzioni hanno nomi assurdi che non aiutano a capire la loro funzione (scusate il gioco di parole smiley-razz)
Ad esempio in questo codice fornito come esempio
Qual'è la variabile che si valorizza con il contenuto della pagina?
E'  la variabile plen o buf?
Poi faccio anche una domanda un po' scema.. quante volte si ripete lo sketch? Da quello che ho capito io infinite volte visto che alla fine del ciclo la variabile client_data_ready viene riportata a 0... Solo che non vedo nemmeno un delay nel ciclo loop: significa che il ciclo è lentissimo da eseguire o che chi ha creato lo sketch era uno scellerato?
Scusatemi tanto per il tempo che vi rubo..

(Link allo sketch perchè non ci sta nel post  :-?)
http://www.guglio.net/sketch.pde
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

0
Offline Offline
Edison Member
*
Karma: 24
Posts: 2309
Have you mooed today?
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ciao,
il codice che viene eseguito dopo il setup, è il loop, che come dice il nome stesso viene eseguito.. in loop

Nel caso specifico che linki tu (io avrei linkato il codice sul sito originario, o perlomeno avrei citato la fonte), il loop è questo:
Code:
void loop(){
        if(client_data_ready==0){
          delay(60000UL);             // delay 60s
          getCurrentTemp(sensorData);
          client_data_ready = 1;
         }
      client_process();
}

Senza andare a fondo nelle singole funzioni, se la variabile client_data_ready è uguale a 0, allora attende 60 secondi, rileva la temperatura corrente, setta la variabile client_data_ready a 1.
Viene chiamata poi la funzione client_process().
E' questa funzione che eventualmente setta la variabile di cui sopra a 1.
Si tratta fondamentalmente di una variabile di controllo.
« Last Edit: July 30, 2010, 01:49:06 pm by pictux » Logged

Fidenza, Parma
Offline Offline
God Member
*****
Karma: 9
Posts: 783
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

O.o mi scavo una fossa e mi sotterro..
Non so perchè ma i miei occhi hanno saltato quel delay che parla e dice leggimi smiley-razz
Scusami tanto..
Non ho linkato il sito ufficiale solo per non far scaricare tutto lo zip a chi voleva aiutarmi.. comunque il link originale è questo (http://www.nuelectronics.com/download/projects/etherShield.zip)

Mentre c'è un modo per leggere il risultato che la pagina sul webserver invia all' arduino?
Logged

ArduMAP: Mappa degli utenti che utilizzano Arduino.
http://www.guglio.net/ArduMAP

Pages: [1]   Go Up
Jump to: