Memetakan ke Persentase
Termasuk bagian Input dalam perjalanan Arduino di Coddy. Pelajaran 10 dari 22.
Nilai pembacaan dari 0 hingga 1023 sulit dipahami. Persentase dari 0 hingga 100 lebih mudah dipahami. map() mengubah angka dari satu rentang ke rentang lain:
int percent = map(reading, 0, 1023, 0, 100);Fungsi ini menerima lima angka: nilai, batas bawah dan atas rentangnya, serta batas bawah dan atas rentang baru. 0 menjadi 0, 1023 menjadi 100, dan nilai yang berada seperempat jarak dari awal akan berada seperempat jarak dari awal rentang baru: 256 menjadi 25.
map() bekerja dengan bilangan bulat dan membuang bagian pecahannya, hal ini cocok untuk persentase.
Tantangan
MudahKenop terhubung ke A0. Cetak seberapa jauh kenop diputar, dalam persen:
- baca A0
- ubah hasil pembacaan menjadi rentang 0 sampai 100 dengan
map() - cetak persentasenya, lalu tunggu 100 ms
Tekan Jalankan, putar kenop, lalu tekan Periksa.
Coba sendiri
void setup() {
Serial.begin(9600);
}
void loop() {
int reading = analogRead(A0);
// ubah reading menjadi persentase dengan map(), cetak hasilnya, lalu tunggu 100 ms
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Input
2Input Analog
Membaca KenopMengubah Pembacaan Kenop menjadi VoltMemetakan ke PersentaseMenjaga Nilai dalam RentangAmbang KenopLampu Malam OtomatisPin Sakelar Sensor CahayaLatihan sendiri: Playground Arduino