Pic 16f877 e sua modelagem
Microcontrolador de 8 bits da Microchip Co.
O microcontrolador PIC16F877 pode ser encontrado em diversos encapsulamentos:
PDIP, QFP, PLCC
Este modelo (16F877) possui 40 pinos (veja imagem ao lado para o encapsulamento PDIP), sendo que destes 40 pinos, 7 pinos são usados para alimentação e controle do mesmo.
PINO 1: Suporta 3 níveis de tensão. Quando este pino estiver recebendo 5V, o microcontrolador estará em condições de executar o programa. Quando este pino receber 0V (GND), o PIC será “resetado”. Quando este pino receber tensão de 13,4V, o PIC irá entrar em modo gravação.
PINOS 11 e 32: Alimentação (máximo 5V)
PINOS 12 e 31: Referência (GND)
PINOS 13 e 14 : Onde estará ligado o resonador externo (cristal de clock).
Os demais pinos são conhecidos por I/Os (lê-se Aiôus, e vem do inglês Inputs/Outputs, que significa entradas/saídas). Estas I/Os são agrupadas em PORTs (portos), de no máximo 8 pinos cada (limitação pois o componente possui um núcleo de 8 bits).
Há um total de 33 I/Os disponíveis, que podem ser configuradas como entradas ou saídas em tempo de execução.
Quando um pino é configurado como ENTRADA, ele pode ser conectado a algum sensor para detectar sinais digitais através de variação da tensão de 0 e 5V. Quando um pino é configurado como saída, o programa poderá acioná-lo, e com isso gerar uma corrente baixa (max. 20 mA) com os níveis de tensão de 0V ou 5V.
Alguns pinos, porém, possuem outras funções além de serem entradas ou saídas digitais. Por exemplo, no diagrama ao lado podemos observar que os pinos 2 a 10 (exceto o pino 6) são entradas analógicas, e podem ser usados para detectar uma variação de tensão entre 0V e 5V, transformando esta variação em uma informação binária de 10 bits. Os pinos 39 e 40 também são pinos usados na gravação do microcontrolador, e os pinos 25 e 26 são usados para comunicação SERIAL padrão RS232. Os pinos 16 e 17 são pinos geradores de pulso (PWM), que é