- Renata Pinheiro B
- Mensagens : 54
Data de inscrição : 31/07/2021
Idade : 16
Escola : Lindaura Ribeiro Lucas
Exercício 1.16 resolvido
Sáb Out 09, 2021 10:31 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.16
* Atividade: Testar as 4 formas de interrupção e seus comportamentos
* Descrição: Montar um pisca e quando pressionar uma tecla, interromper o arduino e acender outro led
* Hardware: Ligar uma tecla em D2 configurado como ENTRADA PULLUP e programa-la como interrupção, em outro pino digital um led configurado como SAÍDA e noutro pino o segundo LED
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, attachInterrupt
* Dica1: Use no modo de interrupção as opções LOW, CHANGE, RISING, FALLING e disserte sobre o comportamento de cada uma delas.
* Dica2: Para garantir a nota responda as questões abaixo:
* Questão1: Quando o pino de interrupção está configurado como FALLING, o buzzer é acionado quando a tecla2 for pressionada ou depressionada?
* Questáo2: Quando o pino de interrupção está configurado como CHANGE, em que condição o buzzer é acionado?
* Questão3: Caso em determinado trecho do programa não seja mais necessário tratar as interrupções qual o comando deve ser usado no programa?
*/
//DEFINICOES INICIAIS
#define ledPisca 6//define que o pino 6 vai se chamar ledPisca
#define ledInt 7//define que o pino 7 vai se chamar ledInt
#define teclaInt 2//define que o pino 2 vai se chamar teclaInt
//DECLARAcAO DE VARIAVEIS
boolean estado = 0;//variável boolean definida como estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza() {
estado = !estado;//inverte o estado da tecla
digitalWrite(ledInt, estado);//o valor do led vai ficar igual ao estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);//define o ledPisca como saída
pinMode(ledInt, OUTPUT);//define o ledInt como saída
pinMode(teclaInt, INPUT_PULLUP);//define o teclaInt como entrada
attachInterrupt(0,sinaliza,CHANGE);//vai interromper o void sinaliza
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH);//liga o ledPisca
delay(500);//pausa de 500ms
digitalWrite(ledPisca, LOW );//desliga o ledPisca
delay(500);//pausa de 500ms
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.16
* Atividade: Testar as 4 formas de interrupção e seus comportamentos
* Descrição: Montar um pisca e quando pressionar uma tecla, interromper o arduino e acender outro led
* Hardware: Ligar uma tecla em D2 configurado como ENTRADA PULLUP e programa-la como interrupção, em outro pino digital um led configurado como SAÍDA e noutro pino o segundo LED
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, attachInterrupt
* Dica1: Use no modo de interrupção as opções LOW, CHANGE, RISING, FALLING e disserte sobre o comportamento de cada uma delas.
* Dica2: Para garantir a nota responda as questões abaixo:
* Questão1: Quando o pino de interrupção está configurado como FALLING, o buzzer é acionado quando a tecla2 for pressionada ou depressionada?
* Questáo2: Quando o pino de interrupção está configurado como CHANGE, em que condição o buzzer é acionado?
* Questão3: Caso em determinado trecho do programa não seja mais necessário tratar as interrupções qual o comando deve ser usado no programa?
*/
//DEFINICOES INICIAIS
#define ledPisca 6//define que o pino 6 vai se chamar ledPisca
#define ledInt 7//define que o pino 7 vai se chamar ledInt
#define teclaInt 2//define que o pino 2 vai se chamar teclaInt
//DECLARAcAO DE VARIAVEIS
boolean estado = 0;//variável boolean definida como estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza() {
estado = !estado;//inverte o estado da tecla
digitalWrite(ledInt, estado);//o valor do led vai ficar igual ao estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);//define o ledPisca como saída
pinMode(ledInt, OUTPUT);//define o ledInt como saída
pinMode(teclaInt, INPUT_PULLUP);//define o teclaInt como entrada
attachInterrupt(0,sinaliza,CHANGE);//vai interromper o void sinaliza
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH);//liga o ledPisca
delay(500);//pausa de 500ms
digitalWrite(ledPisca, LOW );//desliga o ledPisca
delay(500);//pausa de 500ms
}
- alvaro 123456
- Mensagens : 481
Data de inscrição : 27/04/2019
Idade : 18
Re: Exercício 1.16 resolvido
Dom Out 31, 2021 4:58 pm
Oi
Renata
Faltou responder a perguntas
Renata
Faltou responder a perguntas
- Renata Pinheiro B
- Mensagens : 54
Data de inscrição : 31/07/2021
Idade : 16
Escola : Lindaura Ribeiro Lucas
Re: Exercício 1.16 resolvido
Sáb Mar 12, 2022 11:40 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.16
* Atividade: Testar as 4 formas de interrupção e seus comportamentos
* Descrição: Montar um pisca e quando pressionar uma tecla, interromper o arduino e acender outro led
* Hardware: Ligar uma tecla em D2 configurado como ENTRADA PULLUP e programa-la como interrupção, em outro pino digital um led configurado como SAÍDA e noutro pino o segundo LED
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, attachInterrupt
* Dica1: Use no modo de interrupção as opções LOW, CHANGE, RISING, FALLING e disserte sobre o comportamento de cada uma delas.
* Dica2: Para garantir a nota responda as questões abaixo:
* Questão1: Quando o pino de interrupção está configurado como FALLING, o buzzer é acionado quando a tecla2 for pressionada ou depressionada?
* Resposta: o buzzer é acionado| quando o valor do pino muda de 1 para 0, ou seja, pressionada
* Questáo2: Quando o pino de interrupção está configurado como CHANGE, em que condição o buzzer é acionado?
* Resposta: o buzzer é acionado quando o pino muda de estado de 0 para 1 ou de 1 para 0
* Questão3: Caso em determinado trecho do programa não seja mais necessário tratar as interrupções qual o comando deve ser usado no programa?
* Resposta: noInterrupts()
*/
//DEFINICOES INICIAIS
#define ledPisca 6//define que o pino 6 vai se chamar ledPisca
#define ledInt 7//define que o pino 7 vai se chamar ledInt
#define teclaInt 2//define que o pino 2 vai se chamar teclaInt
//DECLARAcAO DE VARIAVEIS
boolean estado = 0;//variável boolean definida como estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza() {
estado = !estado;//inverte o estado da tecla
digitalWrite(ledInt, estado);//o valor do led vai ficar igual ao estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);//define o ledPisca como saída
pinMode(ledInt, OUTPUT);//define o ledInt como saída
pinMode(teclaInt, INPUT_PULLUP);//define o teclaInt como entrada
attachInterrupt(0,sinaliza,CHANGE);//vai interromper o void sinaliza
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH);//liga o ledPisca
delay(500);//pausa de 500ms
digitalWrite(ledPisca, LOW );//desliga o ledPisca
delay(500);//pausa de 500ms
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.16
* Atividade: Testar as 4 formas de interrupção e seus comportamentos
* Descrição: Montar um pisca e quando pressionar uma tecla, interromper o arduino e acender outro led
* Hardware: Ligar uma tecla em D2 configurado como ENTRADA PULLUP e programa-la como interrupção, em outro pino digital um led configurado como SAÍDA e noutro pino o segundo LED
* Comandos: pinMode, digitalRead, digitalWrite, PULLUP, attachInterrupt
* Dica1: Use no modo de interrupção as opções LOW, CHANGE, RISING, FALLING e disserte sobre o comportamento de cada uma delas.
* Dica2: Para garantir a nota responda as questões abaixo:
* Questão1: Quando o pino de interrupção está configurado como FALLING, o buzzer é acionado quando a tecla2 for pressionada ou depressionada?
* Resposta: o buzzer é acionado| quando o valor do pino muda de 1 para 0, ou seja, pressionada
* Questáo2: Quando o pino de interrupção está configurado como CHANGE, em que condição o buzzer é acionado?
* Resposta: o buzzer é acionado quando o pino muda de estado de 0 para 1 ou de 1 para 0
* Questão3: Caso em determinado trecho do programa não seja mais necessário tratar as interrupções qual o comando deve ser usado no programa?
* Resposta: noInterrupts()
*/
//DEFINICOES INICIAIS
#define ledPisca 6//define que o pino 6 vai se chamar ledPisca
#define ledInt 7//define que o pino 7 vai se chamar ledInt
#define teclaInt 2//define que o pino 2 vai se chamar teclaInt
//DECLARAcAO DE VARIAVEIS
boolean estado = 0;//variável boolean definida como estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza() {
estado = !estado;//inverte o estado da tecla
digitalWrite(ledInt, estado);//o valor do led vai ficar igual ao estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);//define o ledPisca como saída
pinMode(ledInt, OUTPUT);//define o ledInt como saída
pinMode(teclaInt, INPUT_PULLUP);//define o teclaInt como entrada
attachInterrupt(0,sinaliza,CHANGE);//vai interromper o void sinaliza
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH);//liga o ledPisca
delay(500);//pausa de 500ms
digitalWrite(ledPisca, LOW );//desliga o ledPisca
delay(500);//pausa de 500ms
}
Permissões neste sub-fórum
Não podes responder a tópicos