Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    7

    [VB.NET] Come inviare dei singoli bit sulla seriale con un timer

    Salve . Come da titolo , vorrei riuscire ad inviare dei bit alla seriale tramite un timer .
    In pratica il timer riesco a gestirlo ma non so come impostare il timer_trick .Una volta impostato l'intrvall nell'if timer.interval=xx then cosa devo metterci ?
    Grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    7
    Scusate ma ho dimenticato di mettere [VB.NET] nel titolo e non riesco a modificarlo

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Non si possono inviare singoli bit con il protocollo seriale. Devi inviare almeno un byte.

    Per quanto riguarda il timer, prima di tutto, a che ti serve?

    Devi esporre chiaramente il problema, non sappiamo tutto quello che stai facendo o hai fatto.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    7
    Ok,vi spiego a grandi linee il progetto . In una textbox inserisco un valore X in esadecimale . prendiamo come esempio il valore F7 = 11110111 . Ora do un valore di tempo ad ogni singolo bit , 1 = interval 1000 e 0 = interval 2000 . Il software deve inviare un bit tramite seriale seguendo il tempo dettato dall'interval . Risultato :

    1000 1000 1000 1000 2000 1000 1000 1000

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ok, ma un bit non lo puoi inviare e neanche ricevere. Invierai un byte con il bit che ti serve nella posizione che deciderai. Tutto dipende dal dispositivo che riceve (che comunque riceve un byte).
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    7
    Nelle tempistiche rientro anche inviando tutto il byte . Il problema sta che ad ogni invio da parte del timer_trick verrebbe generato il bit di start se non sbaglio . Lo si può eliminare ?

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Timer_Tick non Trick ...

    Il bit di start è parte del protocollo seriale. Non puoi eliminarlo e non capisco cosa c'entri la tempistica ... se devi operare più velocemente, aumenta la velocità con cui sono scambiati i dati.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2014
    Messaggi
    7
    Errore di battitura , sorry
    La tempistica mi serve perchè il segnale deve essere inviato ogni x msecondi . Alla scheda che riceve il segnale non interessa la seguenza dei bit perchè non la legge , riceve un segnale che impiega per fare qualcosa .

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Beh, allora gestisci la velocità di trasmissione.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  10. #10
    Secondo me è una pessima idea usare la seriale per una cosa di questo tipo: la RS232 usa un suo particolare protocollo (per quanto semplice), se devi implementare un protocollo differente non è l'interfaccia adatta. Io userei la porta parallela (che consente di alzare o abbassare i singoli segnali come e quando ti pare) oppure userei un microcontrollore esterno per gestire tutti gli aspetti di timing e gestione del protocollo che usi con il tuo device, e che dall'altro lato con il computer parli via seriale (probabilmente emulata via USB).
    Amaro C++, il gusto pieno dell'undefined behavior.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.