quarta-feira, 19 de agosto de 2020

EX02 - Relógio digital com PIC16F84 de 24 horas


Especificações do Projeto: Relógio digital com PIC16F84 de 24 horas

PIC : PIC16F84A
Frequência do processador : 4 MHz
Faixa : 0 a 24 horas
Timer Set : Up - Down Switch
Visor : Hora: 00-23 Minuts: 00-59
Alimentação : 6V DC externo
O relógio conta a cada segundo controlado pelo hardware.
Tempo ajustável com interruptores SW1 (Reset), SW2 (Up) e SW2 (Down).
LED1 indica segundos.
Diagrama do Circuito Eletrônico - Relógio digital com PIC16F84 de 24 horas.

O diagrama elétrico do Relógio digital com PIC16F84 de 24 horas está disponível em: 20_08_09 Relógio digital com PIC16F84 SRG.

O layout da parte inferior da placa do Relógio digital com PIC16F84 está disponível em: 20_08_09 Relógio digital com PIC16F84_LYB_SRG.

O layout da parte superior da placa do Relógio digital com PIC16F84 está disponível em: 20_08_09 Relógio digital com PIC16F84_LYT_SRG.

A máscara de componentes do Relógio digital com PIC16F84 está disponível em: 20_08_09 Relógio digital com PIC16F84_MC_SRG.

Arquivos do código fonte - Relógio de 24 horas está disponível em: Relógio HEX e ASM (RAR)

© Direitos de autor. 2014: Gomes; Sinésio Raimundo. Última atualização: 10/08/2014

terça-feira, 18 de agosto de 2020

EX01 - LED flasher com PIC16F84

Especificações do Projeto: LED flasher com PIC16F84
PIC : PIC16F84A;
Frequência do processador : 10 MHz;
Flasher Set : Sw1, Sw2, Sw3, Sw4 e Sw5;
Alimentação : 12V DC externo;
Este circuito controla o piscar de oito LEDs com o software do PIC. O padrão de intermitência pode ser alterado com cinco interruptores. Este circuito de flash LED, que é frequentemente usado como prática de software PIC.

Circuito de entrada - Cinco pinos de RA0 a RA4 são usados ​​como o pino de entrada. Esses pinos são ligados á nivel ´logico alto com resistores de 10K ohm. Portanto, quando uma chave não é pressionada, a entrada se torna o nível H (+ 5V). e quando um interruptor é pressionado, ele se tornará o nível L (0V). Quando a chave "sw" fecha, ocorre a vibração. O ruído é o fenômeno que ocorre com o limite do ponto de contato. A abertura e o fechamento de um ponto de contato se repetem em pouco tempo.
Não coloco o circuito de prevenção ao ruído no circuito. Quando o software detecta que a chave está fechada uma vez, o processamento do piscar dos LEDs é executado em um tempo maior que o ruído.
Circuito de controle de LED - Oito pinos de RB0 a RB7 são usados ​​para o pino de saída. O lado do ânodo do LED é conectado com +5 V e o lado do cátodo é controlado pelo PIC através do resistor. Portanto, quando a saída do PIC está no nível H (+ 5V), o LED apaga e quando a saída do PIC está no nível L (0V), o LED acende. Estou usando LED de alto brilho para fazer com que a corrente flua pouco.
Circuito gerador de "clock" - Este é o circuito que usou cristal ressonador de 10 MHz. É muito simples.
Circuito de alimentação - O regulador de 3 terminais é usado para obter a saída de + 5 V da entrada de alimentação de + 12 V. Por estar suprimindo a corrente do LED, um regulador do tipo 100 mA é suficiente.

Fluxograma do software "LED Flasher"
Figura 04 - Fluxograma.
Este é o fluxograma que mostra o esboço do processamento do software. No caso do software com escala simples, desta vez, não há necessidade de fazer um fluxograma. Todo o processamento pode ser entendido apenas pela lista. Este fluxograma como a prática.

O diagrama elétrico do LED flasher com PIC16F84 está disponível em: 20_08_09 LED flasher com PIC16F84 SRG.

O layout da placa do LED flasher com PIC16F84 está disponível em: 20_08_09 LED flasher com PIC16F84_LY_SRG.

A máscara de componentes do LED flasher com PIC16F84 está disponível em: 20_08_09 LED flasher com PIC16F84_MC_SRG.

Arquivos do código fonte - LED flasher com PIC16F84 está disponível em: LED flasher HEX e ASM (RAR) .

Referência: The Hobby Electronics - © Seiichi Inoue 2005

© Direitos de autor. 2014: Gomes; Sinésio Raimundo. Última atualização: 10/08/2014

segunda-feira, 17 de agosto de 2020

Aula 24 - MPLAB e Compilador C CCS para Microcontrolador PIC 16F84

As informações deste post foram testadas em um computador com Windows 7 64 bits, mas servem de base para outras versões do Windows e também outros sistemas operacionais, como Linux e Mac. O tutorial é um pouco extenso e recomendamos não pular passos e seguir o tutorial conforme é apresentado, pois algumas tarefas dependem das anteriores. 
1 – Instalação do compilador C CCS
O primeiro passo é a instalação do Compilador C, que será utilizado juntamente com o MPLAB para gerar o arquivo HEX. É importante que a instalação do compilador seja feita antes da instalação do MPLAB. O compilador C CCS é uma versão demo, mas totalmente funcional, que pode ser baixada neste link. É necessário o preenchimento de um pequeno cadastro para liberação do download, que irá gerar o arquivo DEMOUPD.EXE no seu computador. A instalação é simples e não requer configuração adicional. No final da instalação, permita que o instalador configure os plugins para o MPLAB X:
Compilador C - Plugins

2 – Instalação do MPLAB

MPLAB é um software da Microchip, fabricante do microcontrolador PIC16F628A, que iremos utilizar nesse experimento. A versão que utilizamos é a MPLAB X IDE 2.0 e pode ser baixada nesse link. Note que o pacote de instalação tem 358 Mb e que o tempo de download vai variar de acordo com a sua conexão de internet:
MPLAB X Pagina download
O arquivo baixado tem o formato ZIP, e ao descompactar temos um único arquivo chamado MPLABX-V2.00-windows-installer.exe. Execute este arquivo e terá início o processo de instalação. Na tela inicial, clique em NEXT :
MPLab Install - Tela inicial
A tela seguinte apresenta os termos da licença de software. Clique em I accept the agreement :
MPLab Install - License Agreement
Escolha o local de instalação do programa. No nosso caso, o MPLAB foi instalado na pasta C:Program Files (x86)MicrochipMPLABX :
MPLab Install - Pasta
Clique em Next na próxima tela para iniciar a instalação :
MPLab Install - Pronto para instalacao
Terá início o processo de instalação e cópia dos arquivos :
MPLab Install - Instalando
Antes do final da instalação, o Windows emitirá um alerta dizendo que o Sistema Operacional não pôde verificar a assinatura digital do driver. Clique em Instalar este software de driver mesmo assim. Não há risco de danificar o computador pois estamos utilizando o software de uma fonte confiável :
MPLab Install - Driver - Aviso
A tela final de instalação do MPLAB será apresentada. Mantenha a opção XC compilers are not installed with the IDE desativada e clique em FINISH :
MPLab Install - Instalacao finalizada
Antes de iniciarmos a compilação do projeto, vamos finalizar a configuração do plugin do CCS que instalamos anteriormente. Inicie o MPLAB :
MPLab - Tela inicial
No menu Tools, clique em Plugins. Na tela de configuração de plugins, escolha o plugin CCS C Compiler e clique em install :
MPLab - Plugins CCS Install
O plugin do CCS será instalado e, ao final, permita que o instalador reinicie o MPLAB para que as alterações tenham efeito.
3 – Criação do programa e geração do arquivo HEX
Na tela inicial do MPLAB você irá criar um novo projeto. Selecione FILE > NEW PROJECT :
MPLab - File New Project
Na próxima tela, em CATEGORIES, selecione Microchip Embedded e, em Projects, selecione Standalone Project, depois clique em NEXT :
MPLab - Selecionando projeto
Vamos agora selecionar a familia e o microcontrolador que iremos utilizar no projeto. No nosso caso, a familia será Mid-Range 8-bit MCUs (PIC12/16/MCP), e o dispositivo (device) será PIC16F628A :
MPLab - Selecionando microcontrolador
A próxima tela, SELECT HEADER, é opcional, deixe o valor em None e clique em NEXT :
MPLab -Select Header
Na tela Select Tool, também não altere nada e clique em NEXT :
MPLAB - Select Tool
Na próxima tela, iremos selecionar o compilador, e utilizaremos o CCS C Compiler, que instalamos e configuramos anteriormente :
MPLab - Selecionando compilador
Agora, dê um nome ao projeto, e selecione a sua localização no disco.  Criamos no disco C: uma pasta chamada PIC Projetos :
MPLAB - Selecionando Project Name and folder
Clique em Finish e a estrutura do projeto será criada no MPLAB :
MPLab -Estrutura do projeto
No lado esquerdo da tela, clique com o botão direito em SOURCE FILES, depois, em NEW, e finalmente em C Source File. Na tela que será apresentada, digite o nome do arquivo que será criado. Usamos o nome : PIC_LED. Após escolher o nome, clique em Finish :
MPLab - New C source File
Repare agora que no lado esquerdo da tela, abaixo de Source Files, há o nome PIC_LED.c, e à direita, uma área em branco para edição do programa :
MPLab - Tela de edicao
No lado direito, na área de edição, digite ou copie o programa abaixo :
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//Programa : Pisca LED com PIC16F628A
//Autor : FILIPEFLOP
//Carrega a biblioteca para o microcontrolador PIC16F628A
#include <16F628A.h>
//Configuracao FUSES
#FUSES NOWDT
#FUSES INTRC_IO
#FUSES NOPUT
#FUSES NOPROTECT
#FUSES NOBROWNOUT
#FUSES NOMCLR
#FUSES NOLVP
#FUSES NOCPD
//Define a utilização do clock interno de 4 Mhz
#use delay(clock=4000000)
#define PINOLED PIN_A1 //Pino ao qual o led esta ligado
void main()
{
while (1)
 {
  output_bit(PINOLED, TRUE); // Liga o Led
  delay_ms(5000); // Aguarda 3 segundos
  output_bit(PINOLED, FALSE); // Desliga o Led
  delay_ms(2000); // Aguarda 2 segundos
 }
}
Com o programa pronto, aperte o botão correspondente à opção Clean and Build Main Project (em azul). O projeto será compilado e o arquivo HEX gerado na pasta C:PIC ProjetosProjeto_PIC_LED_PISCA.Xdistdefaultproduction. Lembre-se que esta pasta foi a que usamos para os testes. No seu computador, essa informação pode ser diferente :
MPLab - Build successful
É esse arquivo HEX que iremos utilizar no passo seguinte, para finalmente gravarmos o programa no microcontrolador.