- Diogo Penha Marques
- Mensagens : 107
Data de inscrição : 29/02/2024
Idade : 14
Escola : Colégio Estadual da Colônia Murici
Diogo Saraiva Execício 2.26
Qui Jun 27, 2024 2:21 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.26
* Tema: Operador ternário ?
* Atividade: Montar um pisca e enquanto manter a tecla pressionada aumentar a velocidade
* Descrição: Usar operador ternário para trocar a variável de tempo do pisca, usar tecla como critério
* Hardware: Ligar 1 teclas aos pinos digitais configurados como ENTRADA e 1 leds em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), ? (operador ternario)
* DICA1: A função !(not) deve ser usada antes de cada tecla porque a tecla está com resistor de pullup e ligada ao 0V, logo fica em DOWN quando pressionada
* DICA2: usar uma variável para guardar o tempo do pisca-pisca
* DICA3: Para aumentar a velocidade do pisca deve reduzir o valor do tempo no delay
* DICA4: Quando pressionar a tecla o valor da variável diminui aumentando o tempo do pisca
*/
//DEFINICOES INICIAIS
#define led 3 //Definido que o pino 3 vai se chamar "led1"
#define tecla 6 //Definido que o pino 2 vai se chamar "tecla1"
//DECLARAcAO DE VARIAVEIS
int t;//Variavel do tipo int que guarda o valor do tempo de espera
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(led, OUTPUT); //programado o led como saida
}
//PROGRAMA PRINCIPAL
void loop() {
t = !digitalRead(tecla) ? 200 : 500;//Se tecla for apertada t equivale a 200 se nao equivale 500
digitalWrite(led, HIGH);//Liga led
delay(t);//Tempo de espera com o valor de t de ms
t = !digitalRead(tecla) ? 200 : 500;//Se tecla for apertada t equivale a 200 se nao equivale 500
digitalWrite(led, LOW);//Desliga led
delay(t);//Tempo de espera com o valor de t de ms
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 2.26
* Tema: Operador ternário ?
* Atividade: Montar um pisca e enquanto manter a tecla pressionada aumentar a velocidade
* Descrição: Usar operador ternário para trocar a variável de tempo do pisca, usar tecla como critério
* Hardware: Ligar 1 teclas aos pinos digitais configurados como ENTRADA e 1 leds em outro pino digital configurado como SAÍDA
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, !(operador NOT), ? (operador ternario)
* DICA1: A função !(not) deve ser usada antes de cada tecla porque a tecla está com resistor de pullup e ligada ao 0V, logo fica em DOWN quando pressionada
* DICA2: usar uma variável para guardar o tempo do pisca-pisca
* DICA3: Para aumentar a velocidade do pisca deve reduzir o valor do tempo no delay
* DICA4: Quando pressionar a tecla o valor da variável diminui aumentando o tempo do pisca
*/
//DEFINICOES INICIAIS
#define led 3 //Definido que o pino 3 vai se chamar "led1"
#define tecla 6 //Definido que o pino 2 vai se chamar "tecla1"
//DECLARAcAO DE VARIAVEIS
int t;//Variavel do tipo int que guarda o valor do tempo de espera
//FUNÇÕES COMPLEMENTARES
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla,INPUT_PULLUP); //programado a tecla como entrada e usando resistor de pull up
pinMode(led, OUTPUT); //programado o led como saida
}
//PROGRAMA PRINCIPAL
void loop() {
t = !digitalRead(tecla) ? 200 : 500;//Se tecla for apertada t equivale a 200 se nao equivale 500
digitalWrite(led, HIGH);//Liga led
delay(t);//Tempo de espera com o valor de t de ms
t = !digitalRead(tecla) ? 200 : 500;//Se tecla for apertada t equivale a 200 se nao equivale 500
digitalWrite(led, LOW);//Desliga led
delay(t);//Tempo de espera com o valor de t de ms
}
Permissões neste sub-fórum
Não podes responder a tópicos