Sezione

Indirizzi Base Registri Interni
Area Comunicazione BIOS Funzioni BIOS Funzioni DOS
Prefazione Capitolo 1 Capitolo 2 Schede
Libreria ASM Libreria MAC Palestra Progetti ASM
Info Download INDICE

Registri Interni

Home » Programma il Computer » Tutorial Assembly

Tutorial Assembly - Registri

  Messa a Punto - STAMPANTI

STAMPANTI SPP 3/4 [45 di 46] 

 

bulletNei rapporti con la stampante il secondo Registro della porta parallela (0279H/0379H SPP) è, per il computer, la porta d'ingresso da cui può leggere lo Stato della stampante:

 

        

 

bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 0379H/LPT1  -  0279H/LPT2  -  (03BDH)
Registro di Stato Stampante
              1 Errore di Time Out (non su connettore)
          x x   non utilizzati
        0       Errore Generico (pin connettore 15
      1         Selected (pin connettore 13
    1           Paper Empty (pin connettore 12
  0             Acknowledge (pin connettore 10
0               Busy invertito (pin connettore 11

     

bulletPer comodità di consultazione per ogni bit del registro è riportato anche il corrispondente pin del connettore
bulletIl valore dei bit riportato in tabella è quello attivo; in dettaglio.
bulletErrore di TimeOut: se il bit0 è 1 la stampante non è in grado di accettare dati. L'analisi degli altri bit di questo registro aiuta a capire le cause di questa impossibilità, dalla mancanza di carta al fatto di essere semplicemente occupata a stampare i caratteri ricevuti in precedenza. Tutti i programmi che gestiscono una stampante devono eseguire un controllo di TimeOut; nel progetto dei tempi di attesa non bisogna dimenticare che la stampante è una periferica lenta, per cui bisogna lasciarle il tempo di scaricare tutti i suoi dati sulla carta prima di interrompere il collegamento (maggiori informazioni sono disponibili in una pagina dedicata all'argomento).
bulletErrore Generico: se il bit3 è 0 si è verificato un malfunzionamento, perché spenta o senza carta o altro; in questo caso anche la linea Busy viene forzata a 1 (0 sul registro) per sottolineare l'impossibilità a ricevere dati. In condizioni normali questo bit è a 1.
bullet(Printer) Selected: se il bit4 è 1 la stampante segnala di essere ON-line e quindi in condizione di ricevere dati (la stampa si sta svolgendo normalmente); altrimenti la stampante è bloccata (OFF-line) per cui bisogna intervenire manualmente su uno dei suoi pulsanti per riportarla in linea, oppure intervenire da software sul bit3 del Registro di controllo.
bulletPaper Empty: se il bit5 è 1 la stampante avvisa di aver finito la carta; in condizioni normali questo bit è a 0.
bulletAcknowledge: il bit6 è posto brevemente a  0 dalla stampante non appena il dato presente sulle linee di out è stato inserito nel suo Buffer di memoria interno; non appena il bit6 e la linea tornano a 1 avvisa il computer di essere pronta a ricevere il prossimo dato e il computer provvede alla trasmissione del carattere successivo. Da notare che il fronte di salita di questo segnale può essere usato per interrompere il computer.
bulletBusy: se il bit7 è a 0 la stampante segnala di essere occupata a smaltire il pacchetto di dati precedentemente acquisiti; il processore può mandare altri dati alla stampante solo se questo bit è a 1; da notare che il segnale spedito dalla stampante sulla linea 11 del connettore ha livello opposto di quello presente nel registro per l'azione di un inverter tra di essi (stampante pronta è dunque bit7=1 ma segnale a 0, linea bassa).

 

bulletDa notare che, qualora permanga una indesiderata situazione di Busy non è possibile uscire da una spiacevole situazione di attesa perenne, se non spegnendo la stampante; in questo caso la consultazione del bit0 (Errore di TimeOut) consente una scappatoia software: infatti se dopo un certo tempo la linea Busy non torna bassa (stampante PRONTA, alta per il processore) questo bit passa a 1 avvisando che, essendo finito il tempo concesso (Time-Out)  è possibile interrompere per altra via questa spiacevole situazione.

    

Pagina Precedente Registri Pagina Successiva STAMPANTI SPP 3/4   Torna alla Home della Sezione Assembler - DownLoad Torna al Menu di "Programma il Computer"
45 di 46
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

    

Registri Interni » Porta Seriale | Porta Parallela | Stampanti
TUTORIAL » Indirizzi Base | Registri Interni | Area Comunicaz. BIOS | Funzioni BIOS | Funzioni DOS
Prefazione | CAP 1 | CAP 2 | Schede | Palestra
Libreria ASM | Libreria MAC | Progetti ASM | Download | Info | Indice
Home 
Pascal|Manuali|Tabelle|Schede
Tutorial Assembly|Palestra Assembler
Aggiungi Giobe®2000 ai preferiti  
Motore
Ricerca
  Rendi Giobe®2000 pagina di Default
© 2001-2010  -  Studio Tecnico ing. Giorgio OBER
Tutti i diritti sono riservati