Índice:

HackerBox 0040: PIC of Destiny: 9 etapas
HackerBox 0040: PIC of Destiny: 9 etapas

Vídeo: HackerBox 0040: PIC of Destiny: 9 etapas

Vídeo: HackerBox 0040: PIC of Destiny: 9 etapas
Vídeo: HackerBox 0040 PIC of Destiny 2024, Novembro
Anonim
HackerBox 0040: PIC of Destiny
HackerBox 0040: PIC of Destiny

Saudações aos Hackers HackerBox em todo o mundo. O HackerBox 0040 nos faz experimentar microcontroladores PIC, breadboarding, monitores LCD, GPS e muito mais. Este Instructable contém informações para começar a usar o HackerBox 0040, que pode ser adquirido aqui enquanto durarem os estoques. Se você gostaria de receber um HackerBox como este diretamente em sua caixa de correio a cada mês, inscreva-se em HackerBoxes.com e junte-se à revolução!

Tópicos e objetivos de aprendizagem para HackerBox 0040:

  • Desenvolva sistemas embarcados com microcontroladores PIC
  • Explore a programação em circuito de sistemas embarcados
  • Teste as opções de fonte de alimentação e clock para sistemas embarcados
  • Interface de um microcontrolador PIC para um módulo de saída LCD
  • Experimente com um receptor GPS integrado
  • Use o PIC do Destino

HackerBoxes é o serviço de caixa de assinatura mensal para eletrônicos DIY e tecnologia de computador. Somos amadores, criadores e experimentadores. Somos os sonhadores dos sonhos.

HACK THE PLANET

Etapa 1: Lista de conteúdo para HackerBox 0040

Image
Image
  • Microcontrolador PIC PIC16F628 (DIP 18)
  • Microcontrolador PIC PIC12F675 (DIP 8)
  • Programador e depurador PICkit 3 In-Circuit
  • Alvo de programação de soquete ZIF para PICkit 3
  • Cabo USB e fios do conector para PICkit 3
  • Módulo GPS com antena integrada
  • Módulo LCD alfanumérico 16x2
  • Fonte de alimentação da placa de ensaio com MicroUSB
  • Cristais de 16,00 MHz (HC-49)
  • Botões tácteis momentâneos
  • LEDs VERMELHOS difusos de 5 mm
  • Potenciômetro Trimmer 5K Ohm
  • Capacitores de cerâmica 18pF
  • Capacitores de cerâmica 100nF
  • Resistores 1K Ohm 1 / 4W
  • Resistores 10K Ohm 1 / 4W
  • Placa de ensaio sem solda de 830 pontos (grande)
  • Kit de Jumper Formado com 140 Peças
  • Seleção de violão de celulóide
  • Decalque de matriz PIC16C505 exclusivo

Algumas outras coisas que serão úteis:

  • Ferro de soldar, solda e ferramentas básicas de solda
  • Computador para executar ferramentas de software

Mais importante ainda, você precisará de um senso de aventura, espírito hacker, paciência e curiosidade. Construir e experimentar com eletrônicos, embora muito gratificante, pode ser complicado, desafiador e até mesmo frustrante às vezes. O objetivo é o progresso, não a perfeição. Quando você persiste e aproveita a aventura, uma grande satisfação pode ser derivada deste hobby. Dê cada passo lentamente, preste atenção aos detalhes e não tenha medo de pedir ajuda.

Há uma grande quantidade de informações para membros atuais e potenciais nas Perguntas frequentes dos HackerBoxes. Quase todos os e-mails de suporte não técnico que recebemos já foram respondidos lá, portanto, agradecemos por dedicar alguns minutos para ler o FAQ.

Etapa 2: Microcontroladores PIC

Programação de microcontroladores PIC com PICkit 3
Programação de microcontroladores PIC com PICkit 3

A família de microcontroladores PIC é feita pela Microchip Technology. O nome PIC inicialmente se referia a Peripheral Interface Controller, mas foi posteriormente corrigido para Programmable Intelligent Computer. As primeiras peças da família foram lançadas em 1976. Em 2013, mais de 12 bilhões de microcontroladores PIC individuais foram enviados. Os dispositivos PIC são populares entre desenvolvedores industriais e entusiastas devido ao seu baixo custo, ampla disponibilidade, grande base de usuários, extensa coleção de notas de aplicação, disponibilidade de ferramentas de desenvolvimento gratuitas ou de baixo custo, programação serial e capacidade de memória Flash reprogramável. (Wikipedia)

O HackerBox 0040 inclui dois microcontroladores PIC colocados temporariamente para transporte em um soquete ZIF (força de inserção zero). O primeiro passo é remover os dois PICs do soquete ZIF. Por favor, faça isso agora!

Os dois microcontroladores são um PIC16F628A (folha de dados) em um pacote DIP18 e um PIC12F675 (folha de dados) em um pacote DIP 8.

Os exemplos aqui usam o PIC16F628A, no entanto, o PIC12F675 funciona de forma semelhante. Nós o encorajamos a experimentar em um projeto seu. Seu tamanho minúsculo é uma solução eficiente quando você precisa apenas de um pequeno número de pinos de E / S.

Etapa 3: Programação de microcontroladores PIC com PICkit 3

Existem várias etapas de configuração que precisam ser abordadas ao usar as ferramentas PIC, então aqui está um exemplo bastante básico:

  • Instale o software MPLAB X IDE da Microchip
  • No final da instalação, será apresentado um link para instalar o MPLAB XC8 C Compiler. Certifique-se de selecionar isso. XC8 é o compilador que usaremos.
  • Insira o chip PIC16F628A (DIP18) no soquete ZIF. Observe a posição e a orientação listadas no verso do PCB de destino ZIF.
  • Defina as chaves de jumper conforme indicado no verso do PCB de destino ZIF (B, 2-3, 2-3).
  • Conecte o cabeçalho de programação de cinco pinos da placa de destino ZIF no cabeçalho PICkit 3.
  • Conecte o PICkit 3 ao computador usando o cabo miniUSB vermelho.
  • Execute o MPLAB X IDE.
  • Selecione a opção de menu para criar um novo projeto.
  • Configure: projeto autônomo embutido no microchip e clique em PRÓXIMO.
  • Selecione o dispositivo: PIC16F628A e clique em PRÓXIMO
  • Selecione o depurador: Nenhum; Ferramentas de hardware: PICkit 3; Compilador: XC8
  • Insira o nome do projeto: piscar.
  • Clique com o botão direito nos arquivos de origem e, em novo, selecione novo main.c
  • Dê ao arquivo c um nome como "piscar"
  • Navegue até a janela> visualização da memória de tag> bits de configuração
  • Defina o bit FOSC como INTOSCIO e todo o resto como OFF.
  • Clique no botão “gerar código-fonte”.
  • Cole o código gerado em seu arquivo blink.c acima
  • Cole também no arquivo c: #define _XTAL_FREQ 4000000
  • Passado no bloco principal do código c abaixo:

void main (void)

{TRISA = 0b00000000; enquanto (1) {PORTAbits. RA3 = 1; _delay_ms (300); PORTAbits. RA3 = 0; _delay_ms (300); }}

  • Clique no ícone do martelo para compilar
  • Navegue para produção> definir configuração do projeto> personalizar
  • Selecione PICkit 3 no painel esquerdo da janela pop-up e, em seguida, Power no campo suspenso na parte superior.
  • Clique na caixa “alvo de energia”, defina a tensão alvo para 4,875 V, clique em Aplicar.
  • De volta à tela principal, clique no ícone de seta verde.
  • Um aviso sobre a voltagem aparecerá. Clique em continuar.
  • Você deve eventualmente obter “Programação / Verificação Concluída” na janela de status.
  • Se o programador não estiver se comportando, pode ajudar desligar o IDE e apenas executá-lo novamente. Todas as configurações selecionadas devem ser mantidas.

Etapa 4: breadboarding o PIC programado com Blink.c

Breadboarding o PIC programado com Blink.c
Breadboarding o PIC programado com Blink.c

Uma vez que o PIC é programado (etapa anterior), ele pode ser colocado em uma placa de ensaio sem solda para teste.

Como o oscilador interno foi selecionado, só precisamos conectar três pinos (alimentação, aterramento, LED).

A energia pode ser fornecida à placa de ensaio usando o módulo de fonte de alimentação. Dicas para usar o módulo de fonte de alimentação:

  • Coloque um pouco mais de solda nas abas laterais do soquete microUSB antes que ele se quebre - não depois.
  • Certifique-se de que os "pinos pretos" vão para o trilho de aterramento e os "pinos brancos" para o barramento de alimentação. Se eles estiverem invertidos, você está do lado errado da placa de ensaio.
  • Mude ambos os interruptores para 5 V para os chips PIC incluídos.

Depois de posicionar o microcontrolador PIC, observe o indicador do pino 1. Os pinos são numerados a partir do pino 1 no sentido anti-horário. Conecte o pino 5 (VSS) ao GND, o pino 14 (VDD) a 5V e o pino 2 (RA3) ao LED. Observe em seu código, o pino de E / S RA3 está sendo ligado e desligado para piscar o LED. O pino mais longo do LED deve se conectar ao PIC, enquanto o pino mais curto deve se conectar a um resistor de 1K (marrom, preto, vermelho). A extremidade oposta do resistor deve se conectar ao trilho GND. O resistor simplesmente atua como um limite de corrente para que o LED não pareça estar em curto entre 5V e GND e consuma muita corrente.

Etapa 5: Programação no circuito

Programação no circuito
Programação no circuito

O dongle PICkit 3 pode ser usado para programar o chip PIC no circuito. O dongle também pode fornecer energia ao circuito (o alvo da placa de ensaio), assim como fizemos com o alvo ZIF.

  • Remova a fonte de alimentação da placa de ensaio.
  • Conecte os cabos do PICkit 3 à placa de ensaio em 5V, GND, MCLR, PGC e PGD.
  • Altere os números de atraso no código C.
  • Recompile (ícone do martelo) e depois programe o PIC.

Como os números de atraso foram alterados, o LED deve piscar de forma diferente agora.

Etapa 6: usando um oscilador de cristal externo

Usando um oscilador de cristal externo
Usando um oscilador de cristal externo

Para este experimento PIC, mude do oscilador interno para um oscilador de cristal externo de alta velocidade. Não só o oscilador de cristal externo é mais rápido (16 MHz em vez de 4 MHz), mas é muito mais preciso.

  • Altere o bit de configuração FOSC de INTOSCIO para HS.
  • Altere a configuração do FOSC IDE e o #define no código.
  • Altere #define _XTAL_FREQ 4000000 de 4000000 para 16000000.
  • Reprogramar o PIC (talvez alterar os números de atraso novamente)
  • Verifique a operação com o cristal externo.
  • O que acontece quando você puxa o cristal da placa de ensaio?

Etapa 7: conduzindo um módulo de saída de LCD

Conduzindo um Módulo de Saída de LCD
Conduzindo um Módulo de Saída de LCD

O PIC16F628A pode ser usado para conduzir a saída para um Módulo LCD Alfanumérico 16x2 (dados) quando conectado conforme mostrado aqui. O arquivo picLCD.c anexado fornece um programa de exemplo simples para escrever saída de texto no módulo LCD.

Etapa 8: Receptor de localização e hora do GPS

Receptor de hora e localização GPS
Receptor de hora e localização GPS

Este módulo GPS pode determinar o tempo e localização com bastante precisão a partir de sinais recebidos do espaço em sua pequena antena integrada. Apenas três pinos são necessários para a operação básica.

O LED vermelho "Power" acenderá quando a alimentação adequada for conectada. Uma vez que os sinais de satélite são adquiridos, o LED verde "PPS" começa a pulsar.

A energia é fornecida aos pinos GND e VCC. O VCC pode operar em 3,3 V ou 5 V.

O terceiro pino necessário é o pino TX. O pino TX emite um fluxo serial que pode ser capturado em um computador (via adaptador TTL-USB) ou em um microcontrolador. Existem vários projetos de exemplo para receber dados GPS em um Arduino.

Este repositório git inclui documentação em pdf para este tipo de módulo GPS. Verifique também o u-center.

Este projeto e vídeo demonstram um exemplo de captura de data e hora de alta precisão de um módulo GPS em um microcontrolador PIC16F628A.

Etapa 9: viva o HackLife

Viva o HackLife
Viva o HackLife

Esperamos que você tenha gostado da viagem deste mês para a eletrônica DIY. Entre em contato e compartilhe seu sucesso nos comentários abaixo ou no Grupo HackerBoxes no Facebook. Certamente, deixe-nos saber se você tiver alguma dúvida ou precisar de ajuda com alguma coisa.

Junta-te à revolução. Viva o HackLife. Você pode obter uma caixa térmica com projetos de tecnologia de computador e eletrônicos hackeaveis entregue diretamente em sua caixa de correio a cada mês. Basta navegar até HackerBoxes.com e assinar o serviço mensal HackerBox.

Recomendado: