INSTITUTO DE TECNOLOGIA ORT
Hardware - 3° ano de eletrônica
Prof. Gabriel Torres
Descrição da Porta Paralela SPP
Sinal | Nome | Pinagem 25p/36p* | E/S | Descrição |
/STROBE | Strobe | 01/01 | S | Indica se os dados estão prontos ou não para serem transmitidos. ( 0 = Dados prontos para serem transmitidos e 1 = Dados não prontos para serem transmitidos) |
/ACK | Acknowledge | 10/10 | E | Indica que a impressora está preparada para receber dados. |
BUSY | Busy | 11/11 | E | Indica que a impressora não está preparada para receber dados. |
PE | Paper Empty | 12/12 | E | Indica que a impressora está sem papel para a impressão. |
SELECT | Select | 13/13 | E | Indica que a impressora está no estado "on line", pronta para receber informação. |
/AUTO FD XT | Auto Feed | 14/14 | S | O papel avança para o começo da próxima linha. |
/ERROR | Error | 15/32 | E | Indica quando ocorre algum tipo de erro (término do papel, impressora desativada). |
/INIT | Init | 16/31 | S | Reinicializa a impressora e limpa o buffer de impressão. |
/SELECT INPUT | Select Input | 17/36 | S | Os dados só podem ser transferidos para a impressora quando esta linha estiver em nível lógico baixo. |
D0 a D7 | D0 a D7 | 2 a 9/ 2 a 9 | S | Dados. |
GND | Ground | 18 a 25/ 19 a 30 | S | Terra. |
* O primeiro número refere-se ao pino do conector de 25 pinos (DB-25). O segundo número refere-se ao pino do conector de 36 pinos do cabo da impressora (Centronics 36 pinos).
Endereçamento da porta paralela SPP
· Endereço base - 378h: Por onde os dados sairão. Colocando-se um número de 8 bits nesse endereço fará com que o dado seja exteriorizado pela porta paralela.
· Endereço de status - 379h: Serve para ler o estado das linhas de entrada, como Acknowledge e Busy. Colocando-se uma instrução de leitura de dados para ler esse endereço retornaremos o estado do registrador de status, um número de 8 bits que é dividido da seguinte forma:
bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 |
*BUSY | ACK | PE | SELECT | ERROR | X | X | X |
· Endereço de controle - 37Ah: Serve para habilitarmos as linhas de saída de controle, como Init e Auto Feed. Para isto, basta escrevermos um número de 8 bits neste endereço, no formato apresentado a seguir. Além disso, através o bit 4 mascaramos a IRQ 7. Com este bit em "1", a interrupção pode ocorrer.
Bit 7 | bit 6 | bit 5 | bit 4 | bit 3 | bit 2 | bit 1 | bit 0 |
X | X | X | IRQ 7 | *SELECT INPUT | INIT | *AUTO FD XT | *STROBE |
* Bits com inversão.
Programação da porta paralela SPP
A programação é simples, utilizando os endereços apresentados. Em assembly, utilizamos as instruções IN e OUT para a leitura e para a escrita, respectivamente. Já em Pascal, utilizamos o comando PORT. Não se esqueça que a porta paralela SPP é uniderecional e, por isto, somente o endereço de status pode se lido.
Exemplo de escrita na porta paralela:
PROGRAM EXEMPLO;
USES
DOS,CRT;
BEGIN
PORT [888]:=255; {Coloca o valor 255 (FFh) na porta paralela}
END.
Obs: 378h = 888.
INSTITUTO DE TECNOLOGIA ORT
Hardware - 3° ano de eletrônica
Prof. Gabriel Torres
Descrição da Porta Paralela EPP
Sinal | Nome | Pinagem 25p/36p* | E/S | Descrição |
/WRITE | Write | 01/01 | E | Indica a direção dos dados. Em "0" a porta será utilizada como saída (escrita) e em "1", como entrada (leitura). |
AD0 a AD7 | AD0 a AD7 | 2 a 9/ 2 a 9 | E/S | Dados e endereçamento. |
INTR | | 10/10 | | |
/WAIT | Wait | 11/11 | E | Quando o periférico acaba de realizar uma transferência, ele pode colocar este sinal em "1", fazendo a porta esperar até que este sinal seja colocado novamente em "0". |
USER1 | | 12/12 | | |
USER3 | | 13/13 | | |
/DSTRB | Dstrobe | 14/14 | S | Indica se os dados estão prontos ou não para serem transmitidos. ( 0 = Dados prontos para serem transmitidos e 1 = Dados não prontos para serem transmitidos) |
USER2 | | 15/32 | | |
/INT | | 16/31 | | |
/ASTROB | Astrobe | 17/36 | | Indica que o endereço é válido. |
GND | Ground | 18 a 25/ 19 a 30 | S | Terra. |
* O primeiro número refere-se ao pino do conector de 25 pinos (DB-25). O segundo número refere-se ao pino do conector de 36 pinos do cabo da impressora (Centronics 36 pinos).