Mapeie para uma porcentagem
Parte da seção Entradas do Journey de Arduino da Coddy. Lição 10 de 22.
Leituras de 0 a 1023 não dizem muito para uma pessoa. Uma porcentagem de 0 a 100 é mais fácil de entender. map() converte um número de um intervalo para outro:
int percent = map(reading, 0, 1023, 0, 100);Ela recebe cinco números: o valor, os limites inferior e superior do intervalo e os limites inferior e superior do novo intervalo. 0 se torna 0, 1023 se torna 100, e um valor que está a um quarto do intervalo fica a um quarto do novo intervalo: 256 se torna 25.
map() funciona com números inteiros e descarta qualquer fração, o que é adequado para uma porcentagem.
Desafio
FácilO potenciômetro está em A0. Imprima o quanto ele está girado, em porcentagem:
- leia A0
- converta a leitura para um valor de 0 a 100 com
map() - imprima a porcentagem e depois aguarde 100 ms
Pressione Run, gire o potenciômetro e depois Check.
Experimente você mesmo
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// converta a leitura em uma porcentagem com map(), imprima-a e aguarde 100 ms
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Entradas
2Entradas analógicas
Leia um potenciômetroLeitura do potenciômetro em voltsMapeie para uma porcentagemMantenha os valores dentro da faixaLimite do potenciômetroLuz noturna automáticaPino de acionamento do sensor de luzPratique por conta própria: Playground de Arduino