Daftar Isi:

LED yang Dapat Diprogram: 6 Langkah (dengan Gambar)
LED yang Dapat Diprogram: 6 Langkah (dengan Gambar)

Video: LED yang Dapat Diprogram: 6 Langkah (dengan Gambar)

Video: LED yang Dapat Diprogram: 6 Langkah (dengan Gambar)
Video: Cara Mengatasi Layar TV pada Siaran Digital Tidak ada Gambar 2024, Desember
Anonim
LED yang dapat diprogram
LED yang dapat diprogram

Terinspirasi oleh berbagai LED Throwies, LED berkedip, dan instruksi serupa, saya ingin membuat LED versi saya yang dikendalikan oleh mikrokontroler. Idenya adalah membuat urutan kedipan LED dapat diprogram ulang. Pemrograman ulang ini dapat dilakukan dengan cahaya dan bayangan, mis. Anda dapat menggunakan senter Anda. Ini adalah instruksi pertama saya, komentar atau koreksi apa pun dipersilakan. Pembaruan 2008-08-12: Sekarang ada kit yang tersedia di Tinker Store. Berikut adalah video memprogram ulang. Maaf untuk kualitas.

Langkah 1: Cara Kerjanya

LED digunakan sebagai output. Sebagai input saya menggunakan LDR, resistor yang bergantung pada cahaya. LDR ini mengubah resistornya karena menerima lebih banyak atau lebih sedikit cahaya. Resistor tersebut kemudian digunakan sebagai input analog ke mikroprosesor ADC (analog digital converter).

Pengontrol memiliki dua mode operasi, satu untuk merekam urutan, yang lain untuk memutar ulang urutan yang direkam. Setelah pengontrol melihat dua perubahan kecerahan dalam waktu setengah detik, (gelap, terang, gelap, atau sebaliknya), pengontrol akan beralih ke mode perekaman. Dalam mode perekaman, input LDR diukur beberapa kali dalam satu detik dan disimpan pada chip. Jika memori habis, pengontrol beralih kembali ke mode pemutaran dan mulai memutar urutan yang direkam. Karena memori pengontrol kecil ini sangat terbatas, 64 byte (ya, byte!), pengontrol ini mampu merekam 400 bit. Itu adalah ruang yang cukup untuk 10 detik dengan 40 sampel per detik.

Langkah 2: Bahan dan Alat

Bahan dan alat
Bahan dan alat
Bahan dan alat
Bahan dan alat

Bahan- 2 x 1K resistor- 1 x LDR (Light Dependent Resistor), mis. M9960- 1 x LED arus rendah, 1.7V, 2ma- 1 x Atmel ATtiny13v, 1KB flash RAM, 64 Bytes RAM, 64 Bytes EEPROM, [email protected] 1 x CR2032, 3V, 220mAhAlat- besi solder - kawat solder- papan tempat memotong roti- Programmer AVR- Catu daya 5V- multimeterSoftware- Eclipse- Plugin CDT- WinAVRBis keseluruhan harus di bawah $5 tanpa alat. Saya menggunakan ATtiny13v karena versi keluarga pengontrol ini dapat berjalan pada 1.8V. Itu memungkinkan untuk menjalankan sirkuit dengan baterai yang sangat kecil. Untuk menjalankannya untuk waktu yang sangat lama, saya memutuskan untuk menggunakan LED arus rendah yang mencapai kecerahan penuh pada 2ma.

Langkah 3: Skema

skema
skema

Beberapa komentar pada skema. Input reset tidak terhubung. Ini bukan praktik terbaik. Lebih baik menggunakan resistor 10K sebagai pull up. Tapi itu berfungsi dengan baik untuk saya tanpa dan menghemat resistor. Untuk menjaga rangkaian sesederhana mungkin, saya menggunakan osilator internal. Itu berarti kita menyimpan kristal dan dua kapasitor kecil. Osilator internal memungkinkan pengontrol berjalan pada kecepatan 1.2MHz yang lebih dari cukup untuk tujuan kita. Jika Anda memutuskan untuk menggunakan catu daya lain selain 5V atau menggunakan LED lain, Anda harus menghitung resistor R1. Rumusnya adalah: R = (Power supply V - LED V) / 0,002A = 1650 Ohm (Power supply = 5V, LED V = 1.7V). Menggunakan dua LED arus rendah alih-alih satu, rumusnya terlihat seperti ini: R = (Power supply V - 2 * LED V) / 0,002A = 800 Ohm. Perlu diketahui, bahwa Anda harus menyesuaikan perhitungan jika memilih jenis LED lain. Nilai resistor R2 tergantung pada LDR yang digunakan. 1KOhm bekerja untuk saya. Anda mungkin ingin menggunakan potensiometer untuk menemukan nilai terbaik. Cicuit harus dapat mendeteksi perubahan cahaya di siang hari normal. Untuk menghemat daya, PB3 hanya disetel ke tinggi, jika dilakukan pengukuran. Pembaruan: skemanya menyesatkan. Di bawah ini adalah versi yang benar. Terima kasih, dave_chatting.

Langkah 4: Merakit di Papan Prototipe

Merakit di Papan Prototipe
Merakit di Papan Prototipe
Merakit di Papan Prototipe
Merakit di Papan Prototipe

Jika Anda ingin menguji sirkuit Anda, papan tempat memotong roti sangat berguna. Anda dapat merakit semua bagian tanpa harus menyolder apa pun.

Langkah 5: Program Sirkuit

Memprogram Sirkuit
Memprogram Sirkuit
Memprogram Sirkuit
Memprogram Sirkuit

Kontroler dapat diprogram dalam berbagai bahasa. Paling sering digunakan adalah Assembler, Basic dan C. Saya menggunakan C karena paling sesuai dengan kebutuhan saya. Saya terbiasa dengan C sepuluh tahun yang lalu dan mampu menghidupkan kembali beberapa pengetahuan (yah, hanya beberapa …). Untuk menulis program Anda, saya merekomendasikan Eclipse dengan plugin CDT. Dapatkan Eclipse di sini https://www. Eclipse.org/ dan plugin di sini https://www. Eclipse.org/cdt/. Untuk mengkompilasi bahasa C ke mikrokontroler AVR, Anda memerlukan kompiler silang. Beruntung seperti kita, ada pelabuhan GCC yang terkenal. Itu disebut WinAVR dan dapat ditemukan di sini https://winavr.sourceforge.net/. Tutorial yang sangat bagus tentang cara memprogram pengontrol AVR dengan WinAVR ada di sini https://www.mikrocontroller.net/articles/AVR-GCC- Tutorial. Maaf, ini dalam bahasa Jerman tetapi Anda mungkin menemukan ribuan halaman tutorial tentang topik itu dalam bahasa Anda, jika Anda mencarinya. Setelah mengkompilasi sumber Anda, Anda harus mentransfer file hex ke controller. Itu dapat dilakukan dengan menghubungkan PC Anda ke sirkuit menggunakan ISP (dalam programmer sistem) atau menggunakan programmer khusus. Saya menggunakan programmer khusus karena membuat sirkuit sedikit lebih mudah dengan menghemat beberapa kabel dan steker. Kekurangannya adalah, Anda harus menukar pengontrol antara sirkuit dan programmer setiap kali Anda ingin memperbarui perangkat lunak Anda. Programmer saya berasal dari https://www.myavr.de/ dan menggunakan USB untuk terhubung ke notebook saya. Ada banyak orang lain di sekitar dan Anda bahkan dapat membangunnya sendiri. Untuk transfer itu sendiri saya menggunakan sebuah program bernama avrdude yang merupakan bagian dari distribusi WinAVR. Contoh baris perintah mungkin terlihat seperti ini:

avrdude -F -p t13 -c avr910 -P com4 -U flash:w:flickled.hex:iTerlampir Anda mungkin mendapatkan sumber dan file hex yang dikompilasi.

Langkah 6: Menyolder

Pematerian
Pematerian

Jika sirkuit Anda berfungsi di papan tempat memotong roti, Anda dapat menyoldernya.

Ini dapat dilakukan pada PCB (papan cicuit tercetak), pada papan prototipe atau bahkan tanpa papan. Saya memutuskan untuk melakukannya tanpa sirkuit karena hanya terdiri dari beberapa komponen. Jika Anda tidak terbiasa dengan menyolder, saya sarankan Anda mencari tutorial menyolder terlebih dahulu. Keterampilan menyolder saya agak berkarat, tetapi saya pikir Anda mengerti. Saya harap Anda menikmatinya. Alex

Direkomendasikan: