|
 |
Procedure Seriali |
RxD_1 avanzata
[186 di 403] |
- Gestione della
Ricezione Dati con la Tecnica del Polling |
|
4.2 Procedura
RxD_1:
Versione sofisticata |
 | Se hai affidato l'indispensabile
predisposizione delle specifiche di
Ricetrasmissione (velocità e parametri
di protocollo HW) alla versione sofisticata
della procedura INIserial, puoi utilizzare
una analoga versione autoconfigurante (la
procedura RxD_1) anche per la
Ricezione
dei dati
via seriale. |
 | Essa utilizza 2 delle
10 variabili locali definite dalla
INIserial, [port_D]
e [port_8];
poichè le scelte
imposte dal programma Principale
influenzano gli indirizzi in esse
contenuti, questa
versione è adatta a soddisfare la ricezione su una qualunque delle 4 porte
seriali possibili. |
 | Ecco il suo codice assembly: |
 | Possiamo notare questa versione (RxD_1)
è funzionalmente
identica a quella
essenziale (RxD_0)
coincidendo con essa se i valori prememorizzati nelle
2 variabili sono
quelli relativi alla COM1 ([port_D]=037DH
e [port_8]=0378H);
per essa valgono dunque le stesse considerazioni legate alla verifica del
bit0 del
Registro
di Stato Linea [port_D]
assicurata dall'istruzione
TEST,
in attesa passi a 1, evento che si
manifesta quando un nuovo dato è stato
completamente
ricostruito dal registro a scorrimento
interno e da esso è stato trasferito
nel
Registro
di Ricezione
[port_8] (o
nel
buffer FIFO in
Ricezione, con UART
16550A), cioè in condizioni di
buffer UART
pieni. |
 | Come la precedente questa versione è
sufficientemente affidabile, adatta per una ricezione gestita in polling con
qualunque protocollo hardware e con
velocità relativamente basse (cose impostate dal
programma principale tramite la procedura
INIserial), in un contesto che assicuri un
flusso continuo di
dati in arrivo: non essendo prevista alcuna verifica di
Time-Out, nell'impossibilità di assumere dati dalla porta
seriale non
sarà possibile tornare al programma
chiamante ed essa si bloccherà in attesa!! |
 | Ne fa uso il progetto
RxD1Com1, dedicato alla
COM1, e l'analogo
RxD1Com2, dedicato alla
COM2; puoi analizzare ogni dettaglio
partendo dall'elenco di
questa pagina. |
©
2001-2010 - Studio Tecnico
ing. Giorgio OBER
Tutti i diritti sono riservati
|