Memetakan Nilai dengan map() ke Rentang Baru
Mengubah skala pembacaan mentah menjadi satuan yang berguna
Memetakan Nilai dengan map() ke Rentang Baru adalah pelajaran Arduino & IoT Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Arduino & IoT Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Arduino & IoT Academy mencakup 4 pelajaran total.
Nilai Mentah Kurang Praktis
Pembacaan 0 hingga 1023 jarang sesuai dengan kebutuhan Anda. Sering kali Anda menginginkan persentase atau sudut, bukan hitungan sensor mentah.
Mengenal Fungsi pemetaan
Fungsi pemetaan mengubah skala angka dari satu rentang ke rentang lainnya. Fungsi ini melakukan perhitungan proporsional sehingga Anda tidak perlu melakukannya sendiri.
Lima Argumennya
Anda memberikan lima hal kepada pemetaan: nilai, batas rendah dan tinggi rentang saat ini, serta batas rendah dan tinggi rentang tujuan.
map(value, fromLow, fromHigh, toLow, toHigh);Skalakan Menjadi Persentase
Untuk mengubah kenop menjadi 0 hingga 100 persen, petakan rentang analog ke rentang persen. Hasilnya akan terbaca seperti pengatur volume.
int pct = map(analogRead(A0), 0, 1023, 0, 100);Skalakan Menjadi Sudut Servo
Servo mengharapkan 0 hingga 180. Petakan kenop ke rentang tersebut dan hasil pembacaan menjadi sudut yang dapat digunakan motor.
int angle = map(analogRead(A0), 0, 1023, 0, 180);Mengembalikan Bilangan Bulat
Fungsi pemetaan bekerja dengan bilangan bulat, sehingga mengembalikan bilangan utuh dan menghilangkan pecahannya. Itu sudah cukup untuk sebagian besar pengendali.
Anda Dapat Membalik Rentang
Atur batas rendah tujuan lebih tinggi daripada batas tingginya untuk membalik keluaran. Kini memutar kenop ke kanan membuat hasilnya menurun.
int v = map(analogRead(A0), 0, 1023, 100, 0);Tidak Membatasi Nilai
Fungsi pemetaan akan melewati batas jika masukan juga melewatinya. Gunakan constrain setelahnya agar hasil tetap berada di dalam batas dengan aman.
int v = constrain(map(x,0,1023,0,100),0,100);Rentang Negatif Juga Berfungsi
Rentang tujuan dapat bernilai negatif, misalnya -50 hingga 50 untuk pengendali yang berpusat. Perhitungan pemetaan dapat menangani arah tersebut tanpa usaha tambahan.
Pemetaan untuk Kecerahan
Padukan pemetaan dengan PWM nanti untuk mengatur kecerahan. Kenop dapat dipetakan dengan rapi ke rentang 0 hingga 255 yang diharapkan oleh peredup LED.
int b = map(analogRead(A0), 0, 1023, 0, 255);Alat yang Akan Anda Gunakan Kembali
Anda akan sering menggunakan pemetaan: untuk persentase, sudut, rentang, dan banyak hal lainnya. Fitur ini mengubah data sensor mentah menjadi angka yang bermakna.
Pemeriksaan Singkat
Apa tugas fungsi pemetaan?
Rangkuman: Mengubah Skala dengan Pemetaan
Anda telah mempelajari bahwa pemetaan mengubah skala suatu nilai di antara dua rentang menggunakan lima argumen. Padukan dengan constrain untuk membatasi hasil dalam batas yang aman.
Belajar C++ dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memetakan Nilai dengan map() ke Rentang Baru” gratis?
Ya — teks lengkap “Memetakan Nilai dengan map() ke Rentang Baru” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Arduino & IoT Academy, upgrade ke CoddyKit PRO. Kursus Arduino & IoT Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memetakan Nilai dengan map() ke Rentang Baru”?
Mengubah skala pembacaan mentah menjadi satuan yang berguna Kamu berlatih Arduino & IoT Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Arduino & IoT Academy?
Tidak diperlukan pengalaman sebelumnya. Arduino & IoT Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Memetakan Nilai dengan map() ke Rentang Baru” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Arduino & IoT Academy ini?
Ya. Setiap pelajaran Arduino & IoT Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Sinyal Digital vs Analog
- analogRead Mengembalikan 0–1023
- Membaca Kenop Potensiometer
- Memetakan Nilai dengan map() ke Rentang Baru