Eletronica
Trabalho Universitário: Eletronica. Pesquise 862.000+ trabalhos acadêmicosPor: raonirdd • 17/3/2015 • 2.384 Palavras (10 Páginas) • 285 Visualizações
Conhecendo o PIC16F877
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 tem-po 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 é similar a uma saída analógica. Muito útil para controle de velocidade de motores, por exemplo. O pino 6 é um pino usado para contagem rápida.
Tradicionalmente conhecemos os pinos do microcontrolador NÃO PELO SEU NÚMERO, mas sim pela sua IDENTIFICAÇÃO DE I/0.
Os pinos são agrupados em PORTs, sendo:
PORTa (com 6 I/Os disponíveis) PORTb (com 8 I/Os disponíveis)
PORTc (com 8 I/Os disponíveis) PORTd (com 8 I/Os disponíveis)
PORTe (com 3 I/Os disponíveis)
EXERCITANDO: Identifique os seguintes recursos no microcontrolador PIC16f877a (qual o número do pino no encapsulamento PDIP correspondente)
PINO A3: _________________ PINO B7: _________________ PINO C2: _________________
PINO E0: _________________ PINO D6: _________________ PINO D2: _________________
Observações importantes:
A letra F (PIC16F877) identifica que o microcontrolador em questão utiliza a tecno-logia FLASH, ou seja, pode ser regravado. Alguns modelos (que utilizam a letra C no nome, como o PIC16C877) só podem ser gravados uma única vez e são mais baratos.
Outros modelos da família 16 (como o PIC16F870, PIC16F628, PIC16F84, ....) possuem variações em termos de recursos (com mais ou com menos pinos de I/Os, entradas analógicas, memória ROM, memória RAM, etc...), mas todos podem ser programados com a mesma linguagem.
Modelos da família 18 são mais rápidos e um pouco mais caros, continuando a ser de 8 bits.
Modelos da família 24 são de 16 bits, e indicados para aplicações que exijam mais poder de processamento.
Os microcontroladores PIC são indicados para aplicações mais simples, que não necessitem de grande volume de dados manipulados, e que não necessitem pro-cessamento em tempo real de alta performance.
Quando transferimos um programa para o microcontrolador, este deve estar em linguagem de máquina (ARQUIVO HEX), e será armazenado na memória ROM do microcontrolador. Esta memória não será apagada até que outro programa seja enviado, mesmo que a alimentação de energia elétrica seja desativada.
Exercitando (Responda)
1) Quem fabrica o microcontrolador PIC ?
2) Quantos pinos de I/O o modelo PIC16F877 possui ?
3) O modelo PIC16F877 só é oferecido na versão PDIP ?
4) Posso gravar e regravar um PIC quantas vezes eu quiser ?
5) Para onde um programa é enviado quando programamos um microcontrola-dor PIC ?
6) Um pino do microcontrolador pode acionar diretamente um motor elétrico que consome 100mA ? Por que ?
Descrição detalhada do PIC16F877
Desenvolvido pela MICROCHIP (www.microchip.com)
CPU RISC de alta performance, baseado em uma arquitetura Haward modificada. Suas características mais significativas são:
• Opera com somente 35 instruções (ASSEMBLY)
• Operações com duração de um único ciclo, exceto pelas instruções de desvio que consomem dois ciclos de máquina. Cada ciclo equivale a 4 pulsos do circuito oscilador (clock)
• Operação em até 20 MHz (20 milhões de pulsos de clock por segundo = 5 milhões de ciclos de máquina por segundo = 200 ns por ciclo)
• 8 KWords de FlashROM (Word com 14 bits), suportando mais de 8 mil instruções em um programa.
• 368 Bytes de memória RAM
• 256 Bytes de memória EEPROM (regravável via software e não volátil)
• Capacitado
...