- lucca senn dallagassa
- Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas
exercicio 1.17
Qui maio 28, 2020 9:39 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.17
* 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 ledintn 8
#define teclaInt 3
//DECLARAcAO DE VARIAVEIS
//FUNÇÕES INTERRUPÇÃO
void sinaliza(){
digitalWrite(ledInt, HIGH);
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);
pinMode(ledint, OUTPUT):
pinMode(ledInt, OUTPUT);
attachInterrupt(0,sinaliza,FALLING):
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH)
delay(500);
digitalWrite(ledPisca, LOW):
delay(500);
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.17
* 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 ledintn 8
#define teclaInt 3
//DECLARAcAO DE VARIAVEIS
//FUNÇÕES INTERRUPÇÃO
void sinaliza(){
digitalWrite(ledInt, HIGH);
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(ledPisca, OUTPUT);
pinMode(ledint, OUTPUT):
pinMode(ledInt, OUTPUT);
attachInterrupt(0,sinaliza,FALLING):
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(ledPisca, HIGH)
delay(500);
digitalWrite(ledPisca, LOW):
delay(500);
Re: exercicio 1.17
Qui maio 28, 2020 9:52 pm
Lucca, Nos programas precisa dos comentários, sem eles tenho que descontar 5.0 pontos, conforme regra aplicada a todos.
Tem também 3 questões que devem ser respondidas.
Nota 2.0
Tem também 3 questões que devem ser respondidas.
Nota 2.0
- lucca senn dallagassa
- Mensagens : 331
Data de inscrição : 09/03/2020
Idade : 17
Escola : Lindaura Ribeiro Lucas
Re: exercicio 1.17
Seg Jul 27, 2020 8:45 am
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.17
* Tema: Interrupção
* Atividade: Incrementar um contador e enviar para porta serial usando interrupção
* Descrição: Fazer um pisca com o led vermelho e ligar uma tecla na interrupção. Quando interromper o processador incrementar uma variável e enviar pela porta serial
* 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, inicializar a serial
* 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: A interrupção serve para avisar o processador algum evento externo, pode ser usado para disparar uma rotina de tratamento
* Dica3: Para garantir a nota responda as questões abaixo:
* Questão1: Qual modo de interrupção que aciona o led quando a chave de interrupção muda de estado 0 para 1?RISING
* Questão2: Quantos pinos de interrupção podem ser usados no arduino nano3?os pinos D2 e D3
* Questão3: Quantos modos de interrupção podem ser configurados no arduino? 4 modos de interrupiçao
*/
//DEFINICOES INICIAIS
#define tecla A0//Definido que o pino A0 vai se chamar tecla
#define led1 3//Definido que o pino 3 vai se chamar led1
#define led2 5//Definido que o pino 5 vai se chamar led2
//DECLARAcAO DE VARIAVEIS
volatile bool estado = 0;//variavel para guardar o valor do estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza (){
estado = !estado;//estado e igual a ele reverso
digitalWrite(led2, estado);//Definido que o led2 vai seguir a ordem do estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla, INPUT_PULLUP);//Definido tecla como SAIDA
pinMode(led1, OUTPUT);//Definido led1 como SAIDA
pinMode(led2, OUTPUT);//Definido led2 como SAIDA
attachInterrupt(0,sinaliza, LOW);//quando eu apertar a tecla ele vai SINALIZAR
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(led1, HIGH);//Definido que o led1 vai acender
delay(200);//Temporiza por 200 ms
digitalWrite(led1, LOW);//Definido que o led1 vai apagar
delay(200);//Temporiza por 200 ms
}
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.17
* Tema: Interrupção
* Atividade: Incrementar um contador e enviar para porta serial usando interrupção
* Descrição: Fazer um pisca com o led vermelho e ligar uma tecla na interrupção. Quando interromper o processador incrementar uma variável e enviar pela porta serial
* 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, inicializar a serial
* 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: A interrupção serve para avisar o processador algum evento externo, pode ser usado para disparar uma rotina de tratamento
* Dica3: Para garantir a nota responda as questões abaixo:
* Questão1: Qual modo de interrupção que aciona o led quando a chave de interrupção muda de estado 0 para 1?RISING
* Questão2: Quantos pinos de interrupção podem ser usados no arduino nano3?os pinos D2 e D3
* Questão3: Quantos modos de interrupção podem ser configurados no arduino? 4 modos de interrupiçao
*/
//DEFINICOES INICIAIS
#define tecla A0//Definido que o pino A0 vai se chamar tecla
#define led1 3//Definido que o pino 3 vai se chamar led1
#define led2 5//Definido que o pino 5 vai se chamar led2
//DECLARAcAO DE VARIAVEIS
volatile bool estado = 0;//variavel para guardar o valor do estado
//FUNÇÕES INTERRUPÇÃO
void sinaliza (){
estado = !estado;//estado e igual a ele reverso
digitalWrite(led2, estado);//Definido que o led2 vai seguir a ordem do estado
}
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(tecla, INPUT_PULLUP);//Definido tecla como SAIDA
pinMode(led1, OUTPUT);//Definido led1 como SAIDA
pinMode(led2, OUTPUT);//Definido led2 como SAIDA
attachInterrupt(0,sinaliza, LOW);//quando eu apertar a tecla ele vai SINALIZAR
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(led1, HIGH);//Definido que o led1 vai acender
delay(200);//Temporiza por 200 ms
digitalWrite(led1, LOW);//Definido que o led1 vai apagar
delay(200);//Temporiza por 200 ms
}
Permissões neste sub-fórum
Não podes responder a tópicos
|
|