Upload
internet
View
111
Download
3
Embed Size (px)
Citation preview
Copyright, 1998, 1999 © Sérgio Cavalcante
MicrocontroladoresMicrocontroladores
Sérgio CavalcanteSérgio Cavalcante
Grupo de Engenharia da Grupo de Engenharia da ComputaçãoComputação
Departamento de Informática - Departamento de Informática - UFPEUFPE
Sérgio CavalcanteSérgio Cavalcante
Grupo de Engenharia da Grupo de Engenharia da ComputaçãoComputação
Departamento de Informática - Departamento de Informática - UFPEUFPE
GRECO
DEPARTAMENTODE INFORMÁTICA
UFPE
MicrocontroladoresMicrocontroladoresO que são?O que são?
• Processador com todas as funções/ Processador com todas as funções/ hardware básico de suportehardware básico de suporte
– Tratamento de InterrupçãopTratamento de Interrupçãop
– Interfaces SeriaisInterfaces Seriais
– USB e EthernetUSB e Ethernet
– Conversores A/D e D/AConversores A/D e D/A
– Monitor de voltagem/osciladorMonitor de voltagem/oscilador
– EPROMEPROM
– RAMRAM
– I/OI/O
– OsciladorOscilador
– Timers/contadores/watchdogsTimers/contadores/watchdogs
• Usuários no futuro vão interagirUsuários no futuro vão interagir
O futuro dos O futuro dos computadorescomputadores
com o com o ambienteambientee serãoe serão auxiliadosauxiliados pelo computadorpelo computador
• Usuários de desktops atualmente Usuários de desktops atualmente interagem com o computador.interagem com o computador.
Tipos de ContextoTipos de Contexto
• Contexto sonoro:Contexto sonoro:– Objetos sonoros: voz, carro, Objetos sonoros: voz, carro,
campainha de telefone...campainha de telefone...
– Cenas sonoras: rua movimentada, Cenas sonoras: rua movimentada, supermercado, escritório...)supermercado, escritório...)
AplicaçõesAplicações
• SaúdeSaúde
• ComunicaçãoComunicação
• InformaçãoInformação
• ControleControle
• GuerraGuerra
• ......
SaúdeSaúde
• Monitores de saúdeMonitores de saúde
• Cirurgias virtuo/reaisCirurgias virtuo/reais
• Correção de pontos cegosCorreção de pontos cegos
• Avaliação de quadros clínicosAvaliação de quadros clínicos
• Band-aids inteligentes (medicamentos)Band-aids inteligentes (medicamentos)
• Tatuagens programáveisTatuagens programáveis
SaúdeSaúde
• VISOR - “visão” do espectro VISOR - “visão” do espectro eletromagnético (calor, luz e eletromagnético (calor, luz e ondas de rádio) com implantes ondas de rádio) com implantes conectados ao cérebroconectados ao cérebro
• Em meados de 2371, LaForge Em meados de 2371, LaForge começou a usar implantes num começou a usar implantes num olho artificialolho artificial
1977: Tradução Visual ->
Tato
1977: Tradução Visual ->
Tato
Agora: Implante In
tra-ocular
Agora: Implante In
tra-ocular
John Wyatt
John Wyatt
Escritório PessoalEscritório Pessoal
• PDAs + secretária + comunicaçãoPDAs + secretária + comunicação
• Dispositivos virtuais de entrada/saídaDispositivos virtuais de entrada/saída– fingermousefingermouse
• Cartão de crédito digital
InformaçãoInformação
• Notas de recado virtuaisNotas de recado virtuais
• Informações sobre pessoas e objetos Informações sobre pessoas e objetos com reconhecimento automáticocom reconhecimento automático
• Controle de passagem na fronteira EUA-Controle de passagem na fronteira EUA-MéxicoMéxico
• Linha de montagem da BoeingLinha de montagem da Boeing– Manuais e diagramas virtuais sobre peças Manuais e diagramas virtuais sobre peças
reaisreais
GuerraGuerra
• Paraquedistas da OTAN na BósniaParaquedistas da OTAN na Bósnia– Placa-mãe dobrável (como um cinto)Placa-mãe dobrável (como um cinto)
– Computador 586 PCMCIAComputador 586 PCMCIA
– touchscreen displaytouchscreen display
– fones de ouvidofones de ouvido
– microfonemicrofone
– software tradutor inglês para croata, software tradutor inglês para croata, francês, russo, etc.francês, russo, etc.
O futuro...O futuro...
• Computadores orgânicos: moléculas projetadas por computador
• O exterminador do futuro
O futuroO futuro
O futuroO futuro
BUM
Família 8051Família 8051Port
1Port
3
Port
2Port
0
Seri
al
Timer1
CPU RAM EPROM
Timer0Oscil.
Latc
hLa
tch
Latc
hLa
tch
DPTRPC
MBRInterrupt
Data Bus
Address Bus
Família 8051Família 8051
• Arquitetura Harvard (o normal Arquitetura Harvard (o normal e’ Princeton = Von Neumann)e’ Princeton = Von Neumann)
• Barramento MultiplexadoBarramento Multiplexado
• I/O mapeado em memória I/O mapeado em memória (Special Function Registers - (Special Function Registers - SFRs)SFRs)
ProjetoProjeto
• Alarme de incêndioAlarme de incêndio– Caso o sinal do sensor de fumaça Caso o sinal do sensor de fumaça
esteja ligado por mais de 3 esteja ligado por mais de 3 segundos, ligue a sirene em segundos, ligue a sirene em intervalos de 1 segundo ligado e 1 intervalos de 1 segundo ligado e 1 segundo desligado.segundo desligado.
Timer 0Timer 0
• Contador de pulsos de 8/16 bitsContador de pulsos de 8/16 bits
• Vários modos de operação:Vários modos de operação:
– Modo 1:Modo 1: contador de pulsos de 16 bits contador de pulsos de 16 bits com interrupção ao chegar em zero.com interrupção ao chegar em zero.
– Deve ser re-inicializado a cada Deve ser re-inicializado a cada interrupção.interrupção.
– Cada pulso ocorre à Freq.Clock/12Cada pulso ocorre à Freq.Clock/12
Timer 0 no Modo 1Timer 0 no Modo 1
TH0TH0 TL0TL0
CarryCarryCarry
Interrupt Clock/12
ContadoresContadores
Data BusData Bus
RDRD WR RDRD WRWR
Timer 0 no Modo 1Timer 0 no Modo 1
#define FrClk 12000000#define FrClk 12000000
#define FreqTimer0_emHz 100#define FreqTimer0_emHz 100
#define VALOR_TH0 ((65536 - (FrClk / (12 * FreqTimer0_emHz - #define VALOR_TH0 ((65536 - (FrClk / (12 * FreqTimer0_emHz - 17 ))) >>8)17 ))) >>8)
#define VALOR_TL0 ((65536 - (FrClk / (12 * FreqTimer0_emHz - #define VALOR_TL0 ((65536 - (FrClk / (12 * FreqTimer0_emHz - 17 ))) & 0xFF)17 ))) & 0xFF)
void timer0_inicializa() { TR0 = 0; // Desliga Timer0 TMOD |= 0x01; // Timer 0 programado como timer de 16 bits TH0 = VALOR_TH0; // Programa contagem do Timer0 TL0 = VALOR_TL0; ET0 = 1; // Habilita interrupcao do timer 0 TR0 = 1; // Habilita contagem do timer 0 }
void timer0_int (void) interrupt 1 using 2 { ... }