universidade federal do vale do são francisco - univasf colegiado de engenharia da computação –...
TRANSCRIPT
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
PIC16F877A - Parte IIPIC16F877A - Parte II
Jadsonlee da Silva Sá
[email protected]/~jadsonlee.sa
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória
Memória de dados (SRAM).
– Capacidade – 368 bytes.
– Dividida em quatro bancos.
– Contém os registradores GPRs (Registradores de Propósito Geral) e SFRs (Registradores de Função Especial).
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– GPRs Armazenamento de dados e operações scratch pad (área de acesso rápido para acesso temporário.).
• Tamanho de 368 bytes.
• Existe uma área comum nos bancos.
• Não são inicializados no power-on reset e são inalterados em todos os outros resets.
– SFRs Controla a operação do dispositivo.
• Classificados em dois conjuntos de registradores: core e periféricos.
• Alguns SFRs são inicializados no power-on reset e em outros resets – Outros SFRs não são afetados.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Memória de dados
SRAM
Alguns SFRs de “alto uso” do banco 0 são espelhados nos outros bancos para reduzir o código e ter um rápido acesso.
Os últimos 16 bytes são mapeados para reduzir o overhead no contexto de chaveamento.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– Endereçamento.
• SRAM Existem quatro bancos.
• Existe duas formas de endereçamento: direto e indireto.
– IRP (Apontador de registrador indireto), RP0 e RP1 são bits do registrador STATUS.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– Endereçamento direto.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– Endereçamento indireto. Contém um endereço da SRAM.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– Endereçamentos.
Endereçamento direto
Endereçamento indireto
Toda instrução usando INDF acessa o registrador apontado por FSR.
Contém um endereço da SRAM.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Organização da MemóriaOrganização da Memória Memória de dados (SRAM).
– Para mover valores de um registrador para outro registrador, o valor deverá passar pelo registrador W.
• Então, toda transferência entre registradores dura dois ciclos de instrução.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Registrador STATUSRegistrador STATUS Contém o estado aritmético da ULA, de um reset
e os bits para selecionar os bancos da SRAM.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Registrador STATUSRegistrador STATUS
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ExemploExemplo Endereçamento indireto da SRAM.
– Zera as posições de 20 a 2Fh.
Zera o bit IRP de STATUS.
Carrego W com 0x20.
Carrego FSR com o conteúdo de W.Zera a posição de memória apontada por
FSR.Incrementa FSR.
Se bit 4 de FSR for 1, salta a próxima instrução.
Vai para NEXT.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Características Especiais da Características Especiais da CPUCPU
Seleção do oscilador.
Reset.
– Power-on reset (POR);
– Power-up Timer (PWRT);
– Oscillator start-up timer (OST);
– Brown-out reset (BOR).
Interrupções.
Watchdog timer (WDT).
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Características Especiais da Características Especiais da CPUCPU
SLEEP.
Proteção de código.
Posições de memória para identificação (ID).
Programação serial e serial em baixa tensão in-circuit.
Depurador in-circuit.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Características Especiais da Características Especiais da CPUCPU
Registrador – Configuration Word.
– Utilizado para selecionar várias configurações do dispositivo.
– Mapeado na memória de programa no endereço 2007h.
– Acessível apenas durante a programação.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Características Especiais da Características Especiais da CPUCPU
Registrador – Configuration Word.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Características Especiais da Características Especiais da CPUCPU
Registrador – Configuration Word.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
OsciladorOscilador Utilizado para gerar o clock do μC (Tosc).
– Quatro períodos de clock do μC geram um ciclo de instrução (Tcy).
O PIC16F877A pode operar em quatro diferentes modos de oscilador:
– LP Cristal Low Power;– XT Cristal/Ressonador;– HS Cristal High Speed/Ressonador;– RC Resistor-Capacitor.
• Os bits FOSC1 e FOSC2 são utilizados para selecionar um dos quatro modos.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
OsciladorOscilador Nos modos LP, XT e HS, um cristal ou ressonador é
conectado nos pinos OSC1 e OSC2 para estabelecer a oscilação.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
OsciladorOscilador Clock externo – LP, XT e HS.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
OsciladorOscilador Oscilador RC.
– Utilizado em aplicações onde as temporizaçães são insensíveis.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Existem vários tipos de reset:
– Power-on Reset (POR);
– Reset /MCLR – Durante a operação normal;
– Reset /MCLR – Durante SLEEP;
– Reset WDT – Durante operação normal;
– Wake-up WDT – Durante SLEEP;
– Brown-out reset (BOR).
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset /MCLR.
– Existe um filtro na entrada do pino /MCLR para detectar e ignorar pequenos pulsos.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Power-on Reset (POR).
– É gerado on-chip quando um aumento de tensão no pino VDD é detectado (faixa de 1,2 – 1,7 V).
Power-up Timer (PWRT).
– Temporizador com oscilador RC interno ao chip.
– Fornece um timeout nominal de 72 ms no power-up a partir do POR – O chip é mantido em reset nesse período.
– Esse atraso permite que VDD alcance um nível de tensão aceitável.
– Habilitado via software – Configuration word.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset
Oscillator Start-up Timer (OST).
– Fornece um atraso de 1024 ciclos do oscilador após o atraso PWRT (se PWRT estiver habilitado).
– Utilizado para garantir a estabilização do oscilador.
– Time-out utilizado apenas para os modos XT, LS e HS, e no power-on reset ou wake-up a partir do sleep.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Brown-out Reset (BOR).
– Habilitado via software – Configuration word.
– Se VDD < VBOR = 4,0 V por um tempo > TBOR = 100 μs, o μC será resetado.
– O reset será mantido até que VDD > VBOR.
– Quando VDD > VBOR for satisfeito, o power-up timer mantém o μC em reset por TPWRT (72 ms).
– Caso VDD < VBOR durante TPWRT, .um reset BOR ocorrerá novamente.
– Obs.: PWRT é sempre habilitado se BOR estiver, independente do bit PWRT em Configuration word.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Valor de alguns registradores especiais.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Valor de todos registradores.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Valor de todos registradores.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
ResetReset Valor de todos registradores.
Universidade Federal do Vale do São Francisco - UNIVASF Colegiado de Engenharia da Computação – CECOMP
Registrador PCONRegistrador PCON