Robótica Livre
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Ir para baixo
avatar
Cadu2005
Mensagens : 26
Data de inscrição : 03/03/2020

Exercicio 1.4 Empty Exercicio 1.4

Sáb Abr 18, 2020 3:06 pm
/*
* Exercicio: 1.4
* Tema: Pinos Digitais
* Atividade: Sequencial de 6 LEDS
* Descrição: fazer os 3 leds mais o led RGB piscarem de forma sequencial controlado por uma variavel de tempo
* Hardware: Ligar os 6 leds em seis pinos digital configurados como SAÍDA
* Comandos: pinMode, digitalWrite, delay,
* Dicas: Usar uma variavel para armazenar o tempo de espera entre as trocas de estado
*/

//DEFINICOES INICIAIS
#define lampada1 2 //Define o pino 2 como lampada 1
#define lampada2 3 //Define o pino 3 como lampada 2
#define lampada3 4 //Define o pino 4 como lampada 3
#define lampada4 5 //Define o pino 5 como lampada 4
#define lampada5 6 //Define o pino 6 como lampada 5
#define lampada6 7 //Define o pino 7 como lampada 6

//DECLARAcAO DE VARIAVEIS


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(lampada1, OUTPUT); //Define o pino 2 como SAIDA
pinMode(lampada2, OUTPUT); //Define o pino 3 como SAIDA
pinMode(lampada3, OUTPUT); //Define o pino 4 como SAIDA
pinMode(lampada4, OUTPUT); //Define o pino 5 como SAIDA
pinMode(lampada5, OUTPUT); //Define o pino 6 como SAIDA
pinMode(lampada6, OUTPUT); //Define o pino 7 como SAIDA
}

//FUNÇÕES COMPLEMENTARES


//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(lampada1, HIGH); //Define o pino 2 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada1, LOW); //Defino o pino 2 com 0v assim desligando
digitalWrite(lampada2, HIGH); //Define o pino 3 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada2, LOW); //Defino o pino 2 com 0v assim desligando
digitalWrite(lampada3, HIGH); //Define o pino 4 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada3, LOW); //Defino o pino 2 com 0v assim desligando
digitalWrite(lampada4, HIGH); //Define o pino 5 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada4, LOW); //Defino o pino 2 com 0v assim desligando
digitalWrite(lampada5, HIGH); //Define o pino 6 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada5, LOW); //Defino o pino 2 com 0v assim desligando
digitalWrite(lampada6, HIGH); //Define o pino 7 com 5v assim ligando
delay(500); //Define um delay de 50 ms
digitalWrite(lampada6, LOW); //Defino o pino 2 com 0v assim desligando
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.4 Empty Re: Exercicio 1.4

Sáb Abr 18, 2020 7:32 pm
Cadu, o programa está com a lógica correta, porém no enunciado, a dica, pede para guardar o tempo numa variável para aplicar no delay() e voce usou o valor direto.
Então a nota será 9.0

Sabe que a nota não é definitiva, pode corrigir o exercício a qualquer momento que reavaliamos também as notas.
avatar
Cadu2005
Mensagens : 26
Data de inscrição : 03/03/2020

Exercicio 1.4 Empty Exercicio 1.4 RE

Qui Abr 23, 2020 12:06 pm
/*
* Exercicio: 1.4
* Tema: Pinos Digitais
* Atividade: Sequencial de 6 LEDS
* Descrição: fazer os 3 leds mais o led RGB piscarem de forma sequencial controlado por uma variavel de tempo
* Hardware: Ligar os 6 leds em seis pinos digital configurados como SAÍDA
* Comandos: pinMode, digitalWrite, delay,
* Dicas: Usar uma variavel para armazenar o tempo de espera entre as trocas de estado
*/

//DEFINICOES INICIAIS
#define lampada1 2 //Define o pino 2 como lampada 1
#define lampada2 3 //Define o pino 3 como lampada 2
#define lampada3 4 //Define o pino 4 como lampada 3
#define lampada4 5 //Define o pino 5 como lampada 4
#define lampada5 6 //Define o pino 6 como lampada 5
#define lampada6 7 //Define o pino 7 como lampada 6

//DECLARAcAO DE VARIAVEIS
int lampada7 = 8; // LED conectado ao pino digital 7

//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(lampada1, OUTPUT); //Define o pino 2 como SAIDA
pinMode(lampada2, OUTPUT); //Define o pino 3 como SAIDA
pinMode(lampada3, OUTPUT); //Define o pino 4 como SAIDA
pinMode(lampada4, OUTPUT); //Define o pino 5 como SAIDA
pinMode(lampada5, OUTPUT); //Define o pino 6 como SAIDA
pinMode(lampada6, OUTPUT); //Define o pino 7 como SAIDA
pinMode(lampada7, OUTPUT); //Define o pino 8 como SAIDA
}

//FUNÇÕES COMPLEMENTARES


//PROGRAMA PRINCIPAL
void loop() {
digitalWrite(lampada1, HIGH);
delay(500);
digitalWrite(lampada1, LOW);
digitalWrite(lampada2, HIGH);
delay(500);
digitalWrite(lampada2, LOW);
digitalWrite(lampada3, HIGH);
delay(500);
digitalWrite(lampada3, LOW);
digitalWrite(lampada4, HIGH);
delay(500);
digitalWrite(lampada4, LOW);
digitalWrite(lampada5, HIGH);
delay(500);
digitalWrite(lampada5, LOW);
digitalWrite(lampada7, HIGH);
delay(500);
digitalWrite(lampada7, LOW);
}
Professor usei a variavel , mas não compreendi como ""guardar tempo""
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.4 Empty Re: Exercicio 1.4

Qui Abr 23, 2020 10:49 pm
Precisa rever as primeiras aulas, tem uma que explico como funciona a variável, alocação de memória etc...
Uma dica é quando assistir prestar atenção porque se ficar pensando em outras coisas não vai entende as explicações,

Então lá no video falei que quando declara uma variável aloca um espaço na memória, dai quando inicializa a variável o compilador "guarda" nesse espaço de memória um número, que pode ser lido ou modificado pelo programa. Ensinei como inicializa, *carrega, altera e lê.

* guarda, escreve, grava, insere, ou outro termo que indique que está colocando um numerozinho na memória,
avatar
Cadu2005
Mensagens : 26
Data de inscrição : 03/03/2020

Exercicio 1.4 Empty Exercicio 1.4 RE

Dom Abr 26, 2020 9:52 pm
/*
* Exercicio: 1.4
* Tema: Pinos Digitais
* Atividade: Sequencial de 6 LEDS
* Descrição: fazer os 3 leds mais o led RGB piscarem de forma sequencial controlado por uma variavel de tempo
* Hardware: Ligar os 6 leds em seis pinos digital configurados como SAÍDA
* Comandos: pinMode, digitalWrite, delay,
* Dicas: Usar uma variavel para armazenar o tempo de espera entre as trocas de estado
*/

//DEFINICOES INICIAIS
#define lampada1 2 //Define o pino 2 como lampada 1
#define lampada2 3 //Define o pino 3 como lampada 2
#define lampada3 4 //Define o pino 4 como lampada 3
#define lampada4 5 //Define o pino 5 como lampada 4
#define lampada5 6 //Define o pino 6 como lampada 5
#define lampada6 7 //Define o pino 7 como lampada 6

//DECLARAcAO DE VARIAVEIS


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(lampada1, OUTPUT); //Define o pino 2 como SAIDA
pinMode(lampada2, OUTPUT); //Define o pino 3 como SAIDA
pinMode(lampada3, OUTPUT); //Define o pino 4 como SAIDA
pinMode(lampada4, OUTPUT); //Define o pino 5 como SAIDA
pinMode(lampada5, OUTPUT); //Define o pino 6 como SAIDA
pinMode(lampada6, OUTPUT); //Define o pino 7 como SAIDA
}

//FUNÇÕES COMPLEMENTARES


//PROGRAMA PRINCIPAL
void loop() {
int MS ; //Define a variavel MS
MS = 500 ; //MS equivale a meio segundo
digitalWrite(lampada1, HIGH);
delay(MS);
digitalWrite(lampada1, LOW);
digitalWrite(lampada2, HIGH);
delay(MS);
digitalWrite(lampada2, LOW);
digitalWrite(lampada3, HIGH);
delay(MS);
digitalWrite(lampada3, LOW);
digitalWrite(lampada4, HIGH);
delay(MS);
digitalWrite(lampada4, LOW);
digitalWrite(lampada5, HIGH);
delay(MS);
digitalWrite(lampada5, LOW);
digitalWrite(lampada6, HIGH);
delay(MS);
digitalWrite(lampada6, LOW);
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.4 Empty Re: Exercicio 1.4

Qui Abr 30, 2020 9:12 pm
Cadu, o exercício está correto e aplicou a variável corretamente, como tem oportunidades de melhorar preciso pontuá-las.
1 - Quando define a variável dentro do loop() essa fica como variável local e quando declara dentro do espaço para variáveis ela se torna global. Quando a variável é local ela só funciona para a função na qual ela foi declarada e não funciona para as demais funções. Nesse programa não faz diferença, mas precisa saber disso para não ter problemas em outros programas.
2 - Quando declara a variável, pode inicializar com um valor na própria declaração. Ex int MS = 500;
3 - Da forma que colocou toda vez que o programa inicia o loop aloca espaço e depois carrega com o valor, mas já estava carregado e com o mesmo valor. Logo gastou ciclos de máquina para essa ação que não tinha necessidade. Nesse programa não faz diferença, mas se estivesse controlando um motor, códigos redundantes atrapalham a performance do sistema.
4 - Não fez os comentários nas linhas. Deve saber interpretar os comandos, mas temos uma regra e aplico e cobro de todos,
5 - Existe uma convenção em C que letras minusculas são usadas para variáveis, maiúsculas constantes e nomes com mais de uma palavra são escritos sem espaço e com a primeira letra das palavras em maiusculo, menos a primeira

Nota 6.0
avatar
Cadu2005
Mensagens : 26
Data de inscrição : 03/03/2020

Exercicio 1.4 Empty Exercicio 1.4 RE.

Seg Jun 08, 2020 1:08 pm
/*
* Exercicio: 1.4
* Tema: Pinos Digitais
* Atividade: Sequencial de 6 LEDS
* Descrição: fazer os 3 leds mais o led RGB piscarem de forma sequencial controlado por uma variavel de tempo
* Hardware: Ligar os 6 leds em seis pinos digital configurados como SAÍDA
* Comandos: pinMode, digitalWrite, delay,
* Dicas: Usar uma variavel para armazenar o tempo de espera entre as trocas de estado
*/

//DEFINICOES INICIAIS
#define lampada1 2 //Define o pino 2 como lampada 1
#define lampada2 3 //Define o pino 3 como lampada 2
#define lampada3 4 //Define o pino 4 como lampada 3
#define lampada4 5 //Define o pino 5 como lampada 4
#define lampada5 6 //Define o pino 6 como lampada 5
#define lampada6 7 //Define o pino 7 como lampada 6

//DECLARAcAO DE VARIAVEIS


//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(lampada1, OUTPUT); //Define o pino 2 como SAIDA
pinMode(lampada2, OUTPUT); //Define o pino 3 como SAIDA
pinMode(lampada3, OUTPUT); //Define o pino 4 como SAIDA
pinMode(lampada4, OUTPUT); //Define o pino 5 como SAIDA
pinMode(lampada5, OUTPUT); //Define o pino 6 como SAIDA
pinMode(lampada6, OUTPUT); //Define o pino 7 como SAIDA
}

//FUNÇÕES COMPLEMENTARES


//PROGRAMA PRINCIPAL
void loop() {
int MS ; //Define a variavel MS
MS = 500 ; //MS equivale a meio segundo
digitalWrite(lampada1, HIGH); //Define o pino 2 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada1, LOW); //Define o pino 2 com 0 v assim desligando
digitalWrite(lampada2, HIGH); //Define o pino 3 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada2, LOW); //Define o pino 3 com 0 v assim deligando
digitalWrite(lampada3, HIGH); //Define o pino 4 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada3, LOW); //Define o pino 4 com 0 v assim desligando
digitalWrite(lampada4, HIGH); //Define o pino 5 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada4, LOW); //Define o pino 5 com 0 v assim desligando
digitalWrite(lampada5, HIGH); //Define o pino 6 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada5, LOW); //Define o pino 6 com 0 v assim desligando
digitalWrite(lampada6, HIGH); //Define o pino 7 com 5 v assim ligando
delay(MS); //Ultiliza a variavel ms para definir tempo de meio segundo
digitalWrite(lampada6, LOW);//Define o pino 7 com 0 v assim desligando
}
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5115
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercicio 1.4 Empty Re: Exercicio 1.4

Ter Jun 09, 2020 7:50 pm
Oi Cadu,
Das orientações que passei resolveu somente os comentários, mas o programa funciona do jeito que implantou, então vou dar nota 10.0
Conteúdo patrocinado

Exercicio 1.4 Empty Re: Exercicio 1.4

Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos