PIC do Zero

Programação em C para Microcontroladores PIC

Aula 10 - Primeiro Projeto Real com PIC (LED Piscante)

Nesta aula vamos construir o primeiro projeto prático utilizando um microcontrolador PIC.

O projeto LED Piscante é considerado o "Olá Mundo" da programação embarcada.

Objetivos

  • Configurar uma saída digital.
  • Controlar um LED.
  • Utilizar delays.
  • Entender o ciclo contínuo de execução do PIC.

Componentes

  • PIC16F628A
  • LED 5 mm
  • Resistor R1 = 1K Ω
  • Resistor R2 = 470 Ω
  • Resistor R3 = 10K Ω
  • Capacitor C1 e C2 = 15pF
  • Cristal X1 = 20 Mhz
  • Chave K1 = Push Button
  • Fonte 5 V

Ligação

Diagrama do circuito com o PIC16F628A, resistor e LED
RB10 ---- Resistor 470Ω ---- LED ---- GND

Código Completo

#include <16f628a.h>

void delay_ms(unsigned int tempo)
{
    unsigned int i,j;
    for(i=0;i<tempo;i++)
    {
        for(j=0;j<255;j++);
    }
}

void main()
{
    TRISBbits.TRISB10 = 0;

    while(1)
    {
        PORTBbits.RB10 = 1;
        delay_ms(1000);

        PORTBbits.RB10 = 0;
        delay_ms(1000);
    }
}

Explicação

TRISBbits.TRISB10 = 0; configura RB10 como saída.

PORTBbits.RB10 = 1; acende o LED.

PORTBbits.RB10 = 0; apaga o LED.

while(1) mantém o programa executando para sempre.

A mesma lógica usada para piscar um LED será utilizada futuramente para controlar relés, contatores, válvulas e alarmes industriais.

Exercícios

1. Altere o tempo para 500 ms.

2. Altere o projeto para utilizar RB1.

3. Faça o LED ficar ligado por 2 segundos e desligado por 1 segundo.