spacer.png, 0 kB

Torna indietro   Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale > Robotica di base > Informatica > P. in Visual Basic

Rispondi
 
Strumenti discussione Modalità  visualizzazioe
  #1  
Vecchio 26-08-2009, 22.30.08
L'avatar di ribellion
ribellion ribellion non è collegato
Robottaro sostenitore
 
Data registrazione: 05-01-2007
Residenza: London
Messaggi: 838
Potenza reputazione: 124
ribellion La sua reputazione è oltre la sua famaribellion La sua reputazione è oltre la sua famaribellion La sua reputazione è oltre la sua fama
Predefinito valore incrementale, come faccio a definire lo stop?

salve a tutti

questa sera come da titolo ho un paio di semplici domandine riguardanti il vb 2008 di cui non ho trovato la risposta nemmeno su msdn.


dunque ho scritto un programmino che mi comanda un servo tramite la seriale e una scheda di interfaccia basata su pic 18f2550 (la muln) e ho una variabile che voglio venga incrementata di 5 ogni 100 ms.

per questo ho già provveduto, prendiamo per esempio la mia variabile R1

R1= 1500

la routine prevede che se viene tenuto premuto il tasto w questo valore incrementi di 5 ogni 5 ms.

Se io però volessi incrementare di 5 fino a raggiungere il valore 2000 e poi fermarmi e fare in modo che l'ultimo comando inviato sia 2000 prima di attendere che venga rilasciato il tasto come dovrei fare?
__________________
Zipporobotics : http://www.zipporobotics.com
Rispondi citando
  #2  
Vecchio 27-08-2009, 00.21.18
gyppe gyppe non è collegato
Robottaro sostenitore
 
Data registrazione: 24-03-2009
Residenza: sardegna
Età : 38
Messaggi: 1,250
Potenza reputazione: 93
gyppe La sua reputazione è oltre la sua famagyppe La sua reputazione è oltre la sua fama
Predefinito

Beh dai è banale non capisco il problema.

SE r1 >= 2000 ALLORA r1 = 2000

In basic diventa: IF r1 >= 2000 THEN r1 = 2000.
Rispondi citando
  #3  
Vecchio 27-08-2009, 09.43.25
L'avatar di ribellion
ribellion ribellion non è collegato
Robottaro sostenitore
 
Data registrazione: 05-01-2007
Residenza: London
Messaggi: 838
Potenza reputazione: 124
ribellion La sua reputazione è oltre la sua famaribellion La sua reputazione è oltre la sua famaribellion La sua reputazione è oltre la sua fama
Predefinito

per quanto semplice fosse in vb mi metteva un po in confusione, e una è risolta, grazie gyppe


ora però c'è il secondo problema. mentre io tengo premuto il tasto, quando arriva a 2000 come valore, vb continua a inviare il valore 2000 periodicamente, ora potrei configurare il timer in modo che arrivato a 2000 invii il comando e poi attenda attenda almeno 1 minuto prima di reinviarlo (sempre che non venga mollato il tasto).

Se invece volessi proprio che il comando lo inviasse solo una volta, non so se esiste la funzione wait, per esempio wait for event keyup
__________________
Zipporobotics : http://www.zipporobotics.com
Rispondi citando
  #4  
Vecchio 27-08-2009, 10.01.36
L'avatar di astrobeed
astrobeed astrobeed non è collegato
Robottaro sostenitore
 
Data registrazione: 18-03-2004
Residenza: Roma
Età : 59
Messaggi: 3,377
Potenza reputazione: 346
astrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua famaastrobeed La sua reputazione è oltre la sua fama
Predefinito

Citazione:
Orginalmente inviato da ribellion Visualizza messaggio
ora però c'è il secondo problema. mentre io tengo premuto il tasto, quando arriva a 2000 come valore, vb continua a inviare il valore 2000 periodicamente, ora potrei configurare il timer in modo che arrivato a 2000 invii il comando e poi attenda attenda almeno 1 minuto prima di reinviarlo (sempre che non venga mollato il tasto).

Anche questa è molto semplice da risolvere, basta che setti un flag quando la variabile di controllo arriva agli estremi, diciamo 1000 e 2000, e la sub che invia la stringa verifica che il flag non sia attivo e se lo è non esegue la trasmissione.
Ovviamente il flag deve essere gestito dalla sub che verifica la pressione del tasto e lo deve resettare quando premi il tasto opposto.
__________________
Bye
Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione
Modalità  visualizzazioe

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code è Attivato
Le smilies sono Attivato
[IMG] è Attivato
Il codice HTML è Disattivato

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
Restituzione valore variabile funzione Massy82 P. in C, C++ 11 28-10-2012 10.25.02
Che faccio, li prendo? networm Elettronica 0 14-10-2008 01.35.25
Encoder incrementale dariodimaio Elettronica 2 22-04-2006 13.49.40
Quale valore di coppia? Paky Forum generale 1 03-07-2004 15.28.46


Tutti gli orari sono GMT. Adesso sono le: 06.59.38.


Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Realizzazione siti web Cobaltica Foligno
spacer.png, 0 kB