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
Daniel Lukas
Mensagens : 62
Data de inscrição : 06/03/2020
Idade : 17
Escola : Rua Aníbal Silva
https://sayajin-gamers-store.myshopify.com/

Exercício 1.13 Empty Exercício 1.13

Qui maio 21, 2020 2:04 pm
/*
* CURSO DE ROBOTICA 2020
*
* Exercicio: 1.13
* Tema: Pinos Analógicos
* Atividade: Fazer o led alternar o brilho conforme variações de temperatura.
* Descrição: Usar um pino analógico para controlar o brilho do led e uma entrada analógica para captar a temperatura pelo NTC
* Hardware: Ligar um led em um pino digital configurado como SAÍDA ANALÓGICA e o NTC em uma entrada analógica
* Comandos: pinMode(), analogRead(), analogWrite(),map()
* Dica1:A saída analógica aceita valores entre 0 e 255, e o conversor analógico possui 10 bits ou seja até 1024
* Dica2:O LDR não gera valores proximos a zero nem a próximos de 1023 então usar a função map() para ajustar a escala
* Dica3:Escrever o valor lido do NTC no led, tente também fazer o brilho inversamente proporcional a temperatura
*/

//DEFINICOES INICIAIS
#define ntc A0      //pino analogico A0 será chamdo ntc
#define lampada 3  //pino digital 3 será chamado lampada
//DECLARAcAO DE VARIAVEIS GLOBAIS
int temperatura; // variavel para guardar a temperatura

//INICIALIZAÇÃO DO HARDWARE
void setup() {
Serial.begin(9600);        //porta serial que abriu
pinMode(lampada, OUTPUT); //lampada será uma saida

}

//FUNÇÕES COMPLEMENTARES
void debug(){
Serial.print("temperatura = ");  //enviar a temperatura para o terminal
Serial.println(temperatura);    //envia a temperatura para o terminal e pula uma linha.

//PROGRAMA PRINCIPAL

void loop() {
temperatura = map(analogRead(ntc), 279, 930, 255, 0); //configurando a variavel
debug();                                             //debug executado
analogWrite(led, temperatura);                      //led cofigurado para acender na variavel temperatura
}


Última edição por Daniel Lukas em Sex Jun 05, 2020 3:05 pm, editado 3 vez(es)
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5021
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercício 1.13 Empty Re: Exercício 1.13

Qui maio 28, 2020 9:13 pm
Daniel, Vou fazer uma correção nos comentários da função debug(), considerando que ainda não estudamos os comandos usados nela.

void debug(){
Serial.print("temperatura = "); //configurado uma variavel como temperatura //Aqui não tem nenhuma variável, quando coloca uma palavra entre aspas, é tratado como texto, e o comando Serial.print serve para enviar o que está entre parenteses para o terminal. Que no caso é uma palavra.
Serial.println(temperatura); //código exetucado na proxima linha // O comando serial.println, envia o que está entre parenteses para o terminal e pula uma linha. No caso o que será enviado será o conteúdo da variável chamada de temperatura.
}

Com relação ao programa, o principal comando ficou com um comentário que não convenceu, então vou enviar uma pergunta para que garanta uma nota maior que 6.0.

Qual a finalidade da função map() em um programa?

avatar
Daniel Lukas
Mensagens : 62
Data de inscrição : 06/03/2020
Idade : 17
Escola : Rua Aníbal Silva
https://sayajin-gamers-store.myshopify.com/

Exercício 1.13 Empty resposta da pergunta

Sex Jun 05, 2020 3:08 pm
[quote="
Qual a finalidade da função map() em um programa?

[/quote]

resposta:
converter uma faixa de valores para outra faixa.
Paulo Augusto Batista
Paulo Augusto Batista
Admin
Mensagens : 5021
Data de inscrição : 11/02/2019
Idade : 52
Escola : Colegio Lindaura
https://roboticalivre.forumeiros.com

Exercício 1.13 Empty Re: Exercício 1.13

Ter Jun 09, 2020 7:26 pm
Ok Daniel, vou considerar. Nota 10.0
Conteúdo patrocinado

Exercício 1.13 Empty Re: Exercício 1.13

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