23
ESCOLA DE ENGENHARIA DE SÃO CARLOS – USP KELEN CRISTIANE TEIXEIRA VIVALDINI AULA 1 – PORTA PARALELA E SINAIS ANALÓGICOS E DIGITAIS SÃO CARLOS 2009

ESCOLA DE ENGENHARIA DE SÃO CARLOS – USP KELEN … · AULA 1 – PORTA PARALELA E SINAIS ANALÓGICOS E DIGITAIS SÃO CARLOS 2009 . ... Quando a BIOS está inicializando o sistema,

  • Upload
    lamnhi

  • View
    217

  • Download
    0

Embed Size (px)

Citation preview

ESCOLA DE ENGENHARIA DE SÃO CARLOS – USP

KELEN CRISTIANE TEIXEIRA VIVALDINI

AULA 1 – PORTA PARALELA E SINAIS ANALÓGICOS E DIGITAIS

SÃO CARLOS

2009

LISTA DE FIGURAS

Figura1: Conector da porta paralela.................................................................................................................... 10 Figura 2: Sinal analógico em função do tempo. ................................................................................................... 14 Figura 3: Sinal digital em função do tempo.......................................................................................................... 15 Figura 4: Amostragem de um sinal analógico. ..................................................................................................... 16 Figura 5: Planta analógica e controlador digital. ................................................................................................ 17 Figura 6: Indicador de sinal lógico. ..................................................................................................................... 18 Figura 7: Circuito indicador de sinal lógico. ....................................................................................................... 19

LISTA DE TABELAS

Tabela 1: Composição da porta paralela com os seus endereços........................................................................... 7 Tabela 2: Pinos associados ao Registrador de Dados. ........................................................................................... 8 Tabela 3: Pinos associados ao Registrador de Status. (L) indica que a entrada é invertida.................................. 8 Tabela 4: Pinos associados ao Registrador de Controle ........................................................................................ 9 Tabela 5: Estrutura da porta paralela no modo SPP.(L)-indica que o bit é invertido.......................................... 10 Tabela 6: Estrutura da porta paralela no modo EPP/ECP.(L) - indica que o bit é invertido............................... 13

SUMÁRIO

1 PORTA PARALELA ..............................................................................................................5 1.1 PORTAS, ENDEREÇOS E REGISTRADORES ............................................................6

1.1.1 REGISTRADOR DE DADOS ..................................................................................8 1.1.2 REGISTRADOR DE STATUS.................................................................................8 1.1.3 REGISTRADOR DE CONTROLE ..........................................................................9

1.2 MODOS DE OPERAÇÃO...............................................................................................9 1.2.1 MODO SPP (STANDARD PARALLEL PORT) ...................................................10 1.2.2 MODO EPP (ENHANCED PARALLEL PORT)...................................................11 1.2.3 MODO ECP (EXTENDED CAPABILITIES PORT) ............................................12

1.3 ALTERAÇÃO DO MODO DE TRABALHO DA PORTA PARALELA ....................13 2 SINAL ANALÓGICO E SINAIS DIGITAL ........................................................................14 3 CIRCUITOS ..........................................................................................................................17

3.1 CIRCUITO INDICADOR DE SINAL LÓGICO ATRAVÉS DA PORTA PARALELA...............................................................................................................................................17

CONCLUSÃO..........................................................................................................................20 REFERÊNCIA .........................................................................................................................21 APÊNDICE A – PROGRAMAÇÃO PARA LER SINAL LÓGICO ATRAVÉS DA PORTA PARALELA .............................................................................................................................22

5

1 PORTA PARALELA

Este dispositivo utiliza-se da tecnologia chamada TTL - Transistor Transistor Logic, a

qual consiste em um tipo diferente de transistor, conhecido como transistor bipolar, podendo

ser utilizado para projetar circuitos chaveados muito rápidos. Este circuito integrado forma

então famílias lógicas ou famílias digitais que consistem em tipos de estruturas internas que

permite a confecção destes blocos em circuitos integrados em um grupo de dispositivos

compatíveis com os mesmos níveis lógicos e tensões de alimentação.

Os CI’s TTL operam a partir de uma alimentação ccV de (5 ± 0,25)V que deve ser

bem regulada e consomem uma potência relativamente elevada da ordem 10/mW por porta

lógica.

A porta paralela é uma interface de comunicação entre o computador e um periférico, o

qual permite enviar e receber dados. Esta transmissão de dados e sinais de controle é feita

através de impulsos elétricos transportados por condutores (“fios”) elétricos.

Os dados são transferidos codificados em bytes, através de oito condutores paralelos,

cada um transportando um bit. Usando oito condutores para transportar cada byte.

Através da porta paralela permite-se enviar dados no modo unidirecional e no modo

bidirecional, ou seja, envia e recebe dados pelos mesmos condutores. As interfaces capazes de

executar este tipo de tarefa são conhecidas como interfaces de entradas e saídas (E/S), ou

Input/Output (I/O) a qual se descreve qualquer troca de dados entre dois dispositivos (a

memória RAM e o processador, por exemplo) ou mesmo entre o computador e o usuário (um

texto digitado no teclado (entrada), uma página impressa na impressora (saída), etc.). Um

"dispositivo de E/S" é um periférico qualquer que permite esta troca de dados.

A vantagem das conexões paralelas é que com oito vias para transportar dados

simultaneamente, os bytes são transportados inteiros e não há necessidade de circuitos

complexos para reconstituí-los quando são recebidos. As informações podem fluir

rapidamente do computador para a impressora ou qualquer outro dispositivo. Embora na

maioria das vezes a porta paralela seja usada para conexão com a impressora, ela também

pode ser usada para aceitar dados de dispositivos externos, viabilizando sua utilização para

diferentes tipos de aplicações, como, por exemplo, controle de motor de passo, interligação

entre computadores, aquisição de dados, etc.

6

Na porta paralela existe uma interface lógica que é um conjunto de regras que através da

qual ela se comunica com o restante do hardware e com o sistema operacional do micro. Os

componentes mais importantes da interface lógica são os endereços das posições de memória,

usadas para transferir dados e os nomes padronizados, pelos quais, o sistema operacional se

refere às portas. Eles são responsáveis pelo número máximo de portas paralelas que um micro

pode gerenciar. As posições de memória (ou portas) são usadas para armazenar

temporariamente os dados e os comandos durante o processo de transferência entre o

computador e o dispositivo.

1.1 PORTAS, ENDEREÇOS E REGISTRADORES.

Uma porta é constituída por um trecho de memória e é identificada pelo seu endereço de

base, este por sua vez, deverão ser diferentes entre os dispositivos conectados ao computador.

O dado a ser transmitido deverá ser enviado ao endereço de E/S do dispositivo que

utilizam. Neste estudo foi utilizado a Porta Paralela como dispositivo de comunicação, para

este dispositivo foram padronizados três endereços de base para serem usados como portas

paralelas, cujos valores (expresso no sistema numérico hexadecimal) são: 0x378, 0x278 e

0x3BC. Esta necessidade advém do fato que dispositivos diferentes recebem e enviam

informações diferentes.

Como o número dos endereços E/S é muito complexo, são utilizados rótulos LPT (Line

Printer, ou linha de impressora). Os nomes padronizados para estas portas são LPT1, LPT2 e

LPT3, que o usuário tem disponível (em termos lógicos), mas fisicamente só existe uma

conexão externa através do conector DB-25 fêmea.

Os pinos da porta paralela são acessados através dos registradores de Dados, Status e

Controle. Cada endereço é formado por três registradores de memória que é associado pela

BIOS, conforme mostrado na tabela 1.

7

Tabela 1: Composição da porta paralela com os seus endereços.

NOME ENDEREÇOS LPT1

ENDEREÇOS LPT2

ENDEREÇOS LPT3

DESCRIÇÃO

Registradores de dados

378h 278h 3BCh Envia um byte.

Registradores de Status

379h 279h 3BDh Lê o estado.

Registradores de controle

37AH 27AH 3BEh Envia dados de controle.

Registradores nada mais são do que endereços de memória com funções pré-

determinadas para:

- Registrador temporário de dados ( Memory Buffer Register - MBR): contém uma

palavra com dados a ser armazenada na memória ou é utilizado para receber uma

palavra na memória.

- Registrador de endereçamento à memória ( Memory Address Register - MAR) :

especifica o endereço, na memória, da palavra a ser escrita ou lida na MBR.

- Registrador de instruções (Instruction Register –IR): contém o código de operação

de 8 bits que está sendo executado.

- Registrador de armazenamento temporário de instruções ( Instruction Buffer

Register – IBR): é utilizado para armazenar temporariamente a instrução contida

na porção à direita de uma palavra da memória.

O endereço 3BCh era utilizado em uma placa antiga padrão da IBM, o qual oferecia

adaptador monocromático e uma porta paralela. Esta placa era chamada de MD&PA

(Monochome Display and Printer Adpten). Ainda hoje alguns computadores fabricados pela

IBM utilizam este endereço como base para LPT1.

Quando a BIOS está inicializando o sistema, ela associa as LPT’s aos endereços base

de E/S. Existe uma lista que obedece a seguinte seguinte ordem: 3BCh →378h →278h

(Registradores de dados). Na maioria dos computadores, a LPT1 é associada ao endereço base

378h. Posteriormente será apresentado um programa em C++ para verificar a existência e o

endereço base da porta paralela no computador.

8

1.1.1 REGISTRADOR DE DADOS

O registrador de dados está associado ao endereço base (378h), sendo utilizado como

saída de 8 bits , a qual poderá ser efetuada uma escrita usando a instrução OUT ou uma leitura

usando a instrução IN. Os bits deste registrador estão associados aos seguintes pinos do

conector como mostra com a tabela 2.

Tabela 2: Pinos associados ao Registrador de Dados.

BIT 0 1 2 3 4 5 6 7

PINO 2 3 4 5 6 7 8 9

NOME D0 D1 D2 D3 D4 D5 D6 D7

Esses pinos são capazes de drenar de 2,6 mA a 24mA. Escrever 1 bit resulta em um

nível TTL alto na saída.

1.1.2 REGISTRADOR DE STATUS

O Registrador de Dados está associado ao endereço base + 1 (379h), sendo utilizado

como uma entrada de 5 bits. Uma leitura no endereço 379h, com uma instrução IN, reflete o

estado imediato desses pinos. Os bits deste registrador estão associados aos seguintes pinos do

conector como mostra com a tabela 3.

Tabela 3: Pinos associados ao Registrador de Status. (L) indica que a entrada é invertida. BIT 0 1 2 3 4 5 6 7

PINO 2 3 4 5 6 7 8 9

NOME - - - 15 13 12 10 11(L)

O pino 8 (bit 6) pode ser usado para provocar a interrupção IRQ7 (INTFh no DOS).

Ela acontecerá quando, neste pino, houver uma transição de nível baixo )(↓ para nível alto

9

)(↑ , condicionado ao bit 4 do Registrador de Controle (37Ah), que deve estar em nível alto

(nível lógico 1).

1.1.3 REGISTRADOR DE CONTROLE

O Registrador de controle geralmente é associado ao endereço base + 2 (37Ah), sendo

considerado uma porta bidirecional de 4 bits. Como colocado anteriormente, o bit 4 é usado

para controlar a habilitação da IRQ7. Quando este bit é colocado em nível alto a interrupção

poderá ocorrer. Estas saídas são do coletor aberto, o que lhes permite trabalhar tanto como

entrada quanto saída. Elas estão conectadas a VCC por resistores de 4,7K e podem receber até

7mA e ainda manter um bom nível baixo de TTL (menor que 0,8 V). Esta porta, quando

trabalha como saída apresenta um retardo nas transições de nível baixo para nível alto, pois

toda carga é feita através do “pull up” de 4,7K. Sempre que possível, é mais conveniente usar

essa porta como entrada. A tabela 4 mostra a relação entre os bits da porta e os pinos do

conector.

Tabela 4: Pinos associados ao Registrador de Controle BITS 0 1 2 3 4 5 6 7

NOME 1(L) 14(L) 16 17(L) IRQ7 - - -

1.2 MODOS DE OPERAÇÃO

Estão disponíveis basicamente três modos de operação da porta paralela - SPP, EPP e

ECP. Como a porta paralela hoje em dia está integrada na própria placa-mãe, alteramos a sua

configuração pelo SETUP do computador.

A porta paralela disponibiliza de modo simultâneo 8 bits de saída, 5 bits de entrada e 4

bits bidirecionais. Basicamente ela é composta por 8 linhas de dados, 5 linhas de status e 4

linhas de controle. Ela é encontrada normalmente no painel traseiro do computador em

conectores tipo D de 25 pinos (DB-25).

10

O conector da porta paralela é um conector de 25 pinos fêmeos, que possui diferentes

funções para cada modo.

- 2-9: Pinos de Saída

- 10, 11, 12, 13 e 15: Pinos de Entrada.

- 18-25: Neutro (GND)

- 1, 14, 16 e 17: Pinos de funções especiais de impressora (paper out).

Figura1: Conector da porta paralela[1]

1.2.1 MODO SPP (STANDARD PARALLEL PORT)

Este modo de operação é padrão, unidirecional (envia dados) e com uma taxa de

transferência máxima de 150KB/s, a comunicação do processador com a porta é feita a 8 bits

por vez.(dados são transferidos a 8 bits por vez).

Deve-se ressaltar que no padrão SPP o Registrador de dados (tabela 2) não pode

funcionar como entrada de dados, já que o dado lido é a saída de um latch 74LS373.

1.2.1.1 PINAGEM DA PORTA PARALELA (SPP).

Tabela 5: Estrutura da porta paralela no modo SPP.(L)-indica que o bit é invertido

11

A Tabela 5 mostra um resumo da porta paralela LPT1 no modo SPP, ordenada

segundo os endereços de E/S e os bits registradores.

No modo SPP o Registrador de dados é normalmente utilizado para envio de dados.

Utilizando uma instrução “out” este registrador dados diretamente nos pinos do conector em

nível TTL alto, esses pinos são capazes de fornecer 2,6 a 24 mA de corrente. Já o Registrador

de Estados é utilizado somente para receber os dados. O Registrador de Controle é utilizado

para a ativação/desativação de circuitos de controle dos sinais do dispositivo externo. Por

possuir esta função os pinos do Registrador de Controle são quase que em sua totalidade lidos

de forma invertida, isso dificulta a atuação de interferências externas.

1.2.2 MODO EPP (ENHANCED PARALLEL PORT)

O modo de operação EPP traz duas características à porta paralela padrão: modo

bidirecional e taxa de transferência máxima de 800KB/s, a comunicação do processador é

feita a 32 bits(a comunicação da porta com o dispositivo externo continua sendo feita a 8 bits

REGISTRADOR

PORTA BIT DIREÇÃO PINOS NOME

7 OUT 9 D7 6 OUT 8 D6 5 OUT 7 D5 4 OUT 6 D4 3 OUT 5 D3 2 OUT 4 D2 1 OUT 3 D1

DADOS

3 7 8 h

0 OUT 2 D0 7 IN 11(L) BUSY 6 IN 10 *ACKNLG 5 IN 12 PAPER

OUT 4 IN 13 SELECT

STATUS

3 7 9 h

3 IN 15 *ERROR 4 - Hab IRQ 7 - 3 IN/OUT 17(L) *SLCT IN 2 IN/OUT 16 *INIT 1 IN/OUT 14(L) *AUTO

FEED

CONTROLE

3 7 A H

0 IN/OUT 1(L) *STROBE

12

por vez). A própria porta paralela trata de “quebrar” os 32 bits recebidos do processador em

quatro dados de 8 bits a serem enviados ao dispositivo externo, maioria das vezes, impressora.

Fazendo com que a comunicação do processador com a porta paralela fique quatro vezes mais

rápida, “liberando” o processador mais rapidamente.

Através do aumento do número de posições de memória (“portas”) usadas para

armazenar dados durante as transferências e de alterações no protocolo de transferência de

dados para até 2Mbyte/s e os responsáveis pelo padrão garantem ser possível efetuar

alterações capazes de quadruplicar este limite. O aumento das taxas fez crescer a

possibilidade de interferências, obrigando a alteração dos cabos usados para conectar os

dispositivos externos as porta EPP, que devem ter blindagem dupla e aterramento mais eficaz.

Portas EPP são compatíveis com o padrão SPP, podendo passar de um modo de operação para

outro mediante comandos apropriados.

1.2.3 MODO ECP (EXTENDED CAPABILITIES PORT)

O modo ECP tem as mesmas características que a EPP, porém, utiliza DMA - Direct

Memory Access, que é um recurso da placa mãe que permite que os periféricos acessem

diretamente a memória RAM, sem a necessidade do uso do processador, para a transferência

de dados, sendo mais rápido, este padrão agrega dois novos modos de transferência

bidirecional de dados para portas paralelas: um de alta taxa e outro que inclui compressão de

dados (cuja taxa de transferência depende do grau de compressão alcançado). Além disto, o

padrão ECP aceita o endereçamento de canais, o que teoricamente permite conectar

simultaneamente até 128 diferentes dispositivos à mesma porta serial. Sendo também

compatível com os modos anterioreres, permitindo passar de um modo para o outro através de

comandos apropriados.

1.2.3.1 PINAGEM DA PORTA PARALELA (EPP/ECP).

A tabela 6 mostra um resumo da porta paralela LPT1 no modo EPP/ECP, ordenada

segundo os endereços de E/S e os bits registradores.

13

Tabela 6: Estrutura da porta paralela no modo EPP/ECP.(L) - indica que o bit é invertido

1.3 ALTERAÇÃO DO MODO DE TRABALHO DA PORTA PARALELA

A alteração do modo de trabalho da porta paralela é feita mediante a configuração no

hardware da porta que pode ser off board (com uma placa conectada em alguma entrada do

computador, mediante “STRAPS”), ou on board, quando esta se encontra na própria placa

mãe do computador.

No caso de ser on board, a alteração é feita mediante a configuração do “SETUP”. O

SETUP é um software que executa alterações no chip de inicialização do computador, a BIOS

- Basic Input Output System.

A BIOS é a primeira camada de software do sistema, que fica gravada num pequeno

chip na placa mãe e tem a função de inicializar o computador, ou seja, determinar com

exatidão os componentes de hardware instalados no sistema e determinar uma seqüência

lógica de inicialização.

REGISTRADOR PORTA BIT DIREÇÃO PINOS NOME 7 IN/OUT 9 D7 6 IN/OUT 8 D6 5 IN/OUT 7 D5 4 IN/OUT 6 D4 3 IN/OUT 5 D3 2 IN/OUT 4 D2 1 IN/OUT 3 D1

DADOS

3 7 8 h

0 IN/OUT 2 D0 7 IN 11(L) WAIT 6 IN 10 *INTERRUPT 5 IN 12 PAPER OUT 4 IN 13 SELECT

STATUS

3 7 9 h 3 IN 15 *ERROR

4 - Hab IRQ 7 - 3 IN/OUT 17(L) *ADRESS

STROBE 2 IN/OUT 16 *RESET 1 IN/OUT 14(L) *DATA

STROBRE

CONTROLE

3 7 A H

0 IN/OUT 1(L) *WRITE

14

Por haver diversos fabricantes de BIOS, o SETUP acaba se alterando não tendo uma

interface padrão para todos computadores, por este motivo termos similares são sempre

utilizados, no caso da porta paralela, procurar algum termo como “On Board Parallet Port”

(Porta Paralela On Board). Neste local poderá ser configurado o endereço da porta paralela

(LPT1, LPT2, MD & PA ou desabilitada). Logo abaixo um termo semelhante a “Parallet Port

Mode” (Modo da Porta Paralela), que indica o modo da porta paralela.

Os modos possíveis para a porta paralela são:

- SPP - Standard Parallet Port (Porta Paralela Padrão) ou Normal

- EPP - Enhanced Parallet Port (Porta Paralela Incrementada)

- ECP - Extended Capabilities Port (Porta com Aptidões Ampliadas)

Obs. No caso da ECP que será habilitado a configuração para o DMA da porta.

2 SINAL ANALÓGICO E SINAIS DIGITAL

A comunicação entre dispositivos (placas, sensores, etc) é feita através de sinais, sendo

que estes podem ser divididos em dois grupos: sinais analógicos e sinais digitais.

Por sinal analógico entende-se um sinal de qualquer grandeza física que se comporta

como uma função contínua no tempo. Exemplos de grandezas físicas analógicas são:

temperatura, pressão, umidade, força, distância, ângulo, torque, vazão, luminosidade, etc. O

gráfico mostrado na Figura 2 engloba todos os sinais dessa categoria.

Figura 2: Sinal analógico em função do tempo.

(Funções discretas no tempo, ou seja, previamente é definida uma taxa de

amostragem) [2]

15

Sinais digitais são funções que, ao longo do tempo, só podem adquirir dois valores

arbitrários. Cada um desses valores é denominado, genericamente, como 0 e 1,

independentemente das suas amplitudes. Embora não existam na natureza, estritamente

falando, grandeza física que se corresponda com sinais digitais, é comum encontrar

características de uma planta que responda a essa definição. Um exemplo desta “grandeza

física digital” é a presença de um objeto: este está ou não está num determinado local, só tem

dois estados possíveis. Um outro exemplo é o estado de um pulsador, ou está pressionado ou

não. Desta forma entende-se como dispositivos digitais qualquer dispositivo que utiliza esta

grandeza no seu funcionamento, como: processadores , controladores, alguns sensores e

motores, etc. Na Figura 3, representa-se um exemplo de sinal digital.

Figura 3: Sinal digital em função do tempo.[2]

O controlador digital tem capacidade para operar com sinais digitais, já que trabalha

com 0 e 1. Estes sinais podem ser induzidos no controlador através de uma entrada externa do

processador e podem ser entregues através de uma saída externa. Posteriormente será

analisado com mais detalhe como isso pode ser feito. Mas, como trabalha um processador

digital com sinais analógicos?

Para poder fazê-lo, deve se aplicar um processo chamado de discretização do sinal

analógico. Um sinal discreto é um sinal que não tem um valor definido em todo instante de

tempo, mas apenas em instantes discretos de tempo; em geral um desses instantes fixos se

toma uma amostra do sinal analógico. Em geral, esse instante chama-se período de

amostragem, conforme a ilustrado na Figura 4.

16

O tratamento algébrico das funções discretas é totalmente diferente daquele adotado

para as funções contínuas. Por exemplo, a condição para que uma planta discreta, ou planta

cujos sinais de entrada e saída foram discretizados, seja estável é diferente da condição de

estabilidade para a mesma planta contínua. O projetista do controle deve estar familiarizado

com as ferramentas matemáticas utilizadas para o processamento de sinais discretos.

Mas um sinal discreto não é ainda um sinal digital, segundo a definição dada

anteriormente. Isto é mais fácil de solucionar. Cada uma dessas amostras tem um valor de

amplitude (representado pela altura de cada uma delas no gráfico da Figura 4). É só entregar

ao processador esses valores de amplitude escritos em forma de números binários. Assim, será

“digitalizado” um sinal analógico. Cada um desses números binários entregue ao controlador,

representa a amplitude de cada amostra e pode ser processado adequadamente. Este

procedimento é realizado por dispositivos chamados conversores analógico-digitais

(conversores A/D).

O processo inverso, isto é, quando o controlador digital deve entregar um sinal

analógico, é similar. Um circuito integrado eletrônico reconstitui as amostras a partir de

números binários entregues pelo processador e que representam as alturas delas. Esse

dispositivo é chamado de conversor digital-analógico (conversor D/A).

Figura 4: Amostragem de um sinal analógico.[2]

17

Figura 5: Planta analógica e controlador digital.[2]

Na Figura 5 apresenta-se o diagrama de blocos do sistema controlador digital-planta

analógica, no qual os sinais u[n] e y[n] se especificam dessa maneira para explicitar que são

sinais discretos e não contínuos, e onde a variável n é um número inteiro (que denota o

número de amostra) e não uma variável contínua como é o caso do tempo.

Muitas vezes os conversores A/D e D/A são montados numa mesma placa de circuito

impresso, normalmente pronta para ser inserida em um slot do computador.Essas placas

chamam-se placas de aquisição de dados (placas DAS).

3 CIRCUITOS

3.1 CIRCUITO INDICADOR DE SINAL LÓGICO ATRAVÉS DA PORTA

PARALELA.

Para tomar conhecimento sobre a comunicação entre o computador e dispositivos

externos, usa-se acionamento de leds.

É solicitado que o computador envie sinal elétrico para a porta paralela (LPT1), e

como o circuito encontra-se conectado a ela, esses sinais são interpretados pelos mesmos

fazendo com que os leds acendam ou apaguem.

18

Figura 6: Indicador de sinal lógico.

Anteriormente apresentou-se um indicador de sinal lógico. Ao ligá-lo em uma saída da

porta paralela é possível saber se esta está em nível alto (+5Vcc) ou nível baixo (0Vcc). Em

alguns casos não é necessário nem o uso do resistor. Você poderá aterrar o sinal nos pinos 18

à 25 ou no próprio chassi do computador.

A programação para ler um sinal lógico (Ver Apêndice A) utiliza a rotina de

verificação dos endereços associados aos registradores da porta paralela para pegar o

endereço base do registrador de Dados. Com este endereço, o programa solicita um número

máximo (entre 0 a 255) e um tempo de retardo m milisegundos e escreve na porta os números

de 0 até o número máximo.

A escrita pode ser observada na tela e confirmada através dos leds conectadas a porta,

levando em consideração que nos leds aparecerá o correspondente binário dos números

decimais.

Material utilizado:

- 8 leds. (D1 a D8)

- 8 resistor de 330 Ω .( R1 a R8)

- 1 Protoboard.

- 1 cabo de Impressora com o conector DB25.

19

Figura 7: Circuito indicador de sinal lógico.

20

CONCLUSÃO

Observou-se que a porta paralela apresenta um bom desempenho para a utilização em

aquisição de dados. A função da Porta paralela é interfaciar a comunicação entre o

computador e um periférico, o qual permite enviar e receber dados que é a vantagem de suas

conexões. Possibilitando assim a fácil utilização no acionamento de dispositivos eletrônicos.

21

REFERÊNCIA

[1] Disponível em:<http://www.mrshp.hpg.ig.com.br/rob/paralela.htm>. Acesso em: 20 set. 2005 [2] PAZOS, Fernando. Automação de sistema e robótica. Rio de Janeiro: Axcel Books, 2002. [3] Disponível em:<http://www.di.ufpb.br/raimundo/Hierarquia/Registradores.html>.Acesso em 10 jan. 2006. [4] GAIÃO, E. N; MEDEIROS, P. M; LYRA, W. S; TELES, P. N; SILVA, E. C; ARAÚJO, M. C. U. Uma interface lab-made para aquisição de sinais analógicos instrumentais via porta paralela do microcomputador. Revista Química Nova, São Paulo, v.27, n. 5, p. 825, sept ./oct. 2004. [5] IDOETA, Ivan Valeije. CAPUANO, Francisco Gabriel, Elementos de Eletrônica Digital. 31 ed. São Paulo: Érica, 1998. [6] NORTON, Peter. Desvendando PC: inclui. 2. ed. Rio de Janeiro: Campus, 1997. [7] Disponível em: <http://geocities.yahoo.com.br/conexaopcpc/artigos/portas_seriais_e_paralelas.htm>. Acesso: 15 jan.2006. [8] STALLINGS, William; FIGUEIREDO, Carlos Camarão de; FIGUEIREDO, Lucília Camarão de. Arquitetura e organização de computadores: projeto para o desempenho. 5. ed. São Paulo: Prentice Hall, 2003. [9] TORRES, Gabriel. Hardware: curso completo. 4. ed. Rio de Janeiro: Axcel Books, 2001. [10] TOCCI, Ronald J. WIDMER, Neal S. Sistemas digitais: Princípios e aplicações. 7 ed.Rio de Janeiro: LTC,2000. [11] UYEMURA, John P. Sistemas digitais: uma abordagem integrada. São Paulo: Pioneira Thomson Learning,2002. [13] ZELENOVSKY, Ricardo; MENDONÇA, Alexandre. PC e periféricos: Um guia Completo de programação. Rio de Janeiro. Editora Ciência Moderna, 1996.

22

APÊNDICE A – PROGRAMAÇÃO PARA LER SINAL LÓGICO ATRAVÉS DA

PORTA PARALELA

23

//Este programa tem a função de mandar um sinal elétrico para a saída da porta paralela no //circuito com 8 leds, com a finalidade dos leds piscarem //Utilizando Linux RTAI /* Sat Sep 30 16:54:35 BRT 2006 * Rafael Vidal Aroca * Programa de testes da porta paralela em user space, fazendo leds piscarem */ #include <stdio.h> //Declaração de bibliotecas #include <stdlib.h> #include <unistd.h> #include <asm/io.h> #define base 0x378 /* printer port base address */ int main(int argc, char **argv) int value = 0; //Verifica se o programa tem permissao de abrir a porta paralela if (ioperm(base,1,1)) fprintf(stderr, "Couldn't get the port at %x\n", base), exit(1); while (1) outb(0, base); printf("0\r\n"); usleep(1000000); outb(1, base); printf("1\r\n"); usleep(1000000); outb(2, base); printf("2\r\n"); usleep(1000000); outb(4, base); printf("4\r\n"); usleep(1000000); outb(8, base); printf("8\r\n"); usleep(1000000); return 0;