Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Comunicazione Seriale - Problemi Sincronizzazione lettura/scrittura

    Ciao!
    Sto facendo un programma per la comunicazione seriale tra un pc e uno switch ottico. IO mando comandi allo switch e leggo le risposte. Sembra facile, ma non sono capace di sincronizzare le operazioni di lettura/scrittura.
    Più in dettaglio, non sono capace di fermare l´invio di comandi mentre lo switch risponde. Uno pseudo-codice, potrebbe essere il seguente.
    codice:
    public void exe() {
       for (cmd: commandList) {
          giveCommand(); // write string on port COM1, for example
          waitForExecution();
       }
    }
     
    public void read() { // implements SerialPortEventListener
       readDataFromPort();
       detectEndOfCommand(); // and warn waiting threads
    }
    Ho già implementato un metodo per rilevare la fine dell´esecuzione del comando, attraverso l´analisi dei dati entranti. Questo significa che so quando è ora di avvisare le trame in attesa, ma non sono capace di implementare la funzione stop/restart .
    Sono quasi sicuro che debba usare metodi sincronizzazi e wait()/notify(), ma tutto quanto ho provato ha miseramente fallito. Ho provato anche a usare variabili di flag, invano. Non riesco a fermarlo adeguatamente.
    Come si implementa?!?!?
    Grazie.
    buoffo
    www.e-cattivi.com

  2. #2
    up...
    [qualsiasi tipo di aiuto è accettato]
    buoffo
    www.e-cattivi.com

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.