Go Down

Topic: Seriale occupata con Ethernet shield quando programmo Arduino? (Read 981 times) previous topic - next topic

easy

Salve a tutti, mi sto occupando da poco di Arduino è ho un piccolo problema.
Ho caricato un webserver che posso raggiungere grazie alla Ethernet shield. Il problema nasce quando tento di programmarla in quanto ottengo sempre un messaggio di porta com10 occupata. Se stacco la Ethernet shield posso riprogrammare arduino senza problemi. e' normale cosi oppure posso ovviare? Ho provato sia su Ubuntu 13.04 che su win7 con lo stesso risultato. Grazie 1000

uwefed

che modello di Arduino e di scheda Ethernet hai?
Ciao Uwe

easy

sono cloni di Arduino uno rev 3 e la shield basata sul Wiznet W5100. non so se aiuta :)

gpb01

... aiuta se indichi ESATTAMENTE quali sono gli oggetti ... es. link al sito dei venditori dove, magari, si riescono a leggere un po' più di informazioni !!!

Guglielmo
Search is Your friend ... or I am Your enemy !

uwefed

Il W5100 comunica tramite la SPI con Arduino. Un shield Ethernet non dovrebbe bloccare la seriale con cui comunica col PC. Devi darci precisamente cosa stai usando.
Ciao Uwe

easy

Sorry ... pensavo non si potessero mettere link.  XD

Purtroppo però trovo solo un link alla scheda ethernet

http://dx.com/p/ethernet-shield-with-wiznet-w5100-ethernet-chip-tf-slot-118061

Ho provato più volte ma puntualmente, ogni volta che devo programmare, devo separare Arduino dalla scheda ethernet, altrimenti ottengo un qualcosa di simile a: "la porta COM è in uso da qualche altro programma, chiudetelo e riprovate".

Uso la 1.0.4 su COM10 su WIN7

Grazie!

uwefed

Odio i prodotti per Arduino che non danno lo schema.
Quella Ethernet Shield ha un connettore con 2 LED. controlla un po con quali pin sono collegati. incomincia con i pin D0 e D1.
Ciao Uwe

easy

Stavo riprovando con ubuntu 12.04 e dopo qualche attacca e stacca USB sono riuscito a scrivere il programma blink al posto del webserver di prima SENZA separare le schede! :)

Però adesso volevo rimettere su il webserver ma mi serve la libreria WebServer.h se tento di copiarla nella dir delle librerie Ubuntu mi dice che non ho i permessi sufficienti (anche se sono admin) ... ma come??? Mi viene da sbattere la testa al muro! eheheh

leo72

Chiudi l'IDE, vai in ~/sketchbook, creati una cartella denominata /libraries e poi copia lì dentro le librerie aggiuntive. Riaprendo l'IDE, quelle presenti lì verranno aggiunte in automatico a quelle fornite dall'Arduino.

Prendi l'abitudine di separare le tue lib da quelle di sistema.

easy

Ok ricevuto. Ho finalmente caricato e reso funzionante il mio webserver! :)

Rimane il mistero perchè sotto ubuntu la programmazione avviene con atta e stacca USB, anche se non sempre. Ieri per esempio ho compilato poi scaricato su Arduino, senza staccare nulla, IDE mi ha detto che non trovava la porta (questo lo dice sempre), ho quindi commutato su quella proposta e la programmazione è andata a buon fine, ovviamente con la scheda ethernet collegata. Su windows 7 non ne esco se non scollego la shield con Arduino. Mah ...  :smiley-roll-sweat:

Posso fare una domanda generale su sulle librerie e IDE? Spesso su internet trovo degli esempi che mi danno errore in fase di compilazione. Questo può accadere perché le applicazioni sono sviluppate con librerie obsolete, di cui spesso viene proposto il download, rispetto alla versione di IDE in uso? Ehm ... non so se mi sono spiegato  :smiley-red:

Grazie 1000 per il supporto che mi avete dato! :)

astrobeed


altrimenti ottengo un qualcosa di simile a: "la porta COM è in uso da qualche altro programma, chiudetelo e riprovate".
so la 1.0.4 su COM10 su WIN7


Questo errore non ha nulla a che vedere con la shield o con la UART di Arduino, è un errore dell'IDE che non riesce a comunicare con la seriale virtuale perché risulta impegnata.
Solitamente questo genere di problemi si risolve facendo pulizia delle com virtuali non più utilizzate, disinstallando la Vcom di Arduino per poi reinstallarla.

PaoloP


Spesso su internet trovo degli esempi che mi danno errore in fase di compilazione. Questo può accadere perché le applicazioni sono sviluppate con librerie obsolete, di cui spesso viene proposto il download, rispetto alla versione di IDE in uso?


Man mano che lo sviluppo dell'IDE è andato avanti sono state effettuate varie modifiche al codice dell'IDE stesso, alle librerie allegate all'IDE e a quello che viene definito "core" di Arduino.
Se una libreria di terze parti è stata scritta quando era presenze una certa versione è possibile che con le modifiche delle versioni successive dell'IDE, la libreria si diventata incompatibile.
Quindi ci sono due strade: aggiornare la libreria o cercarne una aggiornata oppure utilizzare una vecchia versione dell'IDE.
Purtroppo le vecchie versioni, i vecchi core, non supportano un certo numero di nuovi prodotti della gamma di Arduino, vedi la Leonardo, l'Explora o la DUE, quindi non è sempre possibile compilare i progetti con le vecchie versioni.
Il mio consigli è sempre quello di cercare librerie aggiornate per la versione dell'IDE attuale.

easy

Grazie a tutti per le pronte risposte  :)

Ho risolto sia la seriale sotto windows 7 (facilissimo bastava reinstallare i driver), sia la compilazione con le librerie aggiornate!

Go Up