30/09/14 9:42
Il_maca
Salve a tutti,
sono alle prese con un nuovo mondo e sto riscontrando qualche problema
In sostanza ho necessità di elaborare delle stringhe che ricevo su porta seriale, sul mio BeagleBone Black (con Debian).
La porta seriale è la /dev/ttyO0.
La comunicazione funziona, in quanto con il comando
visualizzo correttamente ciò che mando dall'altro computer.
Il problema è che mi servirebbe catturare queste stringhe ed elaborarle con un linguaggio di programmazione. Ho quindi optato per il c++.
Qualcuno potrebbe indicarmi un modo per farlo? Magari in modo asincrono (come ho fatto per vb.net con un handler)... O se esiste qualche guida specifica...
Edit:
stavo guardando in giro, in attesa di una risposta, ed ho trovato questa guida:
en.wikibooks.org/wiki/Serial_Programming/…
( in realtà l'esempio è in C, I KNOW)
Ma come temevo, il ciclo while che lui effettua per leggere costantemente dalla seriale, mi manda il processore del BeagleBone alle stelle... Questa applicazione dovrà girare per ORE (Circa 15-17 al giorno) di continuo, quindi non credo sia la soluzione più adeguata.
In VB.NET ho potuto impostare un evento alla ricezione dei dati su seriale. In C++ sarebbe possibile una cosa del genere?
Edit 2:
Ok, ho trovato SIGTTIN, un segnale di interrupt generato quando viene scritto sulla seriale... dovrei ora impostare l'evento
sono alle prese con un nuovo mondo e sto riscontrando qualche problema
In sostanza ho necessità di elaborare delle stringhe che ricevo su porta seriale, sul mio BeagleBone Black (con Debian).
La porta seriale è la /dev/ttyO0.
La comunicazione funziona, in quanto con il comando
cat /dev/ttyO0
visualizzo correttamente ciò che mando dall'altro computer.
Il problema è che mi servirebbe catturare queste stringhe ed elaborarle con un linguaggio di programmazione. Ho quindi optato per il c++.
Qualcuno potrebbe indicarmi un modo per farlo? Magari in modo asincrono (come ho fatto per vb.net con un handler)... O se esiste qualche guida specifica...
Edit:
stavo guardando in giro, in attesa di una risposta, ed ho trovato questa guida:
en.wikibooks.org/wiki/Serial_Programming/…
( in realtà l'esempio è in C, I KNOW)
Ma come temevo, il ciclo while che lui effettua per leggere costantemente dalla seriale, mi manda il processore del BeagleBone alle stelle... Questa applicazione dovrà girare per ORE (Circa 15-17 al giorno) di continuo, quindi non credo sia la soluzione più adeguata.
In VB.NET ho potuto impostare un evento alla ricezione dei dati su seriale. In C++ sarebbe possibile una cosa del genere?
Edit 2:
Ok, ho trovato SIGTTIN, un segnale di interrupt generato quando viene scritto sulla seriale... dovrei ora impostare l'evento
Ultima modifica effettuata da Il_maca 30/09/14 12:59
aaa