Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução......................................................................................................................................................................... 1
Fabricantes de microcontroladores .............................................................................................................................. 2
Microprocessadores.......................................................................................................................................................... 3
Sistemas de microprocessador ................................................................................................................................. 3
Microcomputadores de um único chip ..................................................................................................................... 3
Microcontroladores ...................................................................................................................................................... 3
Microcontroladores PIC ............................................................................................................................................ 3
Dispositivos lógicos programados................................................................................................................................. 4
Controladores lógicos programáveis ............................................................................................................................ 4
Sistemas de microprocessador ..................................................................................................................................... 4
Representação dos dados ......................................................................................................................................... 5
Tipos de dados .......................................................................................................................................................... 6
Armazenamento de dados ............................................................................................................................................ 6
O microprocessador ...................................................................................................................................................... 7
Operação do microprocessador.................................................................................................................................. 11
Um programa de exemplo ...................................................................................................................................... 13
Um sistema de microcontrolador ............................................................................................................................... 15
a
Introdução
A diferença primordial entre um microprocessador e um microcontrolador é que este é capaz de
executar inúmeras tarefas sem depender de periféricos externos. Para que um microprocessador possa
funcionar, são necessários periféricos externos (chipsets, memórias, controladores, etc.), enquanto o
microcontrolador é capaz de ter todos estes periféricos dentro de um só chip. Desta forma, poderíamos
definir urn microcontrolador como um computador em um só chip. Obviamente, os microprocessadores
conseguem um desempenho muito maior que o dos microcontroladores, chegando hoje a processar na
casa dos GHz, enquanto os microcontroladores ainda processam em poucos MHz. A utilização dos
microcontroladores em nosso cotidiano, no entanto, é muito maior que a dos microprocessadores, pois
eles são utilizados em aparelhos eletrodomésticos como: TV; DVDs, máquinas de lavar, etc.
Atualmente, o microcontroladores são utilizados em diversos projetos eletrônicos. Apenas para
citar, os microcontroladores atuam nas seguintes aplicações hoje em dia:
• automação;
• robótica;
• mecatrônicr
• área médica
• aviação;
• entretenimento;
• etc.
Veja que microcontroladores com características parecidas podem ser utilizados em aplicações
bem distintas. O que diferencia uma aplicação da outra é a maneira como o microcontrolador está
ordenado, ou seja, programado. Um microcontrolador funciona de acordo com um programa que fica salvo
dentro de sua memória. Quando energizado, o microcontrolador é capaz de ler esta memória e saber o
que deve fazer de acordo com o que está salvo dentro dela. Existem diversos tipos de memórias e estas
são divididas em dois grupos: voláteis e não-voláteis. As memórias do tipo volátil são chamadas de RAM
(Randon Access Memory) e dividem-se em dois grupos principais:
• memórias estáticas;
• memórias dinâmicas.
As memórias estáticas são mais velozes que as dinâmicas, porém, também são mais caras. Nos
PCs, elas são usadas na memória cache do computador, enquanto as memórias dinâmicas são usadas
para armazenar grandes quantidades de dados.
A principal característica de uma memória do tipo RAM é a incapacidade de reter dados na
ausência de alimentação no PC ou no microcontroiador. Já as memórias do tipo não-volátil conseguem
armazenar dados na ausência de alimentação. Estas memórias estão divididas nas seguintes categorias:
• ROM (Read Only Memory);
• EPROM (Eraseble Programable Read Only Memory);
• EEPROM (Electrically Eraseble Programable Read Only Memory).
A memória do tipo ROM ou PROM consegue ser gravada uma única vez. Normalmente, esta
memória já sai gravada de fábrica, e, caso haja a necessidade de salvar um novo dado, será necessário
descartá-la e substitui-la por uma nova.
Já as memórias do tipo EPROM podem ser apagadas e regravadas, porém, um incoveniente
deste tipo de memória é o fato dela ser apagada através de luz ultravioleta. As memórias, têm uma janela
central, através da qual o apagador de memória consegue injetar o sinal ultravioleta para apagar o
conteúdo interno, permitindo que elas sejam regravadas.
Já as memórias EEPROM não têm este inconveniente, pois elas são apagadas eletricamente, o
que facilita a sua utilização.
Uma variação da memória EEPROM é a memória Flash, que funciona do mesmo modo.
1
Fabricantes de microcontroladores
Existem diversos fabricantes de microcontroladores, dentre eles podemos destacar:
• National;
• ATMEL;
• Microchip;
• Philips;
• Intel;
• Cypress;
• etc.
Cada um destes fabricantes tem as suas famílias de microcontroladores. A National, por exemplo,
conta com a família COP8, enquanto a Philips conta com a família ARM.
A Microchip tem diversas famílias de microcontroladores, dentre elas podemos citar:
• família PIC10;
• família PIC10;
• família P1C16;
• família PIC18;
• família PIC24;
• família dsPIC.
2
Microprocessadores
Muitos dos sistemas eletrônicos complexos atuais baseiam-se no uso de um microprocessador ou
microcontrolador. Tais sistemas constituem-se em hardware controlado por software. Se for necessário
modificar o modo com que o sistema se comporta, é o software (em vez do hardware) que sofre
alterações.
Sistemas de microprocessador
É comum que os sistemas de microprocessador sejam montados em um quadro de circuito
impresso que consiste em uma CPU de microprocessador com vários chips especializados de apoio.
Esses dispositivos integrados em escala muito grande (VLSI) proporcionam entrada e saída ao sistema,
controle e temporização, bem como armazenamento para programas e dados.
Aplicações comuns dos sistemas de microprocessador incluem o controle de processos
industriais complexos. Os exemplos típicos baseiam-se nas famílias de chips como Z80CPU, além de
Z80PIO, Z80CTC e Z80SIO.
Microcontroladores
Um microcontrolador é um computador de um único chip projetado especificamente para as
aplicações de controle, em vez de aplicações gerais. Eles são usados muitas vezes para satisfazer um
determinado requisito de controle, tal como controlar o comando de um motor. Os microcomputadores de
um único chip, por outro lado, costumam executar várias funções diferentes e podem controlar diversos
processos ao mesmo tempo.
Aplicações frequentes incluem o controle de dispositivos periféricos, tais como motores,
acionadores, impressoras e componentes menos importantes do subsistema. Exemplos típicos são o
Z86E, 8051, 68705 e 89C51.
Microcontroladores PIC
O microcontrolador PIC é um dispositivo microcontrolador de propósito geral que costuma ser
usado em uma aplicação não-integrada para executar lógica simples, temporização e controle de
entrada/saída. Os dispositivos PIC proporcionam uma solução flexível de baixo custo que preenche com
eficácia a lacuna entres os microcomputadores de um único chip e o uso de chips lógicos e de
temporização separados.
3
Figura 1 Diagrama em blocos de um sistema de microprocessador.
Sistemas de microprocessador
Os componentes básicos de qualquer sistema de microprocessador são:
(a) uma unidade central de processamento (CPU)
(b) uma memória, consistindo em dispositivos tanto de “leitura/gravação” quanto de "apenas-
leitura" (em geral, chamados RAM e ROM, respectivamente)
(c) um meio de proporcionar entrada e saída (E/S). Por exemplo, um teclado para a entrada
e um monitor de vídeo para a saída.
Em um sistema de microprocessador as funções da CPU são proporcionadas por um único chip
microprocessador integrado em grande escala (VLSI). Esse chip equivale a muitos milhares de
transistores individuais. Os dispositivos semicondutores também são usados para viabilizar as memórias
de leitura/gravação e apenas-leitura. Ambos os tipos de memória permitem “acesso aleatório”, já que
qualquer item de dados pode ser recuperado com igual facilidade, independente de sua localização real
dentro da memória. Independente disso, esse termo “RAM tornou-se sinônimo de memória semicondutora
de leitura/gravação”.
4
Os componentes básicos do sistema (CPU, RAM, ROM e E/S) são interligados usando-se um
sistema de conexão de múltiplos lios conhecido como barramento. Estão presentes três barramentos
diferentes:
• o barramento de endereço usado para especificar as localizacões de memória;
• o barramento de dados, no qual os dados são transferidos entre os dispositivos; e
• o barramento de controle que provê os sinais de temporização e controle por todo o
sistema.
A quantidade de linhas individuais existentes em um barramento de endereço e em um
barramento de dados depende do microprocessador empregado. Os sinais em todas as linhas, não
importando se eles são utilizados para endereçamento, dados ou controle, podem existir em apenas dois
estados básicos: 0 lógico (baixo) ou 1 lógico (alto). Os dados e os endereços são representados por
números binários (uma sequência de 1s e 0s) que aparecem respectivamente nos barramentos de dados
e endereço.
Muitos microprocessadores projetados para aplicações de controle e instrumentação usam um
barramento de dados de 8 bits e um barramento de endereço de 16 bits. Outros possuem barramentos de
dados e endereço que podem operar com até 128 bits de uma vez.
O maior número binário que pode aparecer em um barramento de dados de 8 bits corresponde à
condição em que todas as oito linhas estão no 1 lógico. Portanto, o maior valor de dados que pode estar
presente no barramento a qualquer momento equivale ao número binário 11111111 (ou 255). Da mesma
forma, o endereço mais alto que pode aparecer em um barramento de dados de 16 bits é
1111111111111111 (ou 65.535). O intervalo completo de valores de dados e endereços de um
microprocessador simples desse tipo é:
Dados de 00000000 a 11111111
Endereços de 0000000000000000 a 111111111111111
5
Observe que, para evitar confusão sobre se o um número é hexadecimal ou decimal, colocamos
um símbolo $ antes de um número hexadecimal, ou adicionamos um H ao final do número. Por exemplo,
64 signitica o decimal "sessenta e quatro", enquanto $64 signitica "seis-quatro" hexadecimal, o qual é
equivalente ao decimal 100. Da mesma torma, 7FH significa "sete F" hexadecimal, o que equivale ao
decimal 127.
Exemplo 1
Converta o hexadecimal A3 em binário.
Exemplo 2
Converta o binário 11101000 para hexadecimal.
Tipos de dados
Um byte de dados pode ser armazenado em cada endereço dentro do espaço total de memória
de um sistema de microprocessador. Portanto, um byte pode ser armazenado em cada uma das 65536
localizações de memória dentro de um sistema de microprocessador com barramcnto de endereço de 16
bits.
Os bits individuais dentro de um byte são numerados de 0(bit menos significativo) a 7 (bit mais
significativo). No caso das palavras de 16 bits, esses bits são numerados de 0 (bit menos significativo) a
15 (bit mais significativo).
Os números negativos (ou com sinal) podem ser representados usando-se a notação
complemento de dois, na qual o bit da frente (mais significativo) indica o sinal do número (1 = negativo, 0 =
positivo). Por exemplo, o número de 8 bits com sinal 10000001 representa o número decimal -1 .
O intervalo de valores inteiros dos dados que podem ser representados como bytes, palavras
(word) e palavras longas (long word) são mostrados na Tabela Abaixo
Armazenamento de dados
A ROM do semicondutor dentro de um sistema de microprocessador proporciona armazenamento
para o código do programa, bem como a quaisquer dados permanentes que requeiram armazenamento.
Todos esses dados são classificados como não-voláteis porque permanecem intactos quando a fonte de
alimentação é desconectada.
A RAM do semicondutor dentro de um sistema de microprocessador proporciona armazenamento
para os dados e variáveis temporários usados pelos programas. Parte da RAM também é utilizada pelos
microprocessadores como depósito temporário de dados enquanto executa as suas tarefas normais de
processamento.
É importante observar que quaisquer programas ou dados armazenados na RAM serão perdidos
quando a fonte de alimentação for desligada ou desconectada. A única exceção a isso é a RAM CMOS,
que é mantida em atividade por uma pequena bateria. Essa memória suportada por bateria é usada para
reter os dados importantes, tais como hora e data.
Quando expressamos a quantidade de armazenamento proporcionada por um dispositivo de
memória, utilizamos, em geral, Quilobytes (Kbyte). É importante ressaltar que um Quilobyte de memória
tem, na verdade, 1.024 bytes (não 1.000 bytes). A razão da escolha do Kbyte no lugar do kbyte (1.000
bytes) é que 1.024 é a potência de 2 mais próxima (repare que 210= 1.024).
A capacidade de uma ROM de semicondutor costuma ser especificada em termos de um intervalo
de endereços e da quantidade de bits armazenados em cada endereço, por exemplo, 2K x 8 bits
(capacidade = 2 Kbytes), 4 K x 8 bits (capacidade = 4 Kbytes) e assim por diante. Observe que nem
sempre é necessário (ou desejável) que um espaço de memória inteiro de um microprocessador seja
povoado por dispositivos de memória.
6
O microprocessador
A unidade central de processamento (CPU) do microprocessador é o cerne de qualquer sistema
de microprocessador ou microcomputador e, portanto, sua operação é crucial para o sistema inteiro.
A função primária do microprocessador é buscar, decodificar e executar instruções residentes na
memória. Como tal, ele deve ser capaz de transferir dados da memória externa para seus próprios
registradores internos e vice-versa. Além disso, ele deve operar de forma previsível distinguindo, por
exemplo, entre uma operação contida dentro de uma instrução e quaisquer endereços que a acompanham
ou localizações de memória de leitura/gravação. Além do mais, várias tarefas de manutenção do sistema
precisam ser executadas, incluindo a capacidade de suspensão do processamento normal, de modo a
responder a um dispositivo externo que requeira atenção.
As partes principais da CPU de um microprocessador, são:
• registradores para o armazenamento temporário de endereços e dados;
• uma unidade lógica e aritmética (ALU) que executa operações aritméticas e lógicas;
• uma unidade que recebe e decodifica instruções; e
• um meio de controlar e temporizar as operações dentro do sistema.
A figura abaixo mostra os aspectos internos principais de um microprocessador típico de 8 bits.
Explicaremos cada um desses aspectos, de forma resumida:
Acumulador
O acumulador funciona como um registrador origem e destino de muitas das operações básicas
do microprocessador. Como registrador origem, ele contém os dados que serão usados em uma
determinada operação, enquanto como registrador destino ele será usado para guardar o resultado de
uma determinada operação. O acumulador (ou registrador A) aparece em uma quantidade muito grande
de operações do microprocessador e, portanto, são feitas mais referências a esse registrador do que a
quaisquer outros.
Registrador de instruções
O registrador de instruções proporciona uma localização de armazenamento temporário na qual a
instrução atual do microprocessador é mantida enquanto é processada. As instruções de programação são
passadas para o microprocessador, uma de cada vez, através do barramento de dados.
7
Na primeira parte de cada ciclo de máquina, a instrução é buscada e decodificada. A instrução é
executada no segundo ciclo de máquina (e nos subsequentes). Cada ciclo de máquina gasta um tempo
finito (em geral menos de 1 microssegundo), dependendo da frequência do relógio do microprocessador.
Apontador da pilha
Quando chega o momento de suspender uma determinada tarefa para atender por um breve
período a algum outro evento, a maioria dos microproeessadores usa uma região da memória de acesso
aleatório externa (RAM) conhecida como pilha. Quando o programa principal é interrompido, o
microprocessador coloca o conteúdo dos registradores internos temporariamente na pilha, junto com o
endereço da próxima instrução do programa principal. Quando a interrupção tiver sido atendida, o
microprocessador recupera os dados que foram armazenados por um tempo na pilha junto com o
endereço da próxima instrução no programa principal. Assim, ele está apto a retornar ao programa
principal exatamente onde parou de executá-lo e com todos os dados preservados em seus registradores.
O apontador da pilha nada mais é que um registrador que contém o endereço da última localizacão da
pilha utilizada.
Contador de programa
Os programas consistem em uma sequência de instruções executadas pelo microprocessador.
Essas instruções são armazenadas na memória de acesso aleatório externa (RAM) ou na memória de
apenas-leitura (ROM). As instruções devem ser buscadas e executadas pelo microprocessador em uma
sequência rigorosa. Ao armazenar o endereço da próxima instrução a ser executada, o contador de
8
programa permite que o processador sempre saiba em que ponto do programa ele se encontra. O
contador de programa é incrementado de forma automática quando cada instrução é executada.
Barramento de controle
O barramento de controle é um conjunto de linhas de sinal usadas tanto para o controle dos
dados em torno do sistema quanto para a interação com dispositivos externos. Os sinais de controle
usados pelos microprocessadores tendem a ter tipos diferentes, porém os mais encontrados são os
seguintes:
READ um sinal de saída do microprocessador indicando que a operação atual é de leitura.
WRITE um sinal de saída do microprocessador indicando que a operação atual é de gravação.
RESET um sinal que restabelece os registradores internos e zera o contador de programa, de
modo que o programa possa ser reiniciado a partir do início.
IRQ pedido de interrupção a partir de um dispositivo externo tentando ganhar a atenção do
microprocessador (o pedido pode ser atendido ou ignorado, de acordo com o estado do
microprocessador no momento em que o pedido de interrupção foi recebido).
NMI interrupção não-mascanível (isto é, um sinal de interrupção que não pode ser ignorado pelo
microprocessador).
Decodificador de instrução
O decodilicador de instrução nada mais é do que um arranjo de portas lógicas que age nos bits
armazenados no registrador de instrução e que determina qual instrução eslá sendo referenciada no
momento. O decodilicador de instrução fornece sinais de saída para a unidade de controle do
microprocessador.
Unidade de controle
A unidade de controle é responsável por organizar o fluxo ordenado de dados dentro do
microprocessador, bem como por gerar e responder aos sinais no barramento de controle. A unidade de
controle também é responsável por controlar o tempo de todas as transferências de dados. Esse processo
é sincronizado usando um sinal de relógio interno ou externo.
9
Como seu nome sugere, a ALU executa operações aritméticas e lógicas. A ALU tem duas
entradas (nesse caso, ambas são de 8 bits). Uma dessas entradas deriva do Acumulador, enquanto a
outra é tirada do barramento de dados interno através de um registrador temporário. As operações
proporcionadas pela ALU incluem a adição, subtração, AND lógico, OR lógico, OR-exclusivo lógico,
deslocamento para a esquerda, deslocamento para a direita etc. O resultado da maioria das operações da
ALU aparece no acumulador.
Relógios
O relógio utilizado em um sistema de microprocessador é um gerador de onda quadrada preciso e
estável. Na maioria dos casos, a frequência do gerador de onda quadrada é determinada por um cristal de
quartzo. Um oscilador simples de relógio de onda quadrada com 4MHz (junto com a forma de onda de
relógio que ele produz) é mostrado na Figura Abaixo. Observe que um ciclo de relógio completo é
designado quase sempre como estado T
Figura 3 (a) um circuito típico de relógio do microprocessador (b) em forma de onda produzida pelo circuito do relógio.
10
Figura 4 (a) Um relógio de CPU externo e (b) um relógio de CPU interno.
Operação do microprocessador
A maioria das operações realizadas por um microprocessador envolve o movimento de dados. Na
realidade, o próprio código do programa (um conjunto de instruções armazenadas na ROM ou na RAM)
deve ser trazido da memória antes da execução. Assim, o microprocessador executa uma sequência
contínua de ciclos de busca e execução de instrução. A ação de trazer um código de instrução (ou
operando/valor de dados) da memória envolve uma operação de leitura, enquanto a ação de mover os
dados do microprocessador para a posição de memória envolve uma operação de gravação.
Cada ciclo de operação da CPU é conhecido como um ciclo de máquina. As instruções do
programa podem requerer diversos ciclos de máquina (em geral, entre dois e cinco). O primeiro ciclo de
máquina em qualquer ciclo consiste em uma busca de instrução (o código de instrução é lido da memoria)
e é conhecido como ciclo M1. Os ciclos subsequentes, M2, M3 e assim por diante, dependem do tipo da
instrução que está sendo executada. Essa sequência busca-execução é exibida na Figura Abaixo.
Os microprocessadores determinam a origem dos dados (quando estão sendo lidos) e o destino
dos dados (quando estão sendo gravados) colocando um único endereço no barramento de endereço. O
endereço no qual os dados devem ser colocados (durante uma operação de gravação) ou onde os dados
devem ser buscados (durante uma operação de leitura) pode fazer parte da memória do sistema (situação
na qual podem estar na ROM ou na RAM) ou pode estar associado com a entrada/saída (E/S).
Uma vez que o barramento de dados está conectado a vários dispositivos VLSI, um requisito
essencial de tais chips (por exemplo, ROM e RAM) é que suas saídas de dados devem ter a capacidade
de ficar isoladas do barramento sempre que for necessário. Esses chips são ajustados com entradas de
seleção ou habilitação acionadas pela lógica de decodificação de endereço. Essa lógica assegura que a
ROM, a RAM e os dispositivos de E/S nunca tentem colocar dados no barramento ao mesmo tempo!
11
Figura 6 Um diagrama de tempo típico do ciclo de busca-execução de um microprocessador.
Entrada e saída
A transferência de dados dentro de um sistema de microprocessador envolve a movimentação de
grupo de 8, 16 ou 32 bits usando a arquitetura de barramento descrita aqui. Portanto,é relativamente
simples transferir dados para dentro e para fora do sistema na forma paralela. Esse processo é
simplificado pelo uso de um dispositivo de E/S Paralela Programável (um Z80PI0, 8255 ou chip VLSI
equivalente). Esse dispositivo fornece registradores para o armazenamento temporário dos dados que não
apenas os separa, mas também proporciona um grau de isolamento elétrico do barramento de dados do
sistema.
12
Figura 7 O microprocessador Z80 (exibindo alguns dos sinais de controle mais importantes) junto com seu modelo de registrador.
Um programa de exemplo
O programa de exemplo a seguir (tabela abaixo) está escrito em código de máquina. O programa
transfere dados de 8 bits de uma porta de entrada (Porta A), complementa (isto é, inverte) os dados
(mudando os 0s para 1s e os 1s para 0s em cada posição de bit) e depois envia o resulta do para uma
porta de saída (Porta B). O programa repete o processo indefinidamente.
Figura 8 Conversão (a) de serial para paralelo e (b) de paralelo para serial.
13
Figura 9 (a) Fluxograma do programa de exemplo e (b) os oito bytes de código de programa armazenados na memória.
Apenas três instruções do microprocessador são necessárias para executar essa tarefa junto com
uma quarta instrução (salto) que provoca a repelição das três instruções indefinidamente. É mais fácil
escrever um programa curto como esse em linguagem de máquina, a qual consiste em uma série de
mnemônicos fáceis de lembrar. O fluxograma do programa é mostrado na figura abaixo (a).
O programa ocupa um total de oito bytes de memória, começando em um endereço hexadecimal
2000, como mostrado na figura abaixo (b). Você também devia observar que as duas portas, A e B, têm
cada uma um endereço único; a Porta A está no endereço hexadecimal FF, enquanto a Poria B está no
endereço hexadecimal FE.
Interrupções
Um programa que executa um loop indefinidamente tem uma aplicação prática um tanto limitada.
Na maioria dos sistemas de microprocessador, desejamos ser capazes de interromper a sequência normal
de fluxo do programa para alertar o microprocessador quanto à necessidade de algo. Podemos fazê-lo
com um sinal conhecido como interrupção. Existem dois tipos de interrupção: mascarável e não-
mascarável.
Quando é reivindicada uma interrupção não-mascarável, o processador deve suspender a
execução da instrução atual e responder á interrupção de forma imediata. No caso da interrupção
mascarável, a resposta do processador dependerá se as interrupções estão habilitadas no momento ou se
estão desabililadas (quando habilitadas, a CPU suspenderá sua tarefa atual e executará a rotina de
serviço da interrupção requisitada).
A resposta ás interrupções pode ser habilitada ou desabilitada através de instruções de programa
apropriadas. Na prática, os sinais de interrupção podem ser gerados a partir de várias origens e, já que
vão necessitar de sua própria resposta personalizada, deve ser fornecido um mecanismo para identificar a
origem da interrupção e para chamar a rotina de serviço apropriada da interrupção. Para auxiliar nessa
tarefa, o microprocessador pode usar um chip controlador de interrupção programável dedicado.
14
Um sistema de microcontrolador
A figura abaixo mostra o arranjo de um sistema de microcontrolador típico. As quantidades
captadas (temperatura, posição ele) são convertidas em sinais elétricos correspondentes através de vários
sensores. As saídas dos sensores (na forma digital ou analógica) são transmitidas como sinais de entrada
para o microcontrolador. O microcontrolador também aceita entradas do usuário. Essas opções colocadas
pelo usuário costumam incluir os valores-alvo para as variáveis (tal como uma temperatura ambiente
desejada), os valores-limite (tal como a velocidade máxima de um eixo) ou restrições de tempo (tal como a
hora de “ligar” e a de “desligar”, o tempo de atraso etc).
15
Os sinais da porta de saída podem ser conectados a vários dispositivos:
indicadores LED (de ambos os tipos, individual e múltiplo)
displays com sete segmentos de LED (através de uma interface adequada)
motores e atuadores (dos tipos linear e rotativo) através de um buffer/acionador adequado ou de
uma interface dedicada
relês (tanto do tipo eletromagnêtico convencional quanto do tipo estado sólido com acoplamento
ótico)
acionadores de transistor e outros dispositivos comutadores de estado sólido
Dispositivos de entrada
Os dispositivos de entrada fornecem informação ao sistema de computador a partir do mundo
exterior. Em um computador pessoal comum o dispositivo de entrada mais óbvio é o teclado. Outros
dispositivos de entrada disponíveis no PC são o mouse (dispositivo apontador), o scanner e o modem. Os
microcontroladores usam dispositivos de entrada muito mais simples. Eles não precisam ser mais do que
chaves individuais ou contatos que se fazem e desfazem, mas muitos outros tipos de dispositivo também
são utilizados, incluindo muitos tipos de sensor que proporcionam saídas de nível lógico (como os
comutadores de flutuação, os detectores de proximidade, os sensores de luz etc).
É importante observar que, para estar conectado diretamente com a porta de entrada e um
microcontrolador, um dispositivo de entrada deve fornecer um sinal lógico compatível. Isso se deve ao fato
de as entradas do microcontrolador poderem aceitar apenas sinais de entrada digitais com os mesmos
níveis de voltagem que a fonte de alimentação lógica. O nível básico de 0 V (que costuma ser classificado
como Vss no caso do controlador CMOS) e a alimentação positiva (VDD no caso de um microcontrolador
CMOS) é invariavelmente de 5V±5%. Um nível de cerca de 0V indica um sinal 0 lógico, e uma voltagem
aproximadamente igual à fonte de alimentação positiva indica um sinal 1 lógico.
Outros dispositivos de entrada podem sentir quantidades analógicas (como a velocidade), mas
usam código digital para representar seus valores como uma entrada para o sistema de microcontrolador.
Alguns microcontroladores proporcionam um conversor analógico digital interno (ADC) para simplificar
bastante a conexão dos sensores analógicos como dispositivos de entrada, mas onde não houver essa
facilida-de será necessário usar um ADC externo que costuma ter a forma de urn único circuito integrado.
A resolução do ADC dependerá do número de bits usados, sendo comuns nas aplicações de controle os
dispositivos de 8, 10 e 12 bits.
Dispositivos de saída
Os dispositivos de saída são usados para transmitir informações ou ações de um sistema de
computador para o mundo exterior. Em um sistema de computação pessoal, o dispositivo de saída mais
comum e o monitor CRT (tubo de raios catódicos). Outros dispositivos de saída incluem as impressoras e
os modems. Como ocorre nos dispositivos de entrada, os sistemas de microconlrolador usam com
frequência os dispositivos de saída mais simples. Eles podem ser nada mais do que LEDs, sonorizadores
piezelétricos, relês e motores. Para que possa ser conectado diretamente à porta de saída de um
microcontrolador, um dispositivo de saída deve mais uma vez, ser capaz de aceitar um sinal lógico
compatível.
Quando as quantidades analógicas (e não a operação digital liga/desliga simples) forem exigidas
na saída será necessário um conversor digital-analógico (DAC). Todas as funções associadas com um
DAC podem ser proporcionadas por um único circuito integrado. Como ocorre no ADC, a resolução de
saída de um DAC depende do número de bits, sendo comuns nas aplicações de controle 8, 10 e 12 bits.
Circuitos de interface
Por fim, quando os sinais de entrada e saída não forem logicamente compatíveis (isto é, quando
eles estão fora do intervalo de sinais que podem ser conectados diretamente ao microcontrolador) alguns
componentes de circuito de interface são necessários para deslocar os níveis de voltagem ou para
proporcionar o acionamenlo de corrente adicional. Os circuitos adicionais também podem ser necessários
quando uma carga (como um relê ou motor) requer mais corrente do que a disponívela partir de um
dispositivo lógico padrão ou de uma porta de saída. Por exemplo, está disponível um conjunto comum de
16
circuitos de interface (relês de estado sólido) que facilitará que um microcontrolador seja interfaceado com
uma carga CA conectada à alimentação. Então, torna-se possível para um pequeno microcontrolador
(operando a partir de uma alimentação de apenas 5V CC controlar um sistema de aquecimento central
operando a partir de uma alimentação de 240V CC.
Figura 11 Um sinal de entrada analógico pode ser conectado a uma porta de entrada do microcontrolador através de um conversor
analógico-digital. (ADC)
17