Olá, hoje temos uma postagem do senhor Renato "Estrobo duplo alternado para estacionamento".
lista de peças para montagem em bancada:
- matriz de contatos pequena
- pic16F628A, microcontrolador da Microchip
- 2 resistor de 220 ohm para limitar a corrente do LED
- 2 LED de 3 ou 5 mm vermelho
- cabinhos para ligações dos componentes
- fonte de 5V, pode ser um carregador de celular ou suporte de 3 pilhas(4,5V)
O código fonte:
/////////////////////////////////////////////////////////////////////// // Projeto: Estrobo duplo alternado para estacionamento // // Nome: Renato Lôbo Rodrigues // // Data: 12/03/17 // // Email: lobosoft@oi.com.br // /////////////////////////////////////////////////////////////////////// #include <16F628A.h> #use delay (clock = 4Mhz) //Configure os fusíveis em acordo com o pic selecionado #fuses NOWDT #fuses PUT #fuses NOBROWNOUT #fuses NOMCLR #fuses INTRC_IO #fuses PROTECT //Estes registros encontra-se nas funções especiais de cada modelo de pic. #byte tris_portA = 0x85 //direção do portA #bit led1 = 0x05.0 //pino A0 #bit led2 = 0x05.1 //pino A1 int1 flag=false; //___________________________________________ void estrobo() { int8 f; //variável do laço for flag=!flag; //inverte a variável flag if(flag){ //se flag é verdadeiro for(f=0;f<10;f++) //laço de contagem de 0 até 9 { led1 = !led1 ; //Acende ou apaga o led1 delay_ms(30); //tempo de 30 milisegundos } }else{ //caso flag seja falso for(f=0;f<10;f++) //laço de contagem de 0 até 9 { led2 = !led2 ; //Acende ou apaga o led1 delay_ms(30); } } } //Rotina principal void main() { int16 conta=0; //cria uma variável conta igual a zero tris_portA = 0b11111100; //pino A0 e A1 como saída led1 = 0; //apaga o led1 led2 = 0; //apaga o led2 while(true) //laço infinito { conta++; //inrementa conta if(conta>=25000) // se conta é maior ou igual a 25000 { conta=0;estrobo(); //zera a contagem e chama rotina de estrobo }//fim do if }//fim do while } //fim do main
Vídeo de demonstração:
https://drive.google.com/file/d/0B9fK-FRZeeWNQWNsSXRzZmdMTVE/view?usp=sharing
Boa noite,
ResponderExcluirGostei muito deste projeto Estrobo duplo alternado para estacionamento - CCS
Estou pretendendo montar este projeto, mas queria que ele tivesse dois estágio, o 1º pisca 3 sequencia individual como no vídeo e o 2º pisca novamente 3 sequencia simultâneo. Voltando depois para o loop.
Seria possível você acrescentar esse segundo estágio na sua programação?
Quero este projeto para colocar nas lâmpadas de ré do carro
Desculpe, não entendi o "estágio"
ResponderExcluir