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
Convidado
Convidado

Exercicio 1.9-pisca-gradual-resolvido Empty Exercicio 1.9-pisca-gradual-resolvido

Sáb Mar 16, 2019 11:48 am
/*
* CURSO DE ROBOTICA 2019
*
* Exercicio: 1.11
* Tema: Pinos Analógicos
* Atividade: Fazer o led alternar o brilho conforme a quantidade de luz no LDR
* Descrição: Usar um pino analógico para controlar o brilho do led e uma entrada analógica para medir a intensidade da luz
* Hardware: Ligar um led em um pino digital configurado como SAÍDA ANALÓGICA e o LDR em uma entrada analógica
* Comandos: pinMode, analogRead, analogWrite,
* 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: converter a escala do LDR usando a função map
* Dica3: Escrever o valor lido do ldr no led, tente també fazer o brilho inversamente proporcional a luz do ldr
* Dica4: Na função map tente ajustar os valores de entrada para a escala chegar a apagar o led, lembrando que nesse circuito não é possível atingir o zero nem o valor máximo.
*/

//DEFINICOES INICIAIS
#define led1 3 //Definido o pino 3 para ligar o led
#define ldr A0 //definido que o pino A0 agora se chama LDR
#define buzzer 4


//DECLARAcAO DE VARIAVEIS GLOBAIS
int tempo; //definida como variavel de 16 bits valor suportado até 64000
byte brilho; //definida como variavel de 8 bits valor de 0-255

//INICIALIZAÇÃO DO HARDWARE
void setup() {
pinMode(led1, OUTPUT); //programa o pino 3 como saída
Serial.begin(9600);
pinMode(buzzer, OUTPUT);
}

//FUNÇÕES COMPLEMENTARES
void debug() {
Serial.print("ldr= ");
Serial.print(analogRead(ldr));
Serial.print("\n");
}

//PROGRAMA PRINCIPAL
void loop() {
debug();
delay(200);
tone(buzzer, analogRead(ldr),200);
}
Ir para o topo
Permissões neste sub-fórum
Não podes responder a tópicos