Código feito em CCS C Compiler
#include <16F628a.h>
#fuses INTRC_IO, NOMCLR, NOWDT
#use delay(clock = 8MHz)
#define use_portb_lcd true
#include <lcd.c>
int estado = 0;
void main(void){
set_tris_a(0x0f);
output_a(0x00);
lcd_init();
while(true){
do{
lcd_putc("\f ESCOLHA ABAIXO");
lcd_putc("\n1-Am, 2-Ve, 3-Az");
delay_ms(200);
if(input(pin_a0)){
lcd_putc("\f ACENDE LED\n AMARELO");
estado = 1;
delay_ms(1000);
}
if(input(pin_a1)){
lcd_putc("\f ACENDE LED\n VERMELHO");
estado = 2;
delay_ms(1000);
}
if(input(pin_a2)){
lcd_putc("\f ACENDE LED\n AZUL");
estado = 3;
delay_ms(1000);
}
if(input(pin_a3)){
lcd_putc("\f ACENDE LED\n TENTE NOVAMENTE");
delay_ms(1000);
}
}while(estado == 0);
if(estado == 1){
delay_ms(1000);
lcd_putc("\f LED AMARELO \n ACIONADO");
output_high(pin_a6);
delay_ms(5000);
output_low(pin_a6);
estado = 0;
}
if(estado == 2){
delay_ms(1000);
lcd_putc("\f LED VERMELHO \n ACIONADO");
output_high(pin_a7);
delay_ms(5000);
output_low(pin_a7);
estado = 0;
}
if(estado == 3){
delay_ms(1000);
lcd_putc("\f LED AZUL \n ACIONADO");
output_high(pin_b3);
delay_ms(5000);
output_low(pin_b3);
estado = 0;
}
}
}
Créditos para: Alexandro Lima
Nenhum comentário:
Postar um comentário