Salve a tutti, sono nuovo nell'ambiente.
Sto cercando di programmare una scheda Arduino uno con Ethernet Shield per inviare dei ping ad alcune periferiche della rete ma non riesco neppure a compilare gli esempi forniti con la libreria ICMPPing.
Qualcuno ha riscontrato lo stesso problema?
Buongiorno,
prima di tutto ti segnalo che, nella sezione in lingua Inglese, si può scrivere SOLO in Inglese ... quindi, per favore, la prossima volta presta più attenzione in quale sezione metti i tuoi post; questa volta esso è stato spostato, da un moderatore della sezione di lingua Inglese, nella sezione di lingua Italiana ... la prossima volta potrebbe venire direttamente eliminato, dopo di che ...
... essendo il tuo primo post, nel rispetto del regolamento dellasezione Italiana del forum (… punto 13, primo capoverso), tichiedo cortesemente di presentarti IN QUESTO THREAD (spiegando bene quali conoscenze hai di elettronica e di programmazione ... possibilmente evitando di scrivere solo una riga di saluto) e di leggere con molta attenzione tutto il succitato REGOLAMENTO ... Grazie.
Guglielmo
P.S.: Ti ricordo che, purtroppo, fino a quando non sarà fatta la presentazione nell’apposito thread, nel rispetto del suddetto regolamento nessuno ti risponderà (eventuali risposte verrebbero temporaneamente nascoste), quindi ti consiglio di farla al più presto.
Grazie per le info, in effetti non avevo letto il regolamento per intero.
sono entrato nella pagina del link , vedo le presentazioni degli altri utenti ma non riesco a capire come aggiungere la mia. mi puoi dare un aiuto?
Con lo stesso sistema con cui rispondi qui, rispondi di la e metti la tua presentazione
Guglielmo
presentazione fatta. grazie.
ora devo riproporre la mia domanda?
No, no, se passerà qualcuno che può aiutarti, sicuramente lo farà ... ma considera il periodo di vacanze
Guglielmo
Noi diremmo che il primo passo sarebbe copiare qui gli errori che ti da in compilazione
Da IDE 1.8.9, tra le librerie che propone l'ide, ricercando sia con "ICMPPing" che "ICMP Ping" non trova nulla.
L'hai scaricata da un link esterno al IDE ? Se si, posta il link alla libreria che hai scaricato.
@nid69ita: cercando con Google si trova una prima versione della libreria, scritta da tal BlakeFoster che è fatta per lavorare con il W5100 dopo di che si trova un branch fatto da NicksonYap modificato per usare il W5500 ... quindi dipende sia dalla versione dello shield Ethernet che sta usando (non ci ha detto quale) sia dalla versione della libreria che supporta un hardware piuttosto che un'altro.
In ogni caso sembra che vadano installate manualmente al posto giusto (è roba di 10 anni fa e non è conforme all'attuale standard di "libreria" richiesto dall'IDE).
Guglielmo
Scusate l'assenza ma rientro solo ora. innanzitutto grazie per le risposte. cercherò di essere piu preciso. sto usando un arduino uno r3 con shield ethernet w5100. L'ide è la relise 2.2.1, l'ultima scaricata. Sembra che la libreria ICMPPING sia l'unica nel suo genere per inviare ping via ethernet ma non riesco a compilarla neppure se utilizzo gli esempi forniti. purtroppo non sono cosi esperto per riuscire a trovare il problema. questo è il testo dell'errore restituito
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp: In member function 'bool ICMPPing::waitForEchoReply()':
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:79:16: error: 'class W5100Class' has no member named 'getRXReceivedSize'
while (!W5100.getRXReceivedSize(socket))
^~~~~~~~~~~~~~~~~
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp: In member function 'size_t ICMPPing::sendEchoRequest(byte*)':
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:93:11: error: 'class W5100Class' has no member named 'send_data_processing'
W5100.send_data_processing(socket, (uint8_t )&echoReq, sizeof(EchoRequest));
^~~~~~~~~~~~~~~~~~~~
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp: In member function 'uint8_t ICMPPing::receiveEchoReply(byte, uint8_t&, time_t&)':
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:113:8: error: 'class W5100Class' has no member named 'read_data'
W5100.read_data(socket, (uint8_t *)buffer, header, sizeof(header));
^~~~~~~~~
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:113:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
W5100.read_data(socket, (uint8_t *)buffer, header, sizeof(header));
^~~~~~
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:119:8: error: 'class W5100Class' has no member named 'read_data'
W5100.read_data(socket, (uint8_t *)buffer, (uint8_t *)&echoReply, dataLen);
^~~~~~~~~
c:\Users\HP\Documents\Arduino\libraries\ICMPPing\ICMPPing.cpp:119:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast]
W5100.read_data(socket, (uint8_t *)buffer, (uint8_t *)&echoReply, dataLen);
^~~~~~
Più di una libreria trovata per "Ethernet.h"
Usata: C:\Users\HP\Documents\Arduino\libraries\Ethernet
Non usata: C:\Users\HP\AppData\Local\Arduino15\libraries\Ethernet_old
exit status 1
Compilation error: exit status 1
come vedete gli errori sono diversi, tuttavia trovo strano che non riesca a compilare neppure l'esempio. ne deduco che possa essere un problema di IDE ma non saprei quale.
Se non posso utilizzare questa libreria e se è obsoleta non ce n'è una piu aggiornata che posso utilizzare?
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.