Gambas-it
Archivi (sola lettura) => Programmazione (Gambas 2) => Topic aperto da: Michele - 07 Settembre 2009, 21:12:02
-
Domanda impossibile
esiste la possibilità in Gambas di comunicare con un dispositivo USB?
Per intenderci, in passato con l'ausilio di un microcontrollore PIC ho realizzato un piccolo dispositivo con interfaccia USB
mediante una DLL (allora usavo VB) ero in grado di riconoscere e comunicare con il dispositivo stesso
Si può fare anche con Gambas in UBUNTU?
-
mhmhm dubito che in questo forum ci sia una preparazione tale ..... ci sono dei progetti in internet riguardanti la domotica e il controllo seriale in gambas ....
comunque poco conta ubuntu .... linux ....
-
Effettuando una ricerca avresti potuto vedere che avevo aperto tempo addietro un post simile...
-
ho cercato male..
grazie della dritta
-
Non me lo ricordavo quel topic ...
Però alla fine il concetto da me espresso era + che corretto :duro:
-
La documentazione è corposa ma interessante
Qualche tempo fa avevo realizzato una schedina utilizzando il firmware fornito dalla Microchip per il PIC 18F4550 e con l'ausilio di una dll e di VB6 sotto Win riuscivo ad accendere un led
Ora do un 'occhiata e vedo se riesco a fare la stessa cosa con il pinguino
purtroppo il tempo a disposizione è scarso ma ci devo provare
ti tengo aggiornato se la cosa può interessare
Michele
-
Ricorda solo una cosa: TUTTO E' UN FILE!
Nel mondo GNU/Linux tutto può essere gestito come un file purchè fatto nel modo giusto.
-
Sbirciando la documentazione ho visto che ci sono parecchie routine per la gestione delle comunicazioni con dispositivi USB
sono scritte per la maggior parte in C
Sarebbe veramente bello avere a disposizione una classe per gambas come la
HID.DLL del corrispondente VB6
Molto interessante il corso e le risorse messe a disposizione da Microchip(naturalmente per solo per Win)
ho provato a collegare una schedina USB con un PIC ed in effetti nella cartella /dev/usb si generano alcuni file
ora provo a capirne il senso
-
prova anche dopo aver collegato la scheda a lanciare il comando
poi usi la riga corrispondente alla tua scheda per effettuare una ricerca
-
Sezione download, progetto "upsmon".
E' un mio vecchio progettino per testare Gambas; gestisce in lettura una porta seriale e decodifica alcune informazioni relative ad un UPS.
Può servire come base per capire come funziona la gestione delle porte con Linux e Gambas.
-
Girovagando per la rete ho trovato questo
http://pic-linux.foroactivo.net/t248-de-nuevo-gambas-o-lo-que-gusten-pero-ahora-con-usb-cdc (http://pic-linux.foroactivo.net/t248-de-nuevo-gambas-o-lo-que-gusten-pero-ahora-con-usb-cdc)
non parlo lo spagnolo, ma sembra inrteressante
ci capite voi qualche cosa?
-
Qualche idea?
-
Purtroppo, da parte mia, non ho intrapreso ancora alcun interesse verso questa cosa, per cui non ho nemmeno idee in proposito.
Mi dispiace... :-\
-
Periodicamente riapro la discussione se trovo qualche notizia
purtroppo non sono in grado di capire ciò che ho trovato per cui mi affido a chi ne sa di più
la gestione USB mi aprirebbe nuove ed interessanti prospettive per i miei esperimenti elettronici.
Credo inoltre che sarebbe un valore aggiunto notevole per GAMBAS.
Nel frattempo continuo a cercare.
-
Periodicamente riapro la discussione se trovo qualche notizia
purtroppo non sono in grado di capire ciò che ho trovato per cui mi affido a chi ne sa di più
la gestione USB mi aprirebbe nuove ed interessanti prospettive per i miei esperimenti elettronici.
Credo inoltre che sarebbe un valore aggiunto notevole per GAMBAS.
Nel frattempo continuo a cercare.
Credo che bisognerebbe esortare Minisini a rilasciare o scrivere qualcosa in merito. Effettivamente non avere un supporto USB è una pecca che in alcuni casi si fa sentire pesantemente. Immagina cosa potrebbe fare il software MeteoMachine se avessimo a disposizione la possibilità di leggere flussi di dati da questo tipo di device! Ci si aprirebbe un mondo!!!
-
Dobbiamo scrivere direttamente a Minisini?
-
No, tocca scrivere le librerie... :P
A parte gli scherzi, non sò se potrebbe essere conveniente creare un qualcosa di simile. Ormai viene tutto demandato a programmi e librerie esterne, e l'ampiezza di utilizzo potrebbe non incentivare lo studio.
A suo tempo, nella versione 1, era stata implementata un qualcosa del genere, rivolta alla porta seriale, ma non era altro che l'apertura di uno stream verso il device, per cui wtutta la serie di controlli, comandi e quant'altro, era demandato al programma.
La stessa cosa può essere fatta con la usb, e con altri device, ma sottintende una conoscenza del protocollo usato, e poi creare una serie di funzioni apposite per gestirlo, così come per una seriale.
Quello che suppongo chiedi, è la possibilità di disporre appunto di una libreria che faccia da strato superiore, e che gestisca il protocollo in modo trasparente. Questo ovviamente si può fare, ma come ho detto, tocca conoscere bene la comunicazione tramite le usb.
Con questo non voglio mettere limiti, nel senso che Minisini potrebbe avere pure voglia di farlo, ma a mio parere non penso che si metta ad intraprendere il discorso.
-
Se l'ipotesi di avere una libreria interna a gambas è remota sarebbe interessante poter disporre e integrare librerie esterne, ma dove trovarle?
Python ha qualche cosa di simile?
-
...sarebbe interessante poter disporre e integrare librerie esterne....
Certo che se si riuscisse ad individuare una libreria esterna, sarebbe semplice gestirne le funzioni con Extern.
Vorrei, però, portare una mia diretta esperienza circa l'usb, quando ho dovuto sbattere duramente la testa :hard: per individuare le possibili modalità di "ricezione" di messaggi Midi da una tastiera musicale esterna, collegata al computer appunto via USB.
Una delle possibilità è stata andare a "vedere" il file-device creato dal sistema ALSA e relativo a quel dispositivo esterno, rintracciabile - in questo caso - in /dev/snd/xxx.
......ma se eventualmente il dispositivo - collegato via USB - non viene riconosciuto dal sistema operativo ?
-
...sarebbe interessante poter disporre e integrare librerie esterne....
...ma se eventualmente il dispositivo - collegato via USB - non viene riconosciuto dal sistema operativo ?
In quel caso credo si possa fare ben poco visto che deve essere il sistema a metterci in contatto con la porta...:-)
-
Per il PIC ho trovato questo: http://openprog.altervista.org/USB_firm_ita.html
Per la questione più in generale penso possa essere utile questo: http://www.lrr.in.tum.de/Par/arch/usb/usbdoc/
ma anche questo:
http://www.linux-usb.org/
http://www.lrr.in.tum.de/Par/arch/usb/usbdoc/
http://anaconda.cs.pub.ro/~razvan/books/lin-kernel/Programming%20Guide%20for%20Linux%20USB%20Device%20Drivers.pdf (vedi pagina 65)
http://www.usb.org
La libreria con funzioni C per la gestione dell'USB (e quindi quella utilizzabile con Gambas) è la libreria: libusb.so :
http://libusb.sourceforge.net/api-1.0/index.html
-
Possiamo aggiungere anche questa guida redatta dall'iscritto al forum Ste86:
http://www.gambas-it.org/smf/index.php?action=dlattach;topic=2266.0;attach=2561