Menu
CoddyTech

Przeliczanie na procenty

Część sekcji Wejścia ścieżki Arduino w Coddy. Lekcja 10 z 22.

Odczyty od 0 do 1023 niewiele mówią człowiekowi. Procent od 0 do 100 jest łatwiejszy do zrozumienia. map() przekształca liczbę z jednego zakresu na inny:

int percent = map(reading, 0, 1023, 0, 100);

Przyjmuje pięć liczb: wartość, dolną i górną granicę jej zakresu oraz dolną i górną granicę nowego zakresu. 0 staje się 0, 1023 staje się 100, a wartość znajdująca się w jednej czwartej zakresu trafia w jedną czwartą nowego zakresu: 256 staje się 25.

map() działa na liczbach całkowitych i pomija część ułamkową, co w przypadku procentów jest w porządku.

challenge icon

Wyzwanie

Łatwy

Pokrętło jest podłączone do A0. Wyświetl, jak bardzo jest obrócone, w procentach:

  • odczytaj A0
  • przekształć odczyt na zakres od 0 do 100 za pomocą map()
  • wyświetl wartość procentową, a następnie odczekaj 100 ms

Naciśnij Run, obróć pokrętło, a następnie naciśnij Check.

Spróbuj swoich sił

void setup() {
  Serial.begin(9600);
}

void loop() {
  int reading = analogRead(A0);
  // przelicz odczyt na wartość procentową za pomocą map(), wypisz ją, odczekaj 100 ms
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Wejścia

Poćwicz samodzielnie: Edytor online Arduino