CONVERTITORE
ANALOGICO DIGITALE SERIALE - 5 |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Protocollo di comunicazione La comunicazione tra il convertitore e il master avviene tramite messaggi. I messaggi possono essere di cinque tipi: comando, dato, echo, ack ed errore. Il messaggio di comando va dal MASTER verso il convertitore, i messaggi di tipo dato, echo, ack ed errore vanno dal convertitore (SLAVE) al MASTER. La comunicazione e’ sempre iniziata dal master. Il convertitore in quanto slave risponderà al comando. La comunicazione ha luogo nel seguente modo:
Struttura dei messaggi Il messaggio (comando /dato/echo /ack/errore) e’ composto di un certo numero di byte e ha la seguente struttura generica: msg + dato1+ dato2… .datoj + end Il byte msg definisce la tipologia del messaggio:
Come si vede dalla tabella per valori di msg compresi tra 1 e
10 ( 01 e 0A in hex) il messaggio e' di tipo comando mentre per
msg= 0F e' di tipo dato, per msg= FF e' ack e infine per msg=F0 e' un
messaggio di tipo errore. Messaggio comando La struttura del messaggio comando e’ la seguente.
Messaggio echo Per avere conferma che il messaggio di comando inviato e’
stato correttamente ricevuto, il master riceve dal convertitore un
messaggio di risposta detto echo che e’ esattamente quello che lo slave
ha ricevuto. Il master confronterà il messaggio di echo con quello che
ha mandato. In caso di errore il MASTER ignorerà quanto sara’ mandato
dal convertitore aspettando solo il messaggio di ack. Messaggio dati Quando il convertitore invia i dati al master, siano essi campioni del segnale o valori dei parametri, utilizza messaggi di tipo dato. La peculiarità dei messaggi di dati sta nel fatto che per ogni valore trasmesso sono utilizzati due byte.Nel primo byte e’ contenuto la parte LSB, mentre nel secondo la parte MSB della parola digitale che rappresenta il valore del campione o del parametro che il convertitore trasmette al MASTER. La struttura del messaggio di dati e’ la seguente:
Come si vede dopo il byte msg e' trasmesso il dato0 che rappresenta il numero N dei campioni trasmessi.
Messaggio
di errore Se si verificano degli errori viene inviato a posto
dell’ack un messaggio di errore. In N e’ riportato il codice dell’errore
Il valore N e' il corrispondente codice errore. A seconda dell'errore verificatosi byte dato assume i seguenti valore:
Messaggio di ack Alla fine della esecuzione di ogni comando il convertitore manda un messaggio di ack che assume la seguente forma:
Questo messaggio indica anche quando il convertitore finisce di eseguire il comando e ha la funzione di busy: il master aspetta il messaggio di ack per inviare un nuovo comando al convertitore.
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|