Microcontroladores
Sérgio Cavalcante
Grupo de Engenharia da Computação
Departamento de Informática - UFPE
DEPARTAMENTO
DE INFORMÁTICA
UFPE
GRECO
Copyright, 1998, 1999 © Sérgio Cavalcante
Microcontroladores
O que são?
• Processador com todas as funções/
hardware básico de suporte
– EPROM
Tratamento de Interrupçãop
– RAM
Interfaces Seriais
– I/O
USB e Ethernet
– Oscilador
Conversores A/D e D/A
– Timers/contadores/watchdogs
Monitor de voltagem/oscilador
O futuro dos computadores
• Usuários de desktops atualmente
interagem com o computador.
• Usuários no futuro vão interagir com o
ambiente e serão auxiliados pelo computador
Tipos de Contexto
• Contexto sonoro:
– Objetos sonoros: voz, carro, campainha
de telefone...
– Cenas sonoras: rua movimentada,
supermercado, escritório...)
Aplicações
• Saúde
• Comunicação
• Informação
• Controle
• Guerra
• ...
Saúde
• Monitores de saúde
• Cirurgias virtuo/reais
• Correção de pontos cegos
• Avaliação de quadros clínicos
• Band-aids inteligentes
(medicamentos)
• Tatuagens programáveis
Saúde
• VISOR - “visão” do espectro
eletromagnético (calor, luz e ondas
de rádio) com implantes conectados
ao cérebro
• Em meados de 2371, LaForge
começou a usar implantes num olho
artificial
Escritório Pessoal
• PDAs + secretária + comunicação
• Dispositivos virtuais de
entrada/saída
– fingermouse
• Cartão de crédito digital
Informação
• Notas de recado virtuais
• Informações sobre pessoas e
objetos com reconhecimento
automático
• Controle de passagem na fronteira
EUA-México
• Linha de montagem da Boeing
– Manuais e diagramas virtuais sobre
peças reais
Guerra
• Paraquedistas da OTAN na Bósnia
– Placa-mãe dobrável (como um cinto)
– Computador 586 PCMCIA
– touchscreen display
– fones de ouvido
– microfone
– software tradutor inglês para croata,
francês, russo, etc.
O futuro...
• Computadores orgânicos: moléculas
projetadas por computador
• O exterminador do futuro
O futuro
O futuro
Família 8051
CPU
RAM
EPROM
Address Bus
Data Bus
Família 8051
• Arquitetura Harvard (o normal e’
Princeton = Von Neumann)
• Barramento Multiplexado
• I/O mapeado em memória
(Special Function Registers - SFRs)
Projeto
• Alarme de incêndio
– Caso o sinal do sensor de fumaça esteja
ligado por mais de 3 segundos, ligue a
sirene em intervalos de 1 segundo
ligado e 1 segundo desligado.
Timer 0
• Contador de pulsos de 8/16 bits
• Vários modos de operação:
– Modo 1: contador de pulsos de 16 bits
com interrupção ao chegar em zero.
– Deve ser re-inicializado a cada
interrupção.
– Cada pulso ocorre à Freq.Clock/12
Timer 0 no Modo 1
Data Bus
RD WR
Carry
TH0
Carry
Contadores
RD WR
TL0
Clock/12
Timer 0 no Modo 1
#define
FrClk 12000000
void
timer0_inicializa()
{
#define
FreqTimer0_emHz 100
TR0 = 0;
// Desliga Timer0
#define
((65536
- (FrClk / (12
* FreqTimer0_emHz
TMODVALOR_TH0
|= 0x01; // Timer
0 programado
como
timer de 16 bits 17 ))) >>8)
TH0 = VALOR_TH0; // Programa contagem do Timer0
#define
VALOR_TL0 ((65536 - (FrClk / (12 * FreqTimer0_emHz TL0 = VALOR_TL0;
17 )))
ET0
= 1;& 0xFF)
// Habilita interrupcao do timer 0
TR0 = 1; // Habilita contagem do timer 0
}
void timer0_int (void) interrupt 1 using 2
{
...
}
Download

microcontroladores