Autore Topic: comandare HW  (Letto 2929 volte)

Offline Carlo

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
comandare HW
« il: 18 Novembre 2008, 13:27:58 »
salve a tutti, vorrei sapere come posso comandare tramite gambas una porta seriale oppure una porta LAN
cordiali saluti :ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comandare HW
« Risposta #1 il: 18 Novembre 2008, 15:40:10 »
Per la seriale esiste un mio programmino nella sezione Downloads...

Offline Carlo

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
Re: comandare HW
« Risposta #2 il: 18 Novembre 2008, 18:34:12 »
ma non esiste un comando tipo OUT o IN per comandare una porta di comunicazione?

Penso che io abbia di bisogno di un testo su cui trovare tutte queste informazioni...qual'è il migliore?
cordiali saluti :ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comandare HW
« Risposta #3 il: 19 Novembre 2008, 10:08:45 »
Dato che Gambas è un linguaggio relativamente nuovo, esiste poca letteratura a riguardo, per cui le informazioni al momento le puoi trovare solo nella documentazione sul sito ufficiale, e nei forum come questo.

Riguardo alle funzioni IN/OUT, in gambas non esistono, e del resto, diversamente da quanto era fattibile sotto DOS/Windowz, gli elementi hardware in linux vengono gestiti tutti come devices, accessibili tramite i dev speciali presenti appunto nella directory /dev.
In gambas è stato scelto di gestire gran parte di questi device, come se fossero dei file, per cui si utilizzano per tutti i comandi di gestione file: OPEN, CLOSE, ecc.
Discorso a parte per quanto riguarda i protocolli di comunicazione (vedi tcp, ecc.), ai quali sono dedicate apposite librerie.

Da qualche annetto ho perso il contatto riguardo gli aspetti della programmazione hardware sotto dos/windoz, ma se non ricordo male, con windoz non è più possibile accedere direttamente alle porte, che devono essere pilotate tramite apposite librerie del sistema operativo.

Offline Carlo

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
Re: comandare HW
« Risposta #4 il: 19 Novembre 2008, 16:51:11 »
è proprio vero con win non si riesce a gestire direttamente le porte di comunicazione...e per complicare ancor più le cose ora il 90% dell'HW si connette tramite USB e questa è la prima fra tutte delle porte gestite in virtuale (ovvero gestite tramite un device SW)

Però contunuo a non capire come poter controllare una porta di comunicazione...devo utilizzare un toolkit particolare? e quale?
cordiali saluti :ciao:

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comandare HW
« Risposta #5 il: 20 Novembre 2008, 10:58:44 »
Nessun toolkit!

Hai scaricato il programma upsmon nella sezione download ?

Ad ogni modo, per aprire un canale di comunicazione con la posta seriale con Gambas, devi utilizzare il comando OPEN (c'è un esempio anche sul sito ufficiale):

Codice: [Seleziona]

OPEN "/dev/ttyS0" FOR READ WATCH AS #$handle


il device "/dev/ttyS0" indica la prima porta seriale, ma dipende anche dal tuo sistema operativo, che potrebbe nominare questi devices in modo diverso.
Il comando OPEN apre il canale, come se si trattasse di un file; le istruzioni seguenti: READ indica che il device deve essere aperto in sola lettura, WATCH permette, tramite apposito metodo, la lettura dei dati da programma ogni volta che si presentato sulla porta seriale, diciamo come se si attivasse un interrupt.

Oltre al comando OPEN, esistono poi tutta una serie di comandi per: lettura, scrittura, chiusura, ecc. Puoi dare un'occhiata alla doc ufficiale...

Offline Carlo

  • Gamberetto
  • *
  • Post: 11
    • Mostra profilo
Re: comandare HW
« Risposta #6 il: 20 Novembre 2008, 14:59:16 »
..........GRAZIEEEEEEEEEE................
 :incredibile:  :incredibile:  :incredibile:
cordiali saluti :ciao:

Offline vuott

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 11.683
  • Ne mors quidem nos iunget
    • Mostra profilo
Re: comandare HW
« Risposta #7 il: 27 Agosto 2011, 03:15:24 »
... WATCH permette, tramite apposito metodo, la lettura dei dati da programma ogni volta che si presentato sulla porta seriale, diciamo come se si attivasse un interrupt.

..."l'apposito metodo" sarebbe - per esempio - questo ?

 PUBLIC SUB File_Read()
   DIM iByte AS Byte
  READ #$hCapture, iByte
 ....
« Chiunque, non ricorrendo lo stato di necessità, nel proprio progetto Gambas fa uso delle istruzioni Shell o Exec, è punito con la sanzione pecuniaria da euro 20,00 a euro 60,00. »

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comandare HW
« Risposta #8 il: 29 Agosto 2011, 12:59:52 »
+/-

negli esempi di gambas c'è qualcosa che ti può essere utile nel capire come funzia...