// Exercicio da Aula do dia 14/09/2024
// Nome do Aluno:WESLEY SOUZA DA SILVA
//===============================================================
#include "pico/stdlib.h"//CHAMAR BIBLIOTECA
#define SETA_ESQ_DIANTEIRA 2 //NOMEAR PORTA 2
#define SETA_ESQ_TRASEIRA 3 //NOMEAR PORTA 3
#define SETA_DIR_DIANTEIRA 27 //NOMEAR PORTA 27
#define SETA_DIR_TRASEIRA 28 //NOMEAR PORTA 28
#define CHAVE_ESQUERDA 17 //NOMEAR PORTA 17
#define CHAVE_DIREITA 19 //NOMEAR PORTA 19
#define CHAVE_PISCA_ALERTA 18 //NOMEAR PORTA 18
//====================================================================
// PROGRAMA PRINCIPAL
//====================================================================
int main()
{
//CONFIRMAR PINOS QUE SERAO USADOS
gpio_init(CHAVE_ESQUERDA);
gpio_init(CHAVE_DIREITA);
gpio_init(CHAVE_PISCA_ALERTA);
gpio_init(SETA_ESQ_DIANTEIRA);
gpio_init(SETA_ESQ_TRASEIRA);
gpio_init(SETA_DIR_DIANTEIRA);
gpio_init(SETA_DIR_TRASEIRA);
/*CONFIGURAR OS PINOS COMO ENTRADAS OU SAIDAS*/
gpio_set_dir(CHAVE_ESQUERDA,GPIO_IN);
gpio_set_dir(CHAVE_DIREITA, GPIO_IN);
gpio_set_dir(CHAVE_PISCA_ALERTA, GPIO_IN);
gpio_set_dir(SETA_ESQ_DIANTEIRA, GPIO_OUT);
gpio_set_dir(SETA_ESQ_TRASEIRA, GPIO_OUT);
gpio_set_dir(SETA_DIR_DIANTEIRA,GPIO_OUT);
gpio_set_dir(SETA_DIR_TRASEIRA,GPIO_OUT);
while (true) // LAÇO INFINITO
{
if(gpio_get(CHAVE_ESQUERDA)==0 && gpio_get(CHAVE_DIREITA) && gpio_get(CHAVE_PISCA_ALERTA))//SE O CHAVE ESQUERDA ESTIVER LIGADO E A CHAVE DIREIRA E A CHAVE DE SETA ESTIVER DESLIGADA FACA ISSO
{
gpio_put(SETA_ESQ_DIANTEIRA,1);//LIGAR LED
gpio_put(SETA_ESQ_TRASEIRA,1);
sleep_ms(500);
gpio_put(SETA_ESQ_DIANTEIRA,0);//DESLIGAR LED
gpio_put(SETA_ESQ_TRASEIRA,0);
sleep_ms(500);
}
if(gpio_get(CHAVE_DIREITA)==0 && gpio_get(CHAVE_ESQUERDA) && gpio_get(CHAVE_PISCA_ALERTA))//SE A CHAVE DIREITA ESTIVER LIGADA E A CHAVE ESQUERDA E A CAHVE DE SETA ESTIVER DELIGADA FACA ISSO
{
gpio_put(SETA_DIR_DIANTEIRA,1);//LED LIGADO
gpio_put(SETA_DIR_TRASEIRA,1);
sleep_ms(500);
gpio_put(SETA_DIR_DIANTEIRA,0);//LED DESLIGADO
gpio_put(SETA_DIR_TRASEIRA,0);
sleep_ms(500);
}
if(gpio_get(CHAVE_PISCA_ALERTA)==0)// && gpio_get(CHAVE_DIREITA) && gpio_get(CHAVE_ESQUERDA))//SE A CHAVE DE SETA ESTIVER LIGADA E A CHAVE DIREITA E ESQUERDA DESLIGADA FACA ISSO
{
gpio_put(SETA_ESQ_DIANTEIRA,1);
gpio_put(SETA_ESQ_TRASEIRA,1);
gpio_put(SETA_DIR_DIANTEIRA,1);
gpio_put(SETA_DIR_TRASEIRA,1);
sleep_ms(500);
gpio_put(SETA_ESQ_DIANTEIRA,0);
gpio_put(SETA_ESQ_TRASEIRA,0);
gpio_put(SETA_DIR_DIANTEIRA,0);
gpio_put(SETA_DIR_TRASEIRA,0);
sleep_ms(500);
gpio_put(CHAVE_DIREITA,0);
gpio_put(CHAVE_ESQUERDA,0);
}
}
}