Applicazioni Software |
PROGETTO n° 01 - 8/9 [56 di 189] |
|
|
||
Porta Parallela - INPUT di Dati a 8 bit - Uso di un Multiplexer 74LS157 | ||
Analisi delle procedure importanti [3 di 3] |
|
La fase finale del servizio software di questo progetto consiste nel formattare le 2 metà, bassa e alta, in un unico byte. |
Formattazione finale del dato acquisito |
In questo punto del programma i 4 bit meno significativi sono in BL (MOV BL,AL), in forma 0000yyyyB, mentre quelli più significativi sono in AL, nella forma xxxx0000B. | |
La presenza degli 0 nei 2 bytes componenti facilita la ricomposizione del dato: basta infatti l'operazione OR logica tra BL e AL e il dato è ricomposto: |
|
Progetto |
NB: se il testo nell'Area
ti
sembra strano installa il font Giobe.TTF: clicca qui!! |
Utilizzo del dato e controllo per uscire dal ciclo di lettura e acquisizione |
Con questo la fase di lettura è terminata: dopo l'istruzione precedente il dato letto dagli switch sarà disponibile in AL, nella forma finale xxxxyyyyB = XYH. | |
Il problema è ora pensare al suo utilizzo; potrebbe essere aggiunto in una tabella in RAM, o spedito via seriale ad un modem, o utilizzato per pilotare dei led o dei relè.... | |
Il nostro progetto prevede di stamparlo in mezzo allo schermo e di tornare in polling all'inizio del main loop, per aggiornare in tempo reale il valore esadecimale assunto dalla parallela, fino a quando verrà premuto un tasto qualunque: |
|
|
Per amore del dettaglio il servizio dedicato al dato letto è ottenuto con l'intercessione della Macro M_CURSOR e della Procedura Byt2Asc, entrambe appartenenti alle 2 librerie dell'Autore, Giobe.MAC e Giobe.LIB, disponibile in forma sorgente in Giobe.ASM. |
Cenno sulla Procedura di Ritardo |
Prima di terminare merita un cenno anche la procedura di ritardo; la necessità di consumare un breve tempo per assicurare l'assestamento elettronico del commutatore interno del selettore è fortunatamente poco sensibile alla esattezza della sua durata, per cui possiamo ricorrere senza problemi alla classica esecuzione di istruzioni inutili, al fine di perder tempo, come nella Procedura Delay__, usata dal nostro progetto e descritta di seguito: |
|
|
Porta Parallela | PROGETTO n° 01 - 8/9 | |||||||
56 di 189 |
|
|
|
Home |
|
|||||||
|
Motore Ricerca |
|