Micro Controladores Grupo 1 1 Introdução As EEPROM’s podem ser apagadas e programadas através da aplicação de impulsos eléctricos. Este tipo de dispositivos também é designado por EAROM ( Electrically Alterable ROM). Dado que podem ser programadas e apagadas electricamente, as EEPROM’s podem ser rapidamente apagadas e reprogramadas no próprio circuito onde inseridos. Existem dois tipos de EEPROM’s: 1. 2. As MOS de porta flutuante; As MNON (metal-nitride-oxide-silicon). Neste tipo de memória podemos escrever e ler mas para isso precisamos mas para isso precisamos de quatro funções especiais – Special Function Registers (SFR). Mas a característica mais importante desta memória é que não perde o seu conteúdo quando há uma quebra de energia. Na prática significa que o que foi escrito lá permanecerá. Os dados permanecerão na EEPROM sem qualquer energia durante 40 anos (dependendo do fabrico do micro controlador). Micro Controladores Grupo 1 2 Estrutura de uma célula de memória UV EEPROM Estrutura de uma EEPROM Micro Controladores Grupo 1 3 Conclusão Um exemplo de um parâmetro, é uma dada temperatura, fornecida a quando da programação, de um regulador de temperatura, para alguns processos. Se os dados não fossem retidos seria necessário ajustar a dada temperatura depois de cada corte de energia. Visto que tal acção é impraticável (e até perigosa), os fabricantes de micro controladores começaram a instalar pequenos tipos de memória EEPROM. Micro Controladores Grupo 1 4 PIC16F84 No PIC16F78 a memória EEPROM tem 64 bytes e localiza-se nos endereços de 00h até 63h. Apresente aqui uma lista dos locais ou contactos para análise competitiva (ou outros documentos relacionados) PARA MAIS INFORMAÇÕES... Ver pág. 7 do Data Sheet… Micro Controladores Grupo 1 5 Micro Controladores Grupo 1 6 PIC16F84 (Continuação) Na memoria EEPROM as STR encontram-se localizadas um espaço especial de memória e podem ter acesso através de um registo especial. Esses registos são: 1. EEDATA – no endereço 08h, os dados contidos aqui podem ser lidos e escritos. 1. EEADR – no endereço 09h, que contêm os endereços da localização da EEPROM. 1. EECON1 – no endereço 88h, que contêm o controlo dos bits. 1. EECON2 – no endereço 89h. Este registo não existe fisicamente e serve para proteger a EEPROM de escritas acidentais. Micro Controladores Grupo 1 7 EECON1 Register O registo EECON1 do endereço 88h é um registo controlo com 5 bits implementados. Os bits 5, 6 e 7 não são usados e o 0 é o único de ler. Micro Controladores Grupo 1 8 EECON1 (continuação) O bit 0 RD (Read Control Bit) Permite a transferência de dados do endereço definido no EEADR para EEDATA. Mas o processo de leitura não é tão básico quanto o de escrita de dados para o EEDATA, logo utilizam-se as seguintes instruções: 1 = Inicia a leitura 0 = Não inicia a leitura O bit 1 WR (Write Control Bit) Permite a escrita de dados de EEDATA para o endereço definido pelo EEADR. 1 = Inicia a escrita 0 = Não inicia a escrita Micro Controladores Grupo 1 9 EECON1 (continuação 2) O bit 2 WREN (EEPROM Write Enable Bit) Caso este bit não existisse o micro controlador não permitiria a escrita no EEPROM. 1 = Autoriza a escrita 0 = Não autoriza a escrita O bit 3 WRERR (Write EEPROM Error Flag) – Erros durante a escrita do EEPROM Este bit só é utilizado caso, na escrita do EEPROM hajam quebras de sinal ou por ter corrido antes do tempo no “watchdog timer” (se activado). 1 = Se ocorrer um erro 0 = Se não ocorrer um erro O bit 4 EEIF (EEPROM Write Operation Interrupt Flag Bit) Bit usado para informar se a escrita do EEPROM já terminou. Quando a escrita estiver terminada, este bit será automaticamente activado. Após a programação dever-se-á limpar/apagar o EEIF bit, em caso de uma possível futura programação. 1 = Escrita terminada 0 = Escrita não terminada ou não iniciada Micro Controladores Grupo 1 10 Reading from EEPROM Memory Para iniciar o RD bit transfere-se os dados dos endereços do EEADR para o EDATA. Nos dados de leitura nós não necessitamos de muito tempo para os escrever, os dados retirados da EEDATA podem ser usados nas seguintes instruções: Micro Controladores Grupo 1 11 Writing to EEPROM Memory Para escrever dados na EEPROM, o programador tem que primeiro escrever os endereços na EEADR registos e dados na EEDATA registos. Só depois é necessário activar o bit WR que activará todas as acções. Se o bit WR for interrompido o bit EEIF continua a escrever. Isto pode ser usado em processos que foram interrompidos. Os endereços 55h e AAh são a1ª e 2ª chave para que não ocorram acidentes enquanto se escreve na EEPROM. Estes dois valores são escritos na EECON2 que serve o único propósito de receber estes dois valores e prevenir qualquer acidente durante o processo de escrita na memoria da EEPROM. Micro Controladores Grupo 1 12 (continuação)… As linhas 1, 2, 3 e 4 devem ser executadas nesta ordem e no mesmo intervalo de tempo. Daí que, é muito importante desligar os interruptores que possam modificar os tempos necessários para executar as inscrições. Depois de escrever podem-se voltar a ligar os interruptores. Micro Controladores Grupo 1 13 Trabalho realizado por: Grupo 1 David Luís Joana Sergio MicroProcessadores 20/03/03