Pengukur Cahaya
Termasuk bagian Input dalam perjalanan Arduino di Coddy. Pelajaran 22 dari 22.
Pelajaran ini menyatukan bagian ini: pengukur cahaya yang mencetak tingkat cahaya dalam persen dan menampilkannya pada batang dengan tiga LED, seperti batang sinyal pada ponsel.
Bagi tugasnya menjadi beberapa fungsi, masing-masing dengan satu tugas, agar loop() terbaca seperti deskripsi:
void loop() {
int percent = lightPercent();
showLevel(percent);
// cetak persentasenya
}lightPercent() membaca AO dari module cahaya dan mengembalikan nilai dari 0 (gelap) hingga 100 (terang). Nilai AO turun saat cahaya meningkat, jadi petakan secara terbalik: map(reading, 0, 1023, 100, 0) mengubah 1023 menjadi 0 dan 0 menjadi 100.
showLevel(int percent) memberi setiap LED pada batang ambangnya sendiri: LED pertama menyala di atas 25, LED kedua di atas 50, dan LED ketiga di atas 75. Masing-masing memerlukan else, agar batang dapat memendek lagi saat cahaya meredup.
Tantangan
SedangAO pada modul cahaya terhubung ke A0, dan LED pada bar terhubung ke pin 10, 11, dan 12:
int lightPercent(): 0 dalam gelap, 100 dalam cahaya terangvoid showLevel(int percent): pin 10 menyala di atas 25, pin 11 di atas 50, pin 12 di atas 75- di
loop(), panggil keduanya, cetak persentasenya, lalu tunggu 200 ms
Tekan Jalankan, geser slider cahaya, lalu tekan Periksa.
Coba sendiri
const int lowPin = 10;
const int midPin = 11;
const int highPin = 12;
// tulis int lightPercent() di sini
// tulis void showLevel(int percent) di sini
void setup() {
pinMode(lowPin, OUTPUT);
pinMode(midPin, OUTPUT);
pinMode(highPin, OUTPUT);
Serial.begin(9600);
}
void loop() {
// baca tingkat cahaya sebagai persentase, tampilkan pada bar, cetak nilainya, lalu tunggu 200 ms
}
Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Input
Latihan sendiri: Playground Arduino