Differenze tra le versioni di "Ricevere dati da Arduino"

Da Gambas-it.org - Wikipedia.
 
(2 versioni intermedie di uno stesso utente non sono mostrate)
Riga 23: Riga 23:
  
  
Il codice presente nell'applicativo Gambas sarà invece il seguente:
+
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
 
  Private SerialPort1 As SerialPort
 
   
 
   
 
   
 
   
  '''Public''' Sub Button1_Click()
+
  Public Sub Button1_Click()
 
    
 
    
 
   With SerialPort1 = New SerialPort As "portaseriale"
 
   With SerialPort1 = New SerialPort As "portaseriale"
Riga 39: Riga 39:
 
   End With
 
   End With
 
    
 
    
  '''End'''
+
  End
 
   
 
   
 
   
 
   
  '''Public''' Sub portaseriale_Read()
+
  Public Sub portaseriale_Read()
 
    
 
    
  Dim b As Byte
+
  Dim b As Byte
 
    
 
    
 
   Read #SerialPort1, b
 
   Read #SerialPort1, b
Riga 50: Riga 50:
 
   ValueBox1.Value = b
 
   ValueBox1.Value = b
 
    
 
    
  '''End'''
+
  End
 
   
 
   
 
   
 
   
  '''Public''' Sub Form_Close()
+
  Public Sub Form_Close()
 
   
 
   
 
   If SerialPort1.Status = Net.Active Then SerialPort1.Close
 
   If SerialPort1.Status = Net.Active Then SerialPort1.Close
 
   
 
   
  '''End'''
+
  End
  
  
  
 +
=Note=
 +
[1] Vedere anche questa esposizione: http://www.gambas-it.org/smf/index.php?topic=2485.msg26661#msg26661
  
=Note=
+
[2] Vedere anche: [[Accesso alle Porte Seriali]]
[1] Segnaliamo anche questa esposizione: http://www.gambas-it.org/smf/index.php?topic=2485.msg26661#msg26661
 

Versione attuale delle 15:03, 25 giu 2024

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