Ricevere dati da Arduino

Da Gambas-it.org - Wikipedia.
Versione del 25 giu 2024 alle 15:03 di Vuott (Discussione | contributi)

(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Mostriamo un esempio pratico per ricevere dei dati da Arduino. E' necessario attivare il Componente gb.net .

In particolare Arduino invierà un valore progressivamente incrementato con il ciclo previsto dal suo codice, che qui mostriamo:

int val;


void setup() {                
 
  Serial.begin(9600);
 
}


void loop() {

 Serial.write(val);   // Invia il valore contenuto nella variabile "val"
 
 delay(300);          // Resta in attesa per ms 300
 
 ++val;               // Incrementa il valore contenuto nella variabile "val"

}


Il codice dell'applicativo Gambas comunica con la porta seriale "/dev/ttyUSB0" o potrà essere anche “/dev/ttyACM0” (ovviamente il numero finale può essere anche diverso se sono stati connessi altri dispositivi analoghi.)

Private SerialPort1 As SerialPort


Public Sub Button1_Click()
 
  With SerialPort1 = New SerialPort As "portaseriale"
    .PortName = "/dev/ttyUSB0"                         ' Questa porta seriale o quella disponibile
    .Speed = 9600
    .Parity = 0
    .DataBits = 8
    .StopBits = 1
    .FlowControl = 0
    .Open
  End With
  
End


Public Sub portaseriale_Read()
 
  Dim b As Byte
 
  Read #SerialPort1, b
 
  ValueBox1.Value = b
 
End


Public Sub Form_Close()

  If SerialPort1.Status = Net.Active Then SerialPort1.Close

End


Note

[1] Vedere anche questa esposizione: http://www.gambas-it.org/smf/index.php?topic=2485.msg26661#msg26661

[2] Vedere anche: Accesso alle Porte Seriali