Porta parallela - Indirizzi I/O - Giobe®2000 - Assembler - Assembly - centronics 378 278 input output epp ecp spp

|  | Come Funziona Indirizzi Base Area Comunicaz. Bios Registri Livello Hardware Livello BIOS Livello DOS Tecniche d'Interruzione Connettori Cavi Interfaccia Applicazioni Software Applicazioni Hardware Download INDICE
Porta Parallela

| Dentro il Sistema | INDIRIZZI BASE [7 di 166]

| Il Sistema Operativo e i nostri programmi sono sempre in grado di conoscere il numero di porte parallele presenti nel sistema, consultando le variabili di sistema caricate dal BIOS nelle fasi preliminari che seguono l'accensione del computer.

Non appena il nostro computer viene acceso il processore è obbligato a saltare alla locazione FFFF0H posto nella memoria BIOS ospitata dalla scheda madre; da questo indirizzo mette in esecuzione la procedura di POST (Power-On-Self-Test). Il compito di questa procedura è quello di verificare lo stato del computer, ispezionando con meticolosità ogni dispositivo disponibile (tra cui le eventuali porte parallele) e annotando tutto in una zona RAM riservata di grande importanza, detta Area di Comunicazione BIOS, di solito allocata nelle prime 260 (circa) locazioni della Ram convenzionale, certamente a partire dall'indirizzo 00400H .
Tra l'altro la procedura POST provvede a scrivere il valore 1234H nella locazione 00472H (detta Reset State Flag) per evitare di ripetere l'indagine in caso di ripartenza a caldo (warm boot), cioè dopo un reset software prodotto dalla pressione simultanea dei tasti Ctrl-Alt-Del

| Naturalmente non c'è niente di magico: la procedura POST riconosce la presenza dei circuiti di una porta parallela semplicemente cercando di scrivere nei suoi Registri; è quindi necessario conoscere l'indirizzo di I/O di ciascuna di esse.

Il Sistema riserva, per le porte parallele, 3 intervalli di 8 indirizzi di I/O ciascuno, cioè ne riconosce solo fino a 3:

03BCH ÷ 03BFH | Porta Parallela n°1 - su scheda grafica
0378H ÷ 037FH | Porta Parallela n°2
0278H ÷ 027FH | Porta Parallela n°3

| La procedura POST verifica la presenza delle porte parallele applicando in stretta sequenza i 3 intervalli di indirizzi di I/O della tabella; al primo gruppo trovato viene associato il numero 0, al secondo il numero 1, e così via.
| La prova consiste nello scrivere il byte 0AAH nel primo indirizzo di ciascuna serie, leggendolo di ritorno dal medesimo indirizzo; naturalmente solo se il dato ricevuto è ancora 0AAH la porta è presente nel sistema.
| Da notare che la particolare scelta rende minime le probabilità d'errore: 0AAH è infatti 10101010 in binario, una alternanza di bit altamente improbabile.

| In seguito il DOS riconosce la porta 0 come LPT1, la 1 come LPT2, e così via...

| Un tempo ormai remoto era possibile trovare una porta parallela tra i circuiti della scheda grafica; si tratta di antichissime schede monocromatiche, come la MDA (Monochrome Display Adapter) o la gloriosa HGC (Hercules Graphics Card). Alle porte di questo strano connubio sono associati gli indirizzi della prima serie, per cui 03BCH ÷ 03BFH sono address di I/O praticamente non più utilizzati.
| Oggi la porta parallela è, di norma, integrata nella scheda madre; poiché l'indagine sul primo gruppo di indirizzi non può dare esito positivo, sarà certamente il secondo (0378H ÷ 037FH) ad essere associato alla porta0 (per il BIOS) o LPT1 (per il DOS).
| In ogni caso possiamo notare che il primo range prevede solo 4 indirizzi, mentre gli altri 2 ne prevedono 8; ciononostante sono di norma utilizzati solo i primi 3 indirizzi di ciascun gruppo (03BCH, 03BDH, 03BEH o 0378H, 0379H, 037AH o 0278H, 0279H, 027AH).

| Porta Parallela |  |  | INDIRIZZI BASE |  |  |  |
7 di 166

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166

Parallela » | Come Funziona.. | Indirizzi Base | Area di Comunicazione Bios | Registri | Cavi Livello Hardware | Livello BIOS | Livello DOS | Tecniche d'Interruzione | Connettori Applicazioni Software | Progettazione | Interfaccia | Download | INDICE

DataSheet| Display LCD Parallela| Stampanti| Tastiera| Timer Seriale| Video| Cursore| RamVideo |

Home

| Pascal| Manuali| Tabelle| Schede Tutorial Assembly| Palestra Assembler

Aggiungi Giobe®2000 ai preferiti

Motore
Ricerca

| Rendi Giobe®2000 pagina di Default

© 2001-2006 - Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati