Daftar Isi:

Memudar LED masuk dan keluar: 3 Langkah
Memudar LED masuk dan keluar: 3 Langkah

Video: Memudar LED masuk dan keluar: 3 Langkah

Video: Memudar LED masuk dan keluar: 3 Langkah
Video: Cara mengatasi layar klise cepat dan mudah tanpa bongkar kesing 2024, November
Anonim
Memudar LED masuk dan keluar
Memudar LED masuk dan keluar

Langkah-langkah berikut adalah eksperimen untuk menggambarkan cara kerja LED. Mereka mengilustrasikan cara meredupkan LED pada tingkat yang rata dan cara memudarkannya masuk dan keluar.

Anda akan perlu:

  • Arduino (saya menggunakan duo)
  • Papan tempat memotong roti
  • LED merah 5mm
  • 330 Resistor (Tidak kritis 330-560 akan bekerja.)
  • 22 Pengukur Kawat Kait Padat

Bagian-bagian yang diperlukan untuk percobaan ini termasuk dalam semua kit startup Arduino.

Langkah 1: Modulasi Pulsa Dijelaskan

Modulasi Pulsa Dijelaskan
Modulasi Pulsa Dijelaskan
Modulasi Pulsa Dijelaskan
Modulasi Pulsa Dijelaskan
Modulasi Pulsa Dijelaskan
Modulasi Pulsa Dijelaskan

LED selalu berjalan pada tegangan yang sama terlepas dari kecerahannya. Kecerahan ditentukan oleh osilator gelombang persegi dan jumlah waktu tegangan tinggi menentukan kecerahan. Ini disebut Pulse Width Modulation (PWM). Ini dikendalikan oleh fungsi analogWrite(pin, n) Arduino di mana n memiliki nilai dari 0 hingga 255. AnalogWrite() mengeluarkan PWM, bukan analog yang sebenarnya. Jika n=2 LED akan dua kali lebih terang dari n=1. Kecerahan selalu berlipat ganda ketika n berlipat ganda. Jadi n=255 akan dua kali lebih terang dari n=128.

Nilai n sering dinyatakan sebagai persentase yang disebut duty cycle. Gambar-gambar menunjukkan jejak osiloskop untuk siklus kerja 25, 50 dan 75%.

Langkah 2: Peredupan Tidak Merata

Peredupan tidak merata
Peredupan tidak merata
Peredupan tidak merata
Peredupan tidak merata

Bangun sirkuit seperti pada diagram. Ini seperti rangkaian untuk mengedipkan LED. Ini menggunakan pin 9 karena Anda harus menggunakan pin yang diaktifkan PWM.

Copy/Paste sketsa di bawah ini ke Arduino IDE dan jalankan.

Anda akan melihat bahwa semakin terang LED semakin lambat redupnya. Saat mendekati paling redup, itu akan menjadi lebih redup dengan sangat cepat.

batalkan pengaturan()

{ pinMode(9, OUTPUT); } void loop() { int pin = 9; for (int i = 255; i > -1; i--) { analogWrite(pin, i); penundaan (10); } for (int i = 0; i < 256; i++) { analogWrite(pin, i); penundaan (10); } }

}

Langkah selanjutnya menunjukkan cara meredupkan LED dengan laju konstan, dan dalam satu pernyataan for.

Langkah 3: Atas dan Bawah dalam Satu Untuk()

Agar LED meredup dengan laju konstan, delay() harus meningkat pada laju eksponensial karena setengah siklus kerja akan selalu menghasilkan setengah kecerahan. Pikiran pertama saya adalah mencoba menggunakan fungsi map() tetapi linear.

Garis:

int d = (16-i/16)^2;

menghitung kuadrat terbalik dari kecerahan untuk menentukan panjang penundaan.

Salin / Tempel sketsa di bawah ini ke Arduino IDE dan Anda akan melihat bahwa LED akan memudar masuk dan keluar dengan kecepatan konstan.

batalkan pengaturan()

{ pinMode(9, OUTPUT); } void loop() { int x = 1; int pin = 9; for (int i = 0; i > -1; i = i + x) { int d = (16-i/16)^2; analogWrite(pin, i); penundaan (d); jika (i == 255) x = -1; // beralih arah di puncak } }

Direkomendasikan: