Buscar

Microprocessadores: História e Arquitetura

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 22 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

UNIVERNIVERSIDADE ESTÁCIO DE SÁ 
CURSO DE GRADUAÇÃODE AUTOMAÇÃO INDUSTRIAL 
 
 
 
 
 
Rosinei José Pinheiro da Silva 
Luiz Carlos de Souza 
Denis Luís Francisco 
Alex Sandro Cesário Barreto 
Paulo Vinícius Belo 
 
 
 
 
MICROPROCESSADORES 
 
 
 
 
 
 
 
Rio de Janeiro 
2017 
 
 
 
 
 
 
2 
Sumário 
1 INTRODUÇÃO ............................................................................................................. 4 
1.2. HISTÓRIA ............................................................................................................. 4 
2 QUE É UM MICROPROCESSADOR ...................................................................... 5 
2.1 Arquitetura de um Microprocessador ..................................................................... 5 
2.1.1 Arquitetura Harvard ..................................................................................... 6 
2.1.2 Arquitetura Neumann....................................................................................... 7 
2.1.3. Diferença entre as Arquiteturas Neumann e Harvard ..................................... 8 
3 EVOLUÇÃO DOS MICROPROCESSADORES ......................................................... 9 
4 Elementos de um Microprocessador ............................................................................ 13 
4.1 Unidade de Memória............................................................................................. 13 
4.2 Unidade Central de Processamento ...................................................................... 14 
4.4 Unidade de Saidas e Entradas (I/O) ...................................................................... 16 
4.5 Comunicação em série .......................................................................................... 16 
4.6 Unidade de temporização ...................................................................................... 18 
4.7 Watchdog ............................................................................................................. 18 
4.8 Conversor analógico – digital ............................................................................... 19 
5 Programa ...................................................................................................................... 20 
Bibliografia: .................................................................................................................... 22 
 
 
 
 
 
3 
Rosinei José Pinheiro da Silva 
Luiz Carlos de Souza 
Denis Luís Francisco 
Alex Sandro Cesário Barreto 
Paulo Vinícius Belo 
 
 
 
 
 
 
 
MICROPROCESSADORES 
 
 
 
 
 
 
Apresentação de trabalho de 
conclusão de curso à 
Universidade Estácio de Sá como 
requisito parcial para obtenção do 
grau de Tecnólogo em 
Automação Industrial. 
 
 Orientador: 
Prof. Ary Manoel Gama da Silva 
 
 
Rio de Janeiro 
2017 
 
 
 
 
4 
1 INTRODUÇÃO 
 
As circunstâncias que se nos deparam hoje no campo dos 
microcontroladores têm os seus primórdios no desenvolvimento da tecnologia 
dos circuitos integrados. Este desenvolvimento tornou possível armazenar 
centenas de milhares de transístores num único chip. Isso constituiu um pré-
requisito para a produção de microprocessadores e, os primeiros 
computadores foram construídos adicionando periféricos externos tais como 
memória, linhas de entrada e saída, temporizadores e outros. Um crescente 
aumento do nível de integração, permitiu o aparecimento de circuitos 
integrados contendo simultaneamente processador e periféricos. Foi assim que 
o primeiro chip contendo um microcomputador e que mais tarde haveria de ser 
designado por microcontrolador. 
 
1.2. HISTÓRIA 
 
Embora as primeiras gerações de computadores tivessem obtido grande 
sucesso nas décadas de 50 e 60, apresentavam alguns inconvenientes: o 
tamanho e a velocidade. 
Um impacto tecnológico viria a reduzir as dimensões dos computadores ao 
mesmo tempo em que os tornariam mais rápidos: o surgimento dos 
microprocessadores. 
Um microprocessador é um circuito integrado (“chip”) capaz de executar 
instruções, tendo com sua principal parte a Unidade Central de Processamento 
(CPU). Com o avanço tecnológico na área da microeletrônica, outras 
características vêm sendo incorporadas ao longo das últimas décadas aos 
microprocessadores, como unidades de gerenciamento de memória, memória 
cache, coprocessador numérico, etc, tornando-os cada vez mais complexos. A 
origem dos microprocessadores data de 1971, quando a Intel Corporation 
lançou no mercado o microprocessador 4004, denominado originalmente como 
“calculadora em um único chip”, podendo ser considerado como o primeiro 
processador de propósito geral. Possuía em torno de 3.000 transistores e logo 
surgiram aplicações para ele. A partir desta nova tecnologia surgiriam as 
 
 
 
 
5 
calculadoras mais modernas, os computadores pessoais (PC), as 
“workstations”, e atualmente os microprocessadores vêm derrubando a última 
fronteira na área dos computadores: os “mainframes”. 
 
2 QUE É UM MICROPROCESSADOR 
 
O microprocessador é um dispositivo lógico programável em um único 
chip de silício, concebido sob a tecnologia VLSI (circuito integrado em alta 
escala). Ele age sob o controle de um programa armazenado em memória, 
executando operações aritméticas, lógica booleana, tomada de decisão, além 
de entrada e saída, permitindo a comunicação com outros dispositivos 
periféricos. 
 
2.1 Arquitetura de um Microprocessador 
 
Os circuitos de um computador que executam operações sobre dados, tais 
como adição e subtração, são isolados em uma região chamada Unidade 
Central de ProcessamentoUCP(CPU– Central Processing Unit), ou 
processador. 
Os dados que estão armazenados na memória principal do computador são 
transferidos através de barramentos que interligam estes componentes. 
A comunicação com o mundo externo, os usuários, se dá pelos dispositivos de 
Entrada e Saída (E/S). A comunicação entre o computador e estes dispositivos 
se dá através dos controladores de cada dispositivo de E/S. Em computadores 
comuns, estes controladores correspondem placas de circuito encaixadas na 
placa principal do computador (placa mãe). Está ilustrada na Figura1, 
“Arquitetural geral de um computador”, a arquitetura básica de um computador. 
 
 
 
 
 
 
6 
 
Figura 1 – Arquitetura geral de um computador 
 
2.1.1 Arquitetura Harvard 
A Arquitetura de Harvard baseia-se em um conceito mais recente que a 
de Von-Neumann, tendo vindo da necessidade de por o microcontrolador para 
trabalhar mais rápido. É uma arquitetura de computador que se distingue das 
outras por possuir duas memórias diferentes e independentes em termos de 
barramento e ligação ao processador. 
Baseia-se na separação de barramentos de dados das memórias onde 
estão as instruções de programa e das memórias de dados, permitindo que um 
processador possa acessar as duas simultaneamente, obtendo um 
desempenho melhor do que a da Arquitetura de von Neumann, pois pode 
buscar uma nova instrução enquanto executa outra. 
A principal vantagem desta arquitectura é dada pela dupla ligação às 
memórias de dados e programa (código), permitindo assim que o processador 
leia uma instrução ao mesmo tempo em que faz um acesso à memória de 
dados. (figura 2 Arquitetura Harvard). 
 
 
 
 
7 
 
Figura 2 – Arquitetura Harvard 
 
2.1.2 Arquitetura Neumann 
 
A Arquitetura de von Neumann (de John von Neumann), é uma 
arquitetura de computador que secaracteriza pela possibilidade de uma 
máquina digital armazenar seus programas no mesmo espaço de memória que 
os dados, podendo assim manipular tais programas. 
 
A máquina proposta por Von Neumann reúne os seguintes 
componentes: (i) uma memória, (ii) uma unidade aritmética e lógica (ALU), (iii) 
uma unidade central de processamento (CPU), composta por diversos 
registradores, e (iv) uma Unidade de Controle (CU), cuja função é a mesma da 
tabela de controle da Máquina de Turing universal: buscar um programa na 
memória, instrução por instrução, e executá-lo sobre os dados de entrada. 
 
Cada um dos elementos apresentados é realizado à custa de 
componentes físicos independentes, cuja implementação tem variado ao longo 
do tempo, consoante a evolução das tecnologias de fabricação, desde os relés 
eletromagnéticos, os tubos de vácuo (ou válvulas), até aos semicondutores, 
abrangendo os transistores e os circuitos electrónicos integrados, com média, 
alta ou muito alta densidade de integração (MSI – medium scale, LSI – large 
scale, ou VLSI – very large scale integration), medida em termos de milhões 
transistores por pastilha de silício. Na figura 3 é demonstrado a estrutura da 
arquitetura Neumann 
 
 
 
 
 
 
 
 
8 
 
 
 
 
Figura 3 – Arquitetura proposta por Neumann 
 
 
2.1.3. Diferença entre as Arquiteturas Neumann e Harvard 
 
 
 
A diferença entre a arquitetura Von Neunmann e a Harvard é que a 
última separa o armazenamento e o comportamento das instruções do CPU e 
os dados, enquanto a anterior utiliza o mesmo espaço de memória para 
ambos. Nos CPUs atuais, é mais comum encontrar a arquitetura Von 
Neunmann, mas algumas coisas da arquitetura Harvard também são vistas. 
 
Nessas distintas arquiteturas, temos vantagens e desvantagens, como 
pode-se observar a seguir: Arquitetura tipo Harvard: Caminhos de dados e de 
instrução distintos, dessa forma, seus componentes internos têm a seguinte 
disposição. 
 
Já na arquitetura Von-Neumann, é processada uma única informação 
por vez, visto que nessa tecnologia, execução e dados percorrem o mesmo 
barramento, o que torna o processo lento em relação à arquitetura Harvard. 
 
Essa é a tecnologia mais utilizada nos PC’s e microcontroladores, pois 
proporcionam maior velocidade de processamento, pois enquanto a CPU 
processa uma informação, outra nova informação está sendo buscada, de 
forma sucessiva. 
 
 
 
 
 
 
 
9 
3 EVOLUÇÃO DOS MICROPROCESSADORES 
 
Existem diversos fabricantes de microprocessadores que foram 
surgindo desde o lançamento pioneiro da Intel, como a Motorola, a Zilog e a 
Texas Instruments, entre outros. 
A Intel, após o lançamento do microprocessador 4004, concebeu outros 
microprocessadores, e alguns deles foram utilizados na implementação dos 
primeiros PCs, tornando-se referência de mercado. 
 
Os principais microprocessadores lançados no mercado pela Intel são: 
 
• 4004 (1971): primeiro microprocessador de 4 bits, contendo 45 instruções e 4 
Kbytes de capacidade de endereçamento de memória. Foi utilizado em 
aplicações simples, como calculadoras, o primeiro vídeo games e pequenos 
sistemas de controle. 
 
• 8008 (1972): primeiro microprocessador de 8 bits, possui capacidade de 
endereçamento de memória e 16 Kbytes. Utilizado em aplicações mais 
complexas que o anterior, onde a manipulação de caracteres de 8 bits era 
importante, como caixas registradoras. Logo tornou-se obsoleto pela sua 
limitação de endereçamento de memória. 
 
• 8080 (1973): primeiro dos microprocessadores modernos de 8 bits. A partir 
dele outros fabricantes começaram a lançar seus microprocessadores de 4 e 8 
bits, alavancando um grande avanço tecnológico nesta área. Ele é capaz de 
endereçar 64 Kbytes de memória, possui mais instruções do que o anterior e 
ainda utiliza um clock cerca de 10 vezes mais rápido que o 8008. Além disso, 
possui a vantagem de ser compatível com a família TTL, facilitando o seu 
interfaceamento com outros componentes. 
 
• 8085 (1976): este processador pode ser considerado a nova versão do 8080 
Além de mais rápido, possuindo algumas características extras, como a 
 
 
 
 
10 
incorporação do gerador de clock e circuitos internos para a geração de sinais 
de controle, diminuindo o número de componentes adicionais necessários para 
a construção de um sistema. 
 
• 8086 (1978): primeiro processador de 16 bits, incorporando instruções de 
multiplicação e divisão, e com velocidade 3 vezes maior que o 8085. Endereça 
1 Mbytes de memória, o que permitiu a concepção dos primeiros 
microcomputadores da linha PC, e posteriormente os XT, ancestrais dos 
microcomputadores atuais, que na época até os substituíam em algumas 
aplicações. Possui ainda um número maior de registradores, possibilitando a 
agilização de operações entre registradores, sem o envolvimento da memória 
exterior. 
 
• 8088 (1979): possui basicamente as mesmas características do 
microprocessador anterior, trabalhando internamente com 16 bits, com via de 
dados externa de 8 bits, o que reduz a sua performance a 75 % da do 8086, 
mas permitindo a concepção de sistemas mais baratos. 
 
• 80186 (1982): evolução do 8086, sendo compatível a nível de software com o 
seu antecessor. Possui recursos adicionais, como gerador de clock interno, 
controlador de interrupção programável, temporizadores, unidade programável 
de ADM (acesso direto à memória) e unidade de seleção de dispositivos de 
memória e E/S. 
 
• 80188 (1982): versão com via de dados externa de 8 bits do 80186. 
 
• 80286 (1983): versão avançada do 8086, ainda em 16 bits, tendo sido 
projetado para permitir aplicações de multi-usuários e multitarefas. Pode 
endereçar até 16 Mbytes de memória física e 1 Gbytes de memória virtual 
gerenciada por uma unidade de gerenciamento de memória localizada no 
próprio processador. É capaz de executar instruções em menos ciclos de clock 
que o 8086, e foi utilizado pelos microcomputadores PC-AT. 
 
 
 
 
11 
• 80386 (1985): versão em 32 do 8086, suportando multitarefa e 
gerenciamento de memória virtual com ou sem paginação, proteção de 
software e capacidade de endereçamento de 4 Gbytes de memória física, e 64 
Tbytes de memória virtual. Pode chavear entre o modo real e modo protegido 
de memória via software, sem necessidade de reinicialização. Disponível em 
duas versões, muito utilizadas nos PCs que sucederam o PC AT: 
 
• 386DX: versão com via de dados externa de 32 bits. 
 
• 386SX: versão com via de dados externa de 16 bits. 
 
• 80486 (1989): versão aprimorada do 80386, incorporando o coprocessador 
numérico 387 e 8 Kbytes de memória cache. Apresenta uma melhor 
performance em relação ao 80386, tendo sido concebido sob o conceito das 
arquiteturas RISC. Disponível nas versões: 
• 486SX: versão sem o coprocessador numérico 80387. 
 
 • 486DX: versão com o coprocessador numérico 80387. 
 
• 486DX2: versão com clock interno duplicada (2 x 20, 25 ou 33 Mhz). 
 
• 486DX4: versão com clock interno triplicada (3 x 25 ou 33 Mhz), e 16 Kbytes 
de memória cache. 
 
• Pentium (1993): contém o equivalente a dois 80486, sendo que o trabalho a 
ser realizado é dividido automaticamente entre os dois processadores, visando 
mantêlos ocupados a maior parte do tempo. Possui duas unidades de 
processamento de números inteiros implementados na forma de pipeline de 
cinco estágios, que permitem o paralelismo de algumas operações, e duas 
unidades de memória cache de 8 Kbytes cada para dados e instruções. 
• Pentium Pro(1995): possui arquitetura semelhante à do Pentium,mas com 
cache de nível 1 (16 Kbytes) e cache de nível 2 (até 1 Mbytes) conectados ao 
 
 
 
 
12 
bus com a mesma freqüência do processador. A freqüência de trabalho está 
entre 150 Mhz e 200 Mhz. 
 
• Pentium MMX(1996): possui arquitetura semelhante à do Pentium, com a 
incorporação de instruções destinadas ao processamento de imagem. A partir 
desse processador forami previstas diferentes tensões de alimentação do 
núcleo e de interação com o meio externo que são respectivamente 2.8V e 
3.3V. 
 
• Pentium II(1997): possui arquitetura baseada no processador Pentium Pro, 
com cache de nível 1 de 32 Kbytes que opera na mesma freqüência do 
processador, e a incorporação de instruções do MMX. O cache de nível 2, com 
512 Kbytes, opera na freqüência do bus externo. A freqüência de operação 
está entre (66 – 100Mhz) x (3– 5). 
 
 • Pentium II Xeon (1998): possui arquitetura semelhante à do Pentium II, mas 
com o cache de nível 2 (512 Kbytes ou 1 Mbytes) operando na freqüência do 
processador. O desenvolvimento deste processador teve o objetivo de suprir o 
mercado anteriormente suprido pelo Pentium Pro, envolvendo servidores e 
estações de trabalho. 
 
• outros processadores: 1999: Celeron® Processor, 1999: Pentium® III 
Processor, 1999: Pentium® III Xeon™ Processor, 2000: Pentium® 4 
Processor, 2001: Intel® Xeon™ Processor, 2001: Itanium™ Processor. 
 
 
 
 
 
 
 
 
 
 
13 
4 Elementos de um Microprocessador 
 
 
4.1 Unidade de Memória 
 
A memória é a parte do microcontrolador cuja função é guardar dados. 
A maneira mais fácil de explicar é descrevê-la como uma grande prateleira 
cheia de gavetas. Se supusermos que marcamos as gavetas de modo a elas 
não se confundirem umas com as outras, então o seu conteúdo será 
facilmente acessível. Basta saber a designação da gaveta e o seu conteúdo 
será conhecido. 
Os componentes de memória são exatamente a mesma coisa. Para um 
determinado endereço, nós obtemos o conteúdo desse endereço. Dois novos 
conceitos foram apresentados: endereçamento e memória. A memória é o 
conjunto de todos os locais de memória (gavetas) e endereçamento nada mais 
é que selecionar um deles. Isto significa que precisamos selecionar o endereço 
desejado (gaveta) e esperar que o conteúdo desse endereço nos seja 
apresentado (abrir a gaveta). Além de ler de um local da memória (ler o 
conteúdo da gaveta), também é possível escrever num endereço da memória 
(introduzir um conteúdo na gaveta). Isto é feito utilizando uma linha adicional 
chamada linha de controle. Nós iremos designar esta linha por R/W 
(read/write) - ler/escrever. A linha de controle é usada do seguinte modo: se 
r/w=1, é executada uma operação de leitura, caso contrário é executada uma 
operação de escrita no endereço de memória. A memória é o primeiro 
elemento, mas precisamos de mais alguns para que o nosso microcontrolador 
possa trabalhar. Na figura 4, observamos como se faz o acesso físico da 
memoria de um micro processador 
 
 
 
 
 
 
 
 
 
 
14 
 
 
Figura 4 Memoria de um microprocessador 
 
4.2 Unidade Central de Processamento 
 
Vamos agora adicionar mais 3 locais de memória a um bloco específico 
para que possamos ter as capacidades de multiplicar, dividir, subtrair e mover 
o seus conteúdos de um local de memória para outro. A parte que 
vamosacrescentar é chamada "central processing unit" (CPU) ou Unidade 
Central de Processamento. Os locais dememória nela contidos chamam-se 
registos. Os registos são, portanto, locais de memória cujo papel é ajudar a 
executar várias operações matemáticas ou quaisquer outras operações com 
dados, quaisquer que sejam os locais em que estes se encontrem.Vamos olhar 
para a situação atual. Nós temos duas entidades independentes (memória e 
CPU) que estão interligadas, deste modo, qualquer troca de dados é retardada 
bem como a funcionalidade do sistema é diminuída. Se, por exemplo, nós 
desejarmos adicionar os conteúdos de dois locais de memória e tornar a 
guardar o resultado na memória, nós necessitamos de uma ligação entre a 
memória e o CPU. Dito mais simplesmente, nós precisamos de obter um 
"caminho" através do qual os dados possam passar de um bloco para outro. 
 
 
 
 
 
 
15 
4.3 Barramentos 
 
Este "caminho" designa-se por "bus" . Fisicamente ele corresponde a 
um grupo de 8, 16 ou mais fios. Existem dois tipos de bus: bus de dados e de 
endereço. O número de linhas do primeiro depende da quantidade de memória 
que desejamos endereçar e o número de linhas do outro depende da largura 
da palavra de dados, no nosso caso é igual a oito. O primeiro bus serve para 
transmitir endereços do CPU para a memória e o segundo para ligar todos os 
blocos dentro do microcontrolador (figura 5 Barramento de microprocessador). 
 
 
Figura 5 – Barramento de Microprocessador 
 
 
 
 
 
 
 
 
 
 
 
 
16 
4.4 Unidade de Saidas e Entradas (I/O) 
 
Estas localizações que acabamos de adicionar, chamam-se "portos". 
Existem vários tipos de portos: de entrada, de saída e de entrada/saída. 
Quando trabalhamos com portos primeiro de tudo é necessário escolher o 
porto com que queremos trabalhar e, em seguida, enviar ou receber dados 
para ou desse porto (figura 6 – saidas e entradas) 
 
 
Figura 6 – saídas e entradas 
 
 
4.5 Comunicação em série 
 
Anteriormente, acrescentámos à unidade já existente a possibilidade de 
comunicar com o mundo exterior. Contudo, esta maneira de comunicar tem os 
seus inconvenientes. Um dos inconvenientes básicos é o número de linhas que 
é necessário usarmos para transferir dados. E se for necessário transferi-los a 
uma distância de vários quilómetros? O número de linhas vezes o número de 
quilómetros não atesta a economia do projeto. Isto leva-nos a ter que reduzir o 
número de linhas de modo a que a funcionalidade se mantenha. Suponha que 
estamos a trabalhar apenas com três linhas e que uma linha é usada para 
enviar dados, outra para recebê-los e a terceira é usada como linha de 
 
 
 
 
17 
referência tanto do lado de entrada como do lado da saída. Para que isto 
trabalhe nós precisamos definir as regras para a troca de dados. A este 
conjunto de regras chama-se protocolo. Este protocolo deve ser definido com 
antecedência de modo que não haja mal entendidos entre as partes que estão 
a comunicar entre si. Por exemplo, se um homem está a falar em francês e o 
outro em inglês, é altamente improvável que efetivamente e rapidamente, 
ambos se entendam. Vamos supor que temos o seguinte protocolo. A unidade 
lógica "1" é colocada na linha de transmissão até que a transferência se inicie. 
Assim que isto acontece, a linha passa para nível lógico '0' durante um certo 
período de tempo (que vamos designar por T), assim, do lado da recepção 
ficamos a saber que existem dados para receber e, o mecanismo de recepção, 
vai ativar-se. Regressemos agora ao lado da emissão e comecemos a pôr 
zeros e uns lógicos na linha de transmissão correspondentes aos bits, primeiro 
o menos significativo e finalmente o mais significativo. Vamos esperar que 
cada bit permaneça na linha durante um período de tempo igual a T, e, 
finalmente, depois do oitavo bit, vamos pôr novamente na linha o nível lógico 
"1" , o que assinala a transmissão de um dado. O protocolo que acabamos de 
descrever é designado na literatura profissional por NRZ (Não Retorno a Zero) 
.figura 7 – transmissão em série. 
 
 
Figura 7 – transmissão em série 
 
 
 
 
 
 
 
 
 
 
18 
4.6 Unidade de temporização 
 
Agora quejá temos a unidade de comunicação série implementada, 
nós podemos receber, enviar e processar dados. Contudo, para sermos 
capazes de utilizar isto na indústria precisamos ainda de mais alguns blocos. 
Um deles é o bloco de temporização que nos interessa bastante porque pode 
dar-nos informações acerca da hora, duração, protocolo, etc. A unidade básica 
do temporizador é um contador que é na realidade um registo cujo conteúdo 
aumenta de uma unidade num intervalo de tempo fixo, assim, anotando o seu 
valor durante os instantes de tempo T1 e T2 e calculando a sua diferença, nós 
ficamos a saber a quantidade de tempo decorrida. Esta é uma parte muito 
importante do microcontrolador, cujo domínio vai requerer muita da nossa 
atenção. 
 
Figura 8 unidade de temporização 
 
4.7 Watchdog 
 
Outra coisa que nos vai interessar é a fluência da execução do 
programa pelo microcontrolador durante a sua utilização. Suponha que como 
resultado de qualquer interferência (que ocorre frequentemente num ambiente 
industrial), o nosso microcontrolador pára de executar o programa ou, ainda 
pior, desata a trabalhar incorretamente. Claro que, quando isto acontece com 
um computador, nós simplesmente carregamos no botão de reset e 
continuamos a trabalhar. Contudo, no caso do microcontrolador nós não 
podemos resolver o nosso problema deste. modo, porque não temos botão. 
 
 
 
 
19 
Para ultrapassar este obstáculo, precisamos introduzir no nosso modelo um 
novo bloco chamado watchdog (cão de guarda). Este bloco é de facto outro 
contador que está continuamente a contar e que o nosso programa põe a zero 
sempre que é executado corretamente. No caso de o programa "encravar", o 
zero não vai ser escrito e o contador, por si só, encarregar-se-á de fazer o 
reset do microcontrolador quando alcançar o seu valor máximo. Isto vai fazer 
com que o programa corra de novo e desta vez corretamente. Este é um 
elemento importante para que qualquer programa se execute fielmente, sem 
precisar da intervenção do ser humano. 
 
 
4.8 Conversor analógico – digital 
 
Como os sinais dos periféricos são substancialmente diferentes 
daqueles que o microcontrolador pode entender (zero e um), eles devem ser 
convertidos num formato que possa ser compreendido pelo microcontrolador. 
Esta tarefa é executada por intermédio de um bloco destinado à conversão 
analógica-digital ou com um conversor A/D. Este bloco vai ser responsável 
pela conversão de uma informação de valor analógico para um número binário 
e pelo seu trajeto através do bloco do CPU, de modo a que este o possa 
processar de imediato. Neste momento, a configuração do microcontrolador 
está já terminada, tudo o que falta é introduzi-la dentro de um aparelho 
electrónico que poderá aceder aos blocos internos através dos pinos deste 
componente. A figura a seguir, ilustra o aspecto interno de um 
microcontrolador. Configuração física do interior de um microcontrolador 
As linhas mais finas que partem do centro em direção à periferia do 
microcontrolador correspondem aos fios que interligam os blocos interiores aos 
pinos do invólucro do microcontrolador. Na figura 9 podemos obervar o 
esquema de funcionamento de um analógico digital. 
 
 
 
 
 
 
 
20 
 
 
Figura 9 – conversor analógico digital 
 
5 Programa 
 
Escrever um programa é uma parte especial do trabalho com 
microcontroladores e é designado por "programação". Vamos tentar escrever 
um pequeno programa numa linguagem que seremos nós a criar e que toda a 
gente será capaz de compreender. 
 
INICIO 
REGISTO1=LOCAL_DE_ MEMORIA_A 
REGISTO2=LOCAL_DE_ MEMORIA_B 
PORTO_A=REGISTO1+REGISTO2 
FIM 
 
O programa adiciona os conteúdos de dois locais de memória e coloca a 
soma destes conteúdos no porto A. A primeira linha do programa manda 
mover o conteúdo do local de memória "A" para um dos registos da unidade 
central de processamento. Como necessitamos também de outra parcela, 
vamos colocar o outro conteúdo noutro registo da unidade central de 
processamento (CPU). A instrução seguinte pede ao CPU para adicionar os 
 
 
 
 
21 
conteúdos dos dois registos e enviar o resultado obtido para o porto A, de 
modo a que o resultado desta adição seja visível para o mundo exterior. Para 
um problema mais complexo, naturalmente o programa que o resolve será 
maior. A tarefa de programação pode ser executada em várias linguagens tais 
como o Assembler, C e Basic que são as linguagens normalmente mais 
usadas. O Assembler pertence ao grupo das linguagens de baixo nível que 
implicam um trabalho de programação lento, mas que oferece os melhores 
resultados quando se pretende poupar espaço de memória e aumentar a 
velocidade de execução do programa. Como se trata da linguagem mais 
frequentemente usada na programação de microcontroladores, ela será 
discutida num capítulo mais adiantado. Os programas na linguagem C são 
mais fáceis de escrever e compreender, mas, também, são mais lentos a 
serem executados que os programas assembler. Basic é a mais fácil de todas 
para se aprender e as suas instruções são semelhantes à maneira de um ser 
humano se exprimir, mas tal como a linguagem C, é também de execução 
mais lenta que o assembler. Em qualquer caso, antes que escolha entre uma 
destas linguagens, precisa examinar cuidadosamente os requisitos de 
velocidade de execução, de espaço de memória a ocupar e o tempo que vai 
demorar a fazer o programa em assembly. Depois de o programa estar escrito, 
nós necessitamos de introduzir o microcontrolador num dispositivo e pô-lo a 
trabalhar. Para que isto aconteça, nós precisamos de adicionar mais alguns 
componentes externos. Primeiro temos que dar vida ao microcontrolador 
fornecendo-lhe a tensão (a tensão eléctrica é necessária para que qualquer 
instrumento electrónico funcione) e o oscilador cujo papel é análogo ao do 
coração que bate no ser humano. A execução das instruções do programa é 
regulada pelas pulsações do oscilador. Logo que lhe é aplicada a tensão, o 
microcontrolador executa uma verificação dele próprio, vai para o princípio do 
programa e começa a executá-lo. O modo como o dispositivo vai trabalhar 
depende de muitos parâmetros, os mais importantes dos quais são a 
competência da pessoa que desenvolve o hardware e do programador que, 
com o seu programa, deve tirar o máximo do dispositivo. 
 
 
 
 
22 
Bibliografia: 
 
http://www.di.ufpb.br/raimundo/ArqDI/Arq2.htm 
http://www.ece.ufrgs.br/~fetter/ele00002/up.pdf 
http://www.lsa.isep.ipp.pt/~aprender/pagina_lsa/aprender/datasheets/Micros.pd
f

Outros materiais