Menu
CoddyTech

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.

challenge icon

Desafio

Fácil

O 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
}
quiz iconTeste seus conhecimentos

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

Pratique por conta própria: Playground de Arduino