Comunicazione C e arduino

Salve a tutti,
Non avendo trovato nnt di nnt per quanto riguarda la comunicazione tra un programma scritto in C e arduino chiedo direttamente a Voi.
Esiste una guida per quanto riguarda la comunicazione tra queste due kose? Premetto ke ho ampie conoscenze di C ( ma non sono mai troppe ).
Come mettersi in " ascolto " della porta che utilizza arduino in un Nostro programma in C? chiaramente evitatemi la porte del terminale dell'Ide di arduino xke nn me ne faccio nnt XD .
In rete non riesco a trovare assolutamente nnt in merito, sul sito dell'arduino è presente una sezione in merito a questo, MA NON CN IL C....

In rete non riesco a trovare assolutamente nnt in merito, sul sito dell’arduino è presente una sezione in merito a questo, MA NON CN IL C…

Dipende, su quale sistema operativo sviluppi?
Quale ide usi?

Comunque in generale da programma C lato PC devi usare le API di sistema.

Per GNU/Linux, c’è qui sul forum qualcosa, ma devi cercare e non posso neanche suggerirti cosa cercare.
Ricodo che l’utente aveva il problema di aprire la connessione con il DTR OFF tramite C, e non vi riusciva, poi a detto che ha risolto ma non come.

Ciao.

MauroTec:
Per GNU/Linux, c'è qui sul forum qualcosa, ma devi cercare e non posso neanche suggerirti cosa cercare.
Ricodo che l'utente aveva il problema di aprire la connessione con il DTR OFF tramite C, e non vi riusciva, poi a detto che ha risolto ma non come.

Se intendi evitare l'autoreset, esiste uno script in Perl che dovrebbe fare ciò.

Se intendi evitare l'autoreset, esiste uno script in Perl che dovrebbe fare ciò.

No leo, un post di una porzione di codice C su *nix che usa le ioctcl, io commentai il post, poi rispose che aveva risolto in C mi pare abbia dato anche un link. Davo delle indicazioni per trovare il post che ormai è di circa 3 mesi fà.

Ciao.

se non erro, almeno su linux, comunicare via seriale vuol dire aprire il file speciale dell'usb (ttyUSB0 o ttyACM0, insomma hai capito) come se fosse un normalissimo file, e lo leggi e scivi tranquillamente.
Non so su windows & mac

clui:
Salve a tutti,
Non avendo trovato nnt di nnt per quanto riguarda la comunicazione tra un programma scritto in C e arduino chiedo direttamente a Voi.
Esiste una guida per quanto riguarda la comunicazione tra queste due kose? Premetto ke ho ampie conoscenze di C ( ma non sono mai troppe ).
Come mettersi in " ascolto " della porta che utilizza arduino in un Nostro programma in C? chiaramente evitatemi la porte del terminale dell'Ide di arduino xke nn me ne faccio nnt XD .
In rete non riesco a trovare assolutamente nnt in merito, sul sito dell'arduino è presente una sezione in merito a questo, MA NON CN IL C....

usi la seriale per spefire dati al Arduino che lui interpreta in un sketch opportuno.
Quarda la libreria firmata per commandare Arduino. Il programma C deve dare quei comandi attraverso la poerta COM giusta a Arduino.
Ciao Uwe

intanto grazie a tutti per le risposte, ho "uploaddato" lo skecht firmata su arduino e tramite il linguaggio processing comando tranquillamente la nostra amata scheda molto semplice come cosa.
Che ne dite è piu' opportuno usare il processing? oppure C, io ho pensato che sarebbe piu' specificato il primo poiche mi permette di creare degli oggetti che si riferiscono alla libreria seriale della scheda.
Percaso avete qualche programma esempio di C interfacciato cn arduino? In rete si trova solo il nulla.
Se sono su Linux dove si trova quel famigerato file seriale? ed in tal caso creando un programma C che devo fare con questo file seriale, lo devo aprire come se fosse un puntatore a file e scrivere delle kose da mandare ad arduino???????? un link, o una guida è gradita XD

Quel file non è un file nel vero senso della parola, è un metafile di connessione ad un dispositivo seriale, l'equivalente di COM su Windows.
Su Linux ogni periferica è un file, accedendo ad un dato file puoi leggere i dati spediti dal dispositivo o spedirne ad esso.

leo72 hai qualche programma esempio?

No, mi spiace. Non uso Processing né ho mai programmato in C puro su Linux.
Però tu hai detto che sai programmare bene, basta quindi che tu apra il file in lettura per ricevere i dati dall'Arduino e scriverci se vuoi inviarglieli.

Se ad esempio apri un terminale e scrivi:

echo "0" > /dev/ttyACM0

vedrai il led RX di Arduino lampeggiare, segno che il dato è arrivato.

basta fare solo questo? XD ok graziee

Il solo problema è ke devo fare continuamente chiamate di sistema,questo rallento molto il programma

Leo ma penso che potresti usare il C o C++ su linux o altro ma anche in Gambas2 basta avere le apposite librerie o API come in Processing del resto.

clui:
Il solo problema è ke devo fare continuamente chiamate di sistema,questo rallento molto il programma

??? apri in lettura e scrittura il file "/dev/ttyACM0" (può variare, è lo stesso file che se noti rileva l'IDE di arduino per quando uppi i programnmi). Se tieni il file aperto per la durata del programma non dovresti avere problemi.

Attento che il firmdata se non erro è un modo per comendare arduino da distanza. quindi le potenzialità di arduino sono carpiate dalla velocità della seriale.