exercicio 1.15
2 participantes
- LucyAnna800
- Mensagens : 98
Data de inscrição : 11/06/2022
Idade : 13
Escola : Colegio Lindaura Ribeiro Lucas
exercicio 1.15
Qui Out 27, 2022 11:09 am
/*
* CURSO DE ROBOTICA 2019
* Exercicio: 1.15
* Tema: Pinos Analógicos
* Atividade: Controlar a velocidade do sequencial conforme a posição do trimpot
* Descrição: Usar uma entrada analógica para medir a iposição do trimpot e usar esse valor para ajustar a velocidade
* Requisito1: A cada troca de estado deve ser atualizado o tempo confoeme posição do trimpot
* Requisito2: A variação de tempo deve ser inversamente proporcional ao valor do trimpot, ou seja, quanto maior o valor do trimpot menos rápido o sequencial
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o TRIMPOT em uma entrada analógica
* Comandos: pinMode(), analogRead(), digitalWrite(),delay(), map()
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2: Usar a função debug() para checar as variações de valor do trimpot no pino analógico
* Dica3:Pode usar a função map() para converter a variação dos valores lidos no trimpot para as variações de tempo desejadas
* Dica4: Pode usar uma função para fazer a leitura do trimpot e temporização do sequencial
*/
//DEFINICOES INICIAIS
#define naosei 3
#define ta 4
#define hmmm 5
#define eu 6
#define vc 7
#define nao 8
#define trimpot A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int temporizador;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(naosei, OUTPUT);
pinMode(ta, OUTPUT);
pinMode(hmmm, OUTPUT);
pinMode(eu, OUTPUT);
pinMode(vc, OUTPUT);
pinMode(nao, OUTPUT);
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = ");
Serial.print(analogRead(trimpot));
Serial.print("temporizador = ");
Serial.println(temporizador);
}
void timer(){
temporizador = map(analogRead(trimpot),2,930,400,50);
delay(temporizador);
debug();
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(naosei, HIGH);
timer();
digitalWrite(naosei, LOW);
digitalWrite(ta, HIGH);
timer();
digitalWrite(ta, LOW);
digitalWrite(hmmm, HIGH);
timer();
digitalWrite(hmmm, LOW);
digitalWrite(eu, HIGH);
timer();
digitalWrite(eu, LOW);
digitalWrite(vc, HIGH);
timer();
digitalWrite(vc, LOW);
digitalWrite(nao, HIGH);
timer();
digitalWrite(nao, LOW);
}
* CURSO DE ROBOTICA 2019
* Exercicio: 1.15
* Tema: Pinos Analógicos
* Atividade: Controlar a velocidade do sequencial conforme a posição do trimpot
* Descrição: Usar uma entrada analógica para medir a iposição do trimpot e usar esse valor para ajustar a velocidade
* Requisito1: A cada troca de estado deve ser atualizado o tempo confoeme posição do trimpot
* Requisito2: A variação de tempo deve ser inversamente proporcional ao valor do trimpot, ou seja, quanto maior o valor do trimpot menos rápido o sequencial
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o TRIMPOT em uma entrada analógica
* Comandos: pinMode(), analogRead(), digitalWrite(),delay(), map()
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2: Usar a função debug() para checar as variações de valor do trimpot no pino analógico
* Dica3:Pode usar a função map() para converter a variação dos valores lidos no trimpot para as variações de tempo desejadas
* Dica4: Pode usar uma função para fazer a leitura do trimpot e temporização do sequencial
*/
//DEFINICOES INICIAIS
#define naosei 3
#define ta 4
#define hmmm 5
#define eu 6
#define vc 7
#define nao 8
#define trimpot A0
//DECLARAcAO DE VARIAVEIS GLOBAIS
int temporizador;
//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(naosei, OUTPUT);
pinMode(ta, OUTPUT);
pinMode(hmmm, OUTPUT);
pinMode(eu, OUTPUT);
pinMode(vc, OUTPUT);
pinMode(nao, OUTPUT);
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = ");
Serial.print(analogRead(trimpot));
Serial.print("temporizador = ");
Serial.println(temporizador);
}
void timer(){
temporizador = map(analogRead(trimpot),2,930,400,50);
delay(temporizador);
debug();
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(naosei, HIGH);
timer();
digitalWrite(naosei, LOW);
digitalWrite(ta, HIGH);
timer();
digitalWrite(ta, LOW);
digitalWrite(hmmm, HIGH);
timer();
digitalWrite(hmmm, LOW);
digitalWrite(eu, HIGH);
timer();
digitalWrite(eu, LOW);
digitalWrite(vc, HIGH);
timer();
digitalWrite(vc, LOW);
digitalWrite(nao, HIGH);
timer();
digitalWrite(nao, LOW);
}
Re: exercicio 1.15
Sex Nov 04, 2022 12:11 am
Oi Lucy, faltou os comentários, também tem um detalhe, precisa inicializar a porta serial. Lembra daquele comando Serial.begin que vai no setup()?
Nota 6.0 até arrumar o programa.
Nota 6.0 até arrumar o programa.
- LucyAnna800
- Mensagens : 98
Data de inscrição : 11/06/2022
Idade : 13
Escola : Colegio Lindaura Ribeiro Lucas
exercico 1.15
Sáb Nov 05, 2022 9:42 am
/*
* CURSO DE ROBOTICA 2019
* Exercicio: 1.15
* Tema: Pinos Analógicos
* Atividade: Controlar a velocidade do sequencial conforme a posição do trimpot
* Descrição: Usar uma entrada analógica para medir a iposição do trimpot e usar esse valor para ajustar a velocidade
* Requisito1: A cada troca de estado deve ser atualizado o tempo confoeme posição do trimpot
* Requisito2: A variação de tempo deve ser inversamente proporcional ao valor do trimpot, ou seja, quanto maior o valor do trimpot menos rápido o sequencial
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o TRIMPOT em uma entrada analógica
* Comandos: pinMode(), analogRead(), digitalWrite(),delay(), map()
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2: Usar a função debug() para checar as variações de valor do trimpot no pino analógico
* Dica3:Pode usar a função map() para converter a variação dos valores lidos no trimpot para as variações de tempo desejadas
* Dica4: Pode usar uma função para fazer a leitura do trimpot e temporização do sequencial
*/
//DEFINICOES INICIAIS
#define naosei 3 //batizado o pino 3 de naosei
#define ta 4 //batizado o pino 4 de ta
#define hmmm 5 //batizado o pino 5 de hmmm
#define eu 6 //batizado o pino 6 de eu
#define vc 7 //batizado o pino 7 de vc
#define nao 8 //batizado o pino 8 de nao
#define trimpot A0 //batizado o pino A0 de trimpot
//DECLARAcAO DE VARIAVEIS GLOBAIS
int temporizador; //batizado a variavel int de temporizador
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //iniciando a porta serial
pinMode(naosei, OUTPUT); //naosei configurado como saida
pinMode(ta, OUTPUT); //ta configurado como saida
pinMode(hmmm, OUTPUT); //hmmm configurado como saida
pinMode(eu, OUTPUT); //eu configurado como saida
pinMode(vc, OUTPUT); //vc configurado como saida
pinMode(nao, OUTPUT); //nao configurado como saida
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = "); //imprimindo a porta serial na frase Luminosidade =
Serial.print(analogRead(trimpot)); //imprimindo a porta serial no trimpot?
Serial.print("temporizador = "); //imprimindo a porta serial na frase temporizador =
Serial.println(temporizador); //imprimindo a porta serial na variavel temporizador
}
void timer(){
temporizador = map(analogRead(trimpot),2,930,400,50); //progamando o tempo
delay(temporizador); // o tempo e a variavel temporizador
debug(); //tudo o que esta dentro do debug esta escrito aqui
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(naosei, HIGH); //acende o naosei
timer(); //tempo
digitalWrite(naosei, LOW); //apagar o naosei
digitalWrite(ta, HIGH); //acender o ta
timer(); //tempo
digitalWrite(ta, LOW); //apagar o ta
digitalWrite(hmmm, HIGH); //acender o hmmm
timer(); //tempo
digitalWrite(hmmm, LOW); //apagar o hmmm
digitalWrite(eu, HIGH); //acender o eu
timer(); //tempo
digitalWrite(eu, LOW); //apagar o eu
digitalWrite(vc, HIGH); //acender o vc
timer(); //tempo
digitalWrite(vc, LOW); //apagar o vc
digitalWrite(nao, HIGH); //acender o nao
timer(); //tempo
digitalWrite(nao, LOW); //apagar o nao
}
* CURSO DE ROBOTICA 2019
* Exercicio: 1.15
* Tema: Pinos Analógicos
* Atividade: Controlar a velocidade do sequencial conforme a posição do trimpot
* Descrição: Usar uma entrada analógica para medir a iposição do trimpot e usar esse valor para ajustar a velocidade
* Requisito1: A cada troca de estado deve ser atualizado o tempo confoeme posição do trimpot
* Requisito2: A variação de tempo deve ser inversamente proporcional ao valor do trimpot, ou seja, quanto maior o valor do trimpot menos rápido o sequencial
* Hardware: Ligar os leds nos pino digitais configurado como SAÍDA DIGITAL e o TRIMPOT em uma entrada analógica
* Comandos: pinMode(), analogRead(), digitalWrite(),delay(), map()
* Dica1:A o conversor analógico possui 10 bits ou seja de 0 até 1024
* Dica2: Usar a função debug() para checar as variações de valor do trimpot no pino analógico
* Dica3:Pode usar a função map() para converter a variação dos valores lidos no trimpot para as variações de tempo desejadas
* Dica4: Pode usar uma função para fazer a leitura do trimpot e temporização do sequencial
*/
//DEFINICOES INICIAIS
#define naosei 3 //batizado o pino 3 de naosei
#define ta 4 //batizado o pino 4 de ta
#define hmmm 5 //batizado o pino 5 de hmmm
#define eu 6 //batizado o pino 6 de eu
#define vc 7 //batizado o pino 7 de vc
#define nao 8 //batizado o pino 8 de nao
#define trimpot A0 //batizado o pino A0 de trimpot
//DECLARAcAO DE VARIAVEIS GLOBAIS
int temporizador; //batizado a variavel int de temporizador
//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600); //iniciando a porta serial
pinMode(naosei, OUTPUT); //naosei configurado como saida
pinMode(ta, OUTPUT); //ta configurado como saida
pinMode(hmmm, OUTPUT); //hmmm configurado como saida
pinMode(eu, OUTPUT); //eu configurado como saida
pinMode(vc, OUTPUT); //vc configurado como saida
pinMode(nao, OUTPUT); //nao configurado como saida
}
//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("Luminosidade = "); //imprimindo a porta serial na frase Luminosidade =
Serial.print(analogRead(trimpot)); //imprimindo a porta serial no trimpot?
Serial.print("temporizador = "); //imprimindo a porta serial na frase temporizador =
Serial.println(temporizador); //imprimindo a porta serial na variavel temporizador
}
void timer(){
temporizador = map(analogRead(trimpot),2,930,400,50); //progamando o tempo
delay(temporizador); // o tempo e a variavel temporizador
debug(); //tudo o que esta dentro do debug esta escrito aqui
}
//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(naosei, HIGH); //acende o naosei
timer(); //tempo
digitalWrite(naosei, LOW); //apagar o naosei
digitalWrite(ta, HIGH); //acender o ta
timer(); //tempo
digitalWrite(ta, LOW); //apagar o ta
digitalWrite(hmmm, HIGH); //acender o hmmm
timer(); //tempo
digitalWrite(hmmm, LOW); //apagar o hmmm
digitalWrite(eu, HIGH); //acender o eu
timer(); //tempo
digitalWrite(eu, LOW); //apagar o eu
digitalWrite(vc, HIGH); //acender o vc
timer(); //tempo
digitalWrite(vc, LOW); //apagar o vc
digitalWrite(nao, HIGH); //acender o nao
timer(); //tempo
digitalWrite(nao, LOW); //apagar o nao
}
Permissões neste sub-fórum
Não podes responder a tópicos
|
|