Cursos / Eletrônica / Projeto de Sistemas Microcontrolados / Aula
Após terem sido guardados oito valores na pilha, na nona vez que for guardado um valor, o primeiro armazenado será perdido. A décima vez que for escrito um valor, o segundo será perdido e, assim por diante.
Os PIC16FXX têm um contador de programa (PC) de 13 bits, o que lhes permitem endereçar 8 KBytes x 14 espaços de memória de programa. No entanto, para o PIC16F84A apenas o primeiro 1 KByte x 14 (0000h - 07FFh) endereços são fisicamente implementados e para o 16F628 apenas os primeiros 2 KBytes x 14 (0000h - 07FFh) endereços são fisicamente implementados.
O PC pode ser entendido como um registrador que sempre aponta para o endereço de memória da próxima instrução que será executada pelo PIC.
Para o 16F877, a memória de programa, como pode ser visto na Figura 4, está dividida em quatro páginas de 2 KBytes x 14 endereços cada uma, nomeadas de Página 0 (endereços 0000 a 07FFh), Página 1 (endereços 0800h a 0FFFh), Página 2 (endereços 1000h a 17FFh) e Página 3 (endereços 1800h a 1FFFh). A Página 0 corresponde a toda memória de programa do 16F628.
Quando se desenvolvem programas para o 16F877, deve-se ter um cuidado especial com as instruções GOTO e CALL (desvio de programa e chamada de sub-rotina, respectivamente).
O programa poderá não ser adequadamente executado se a posição chamada não estiver dentro da mesma página. Quando formos programar, teremos a oportunidade de esclarecer como resolver esse problema.
A Figura 4 chama atenção para os endereços 0000h e 0004h. O endereço 0000h da memória de programa está reservado para o vetor de reset e o endereço 0004h está reservado para o vetor de interrupção de programa. O que significa que:
Como esses endereços estão muito próximos, normalmente, no endereço 0000h é colocada uma instrução de desvio para o início efetivo do programa de partida do aplicado em execução (normalmente, instruções que permitem fazer a inicialização do PIC e da aplicação desejada). Esta técnica será mostrada durante as práticas de programação dos PIC.
Versão 5.3 - Todos os Direitos reservados