Daftar Isi:

Lingkungan Pengembangan Ghetto: 5 Langkah
Lingkungan Pengembangan Ghetto: 5 Langkah

Video: Lingkungan Pengembangan Ghetto: 5 Langkah

Video: Lingkungan Pengembangan Ghetto: 5 Langkah
Video: ZOONDE - POETRY FROM GHETTO_OFFICIAL MUSIC VIDEO (SANERI SWAR MIXTAPE) 2024, Juli
Anonim
Lingkungan Pengembangan Ghetto
Lingkungan Pengembangan Ghetto

Beberapa waktu yang lalu, saya memposting metode "el murahan" yang cepat dan kotor untuk memulai pemrograman chip seri Atmel AVR: Ghetto Programmer (versi 1.0) Sejak itu, saya telah melakukan vamped, re-vamped, dan sebaliknya meningkatkan pengaturan saya. Saya pikir akan menyenangkan untuk mendokumentasikannya. Tujuannya adalah untuk mendapatkan lingkungan prototyping mikrokontroler berbasis AVR yang fleksibel, ringkas, portabel, dapat digunakan di mana saja. Murah (ish). Jadi tanpa basa-basi lagi, inilah Lingkungan Pengembangan Ghetto (GDE) (versi 1.2).

Langkah 1: Kit

Kit
Kit

Kit dasar berisi hal-hal berikut: Programmer USB. Karena Anda ingin dapat memprogram mikrokontroler dari laptop Anda di mana saja. Dan karena USB adalah sumber yang sangat berguna dari +5v. Pemrograman cradles. Satu untuk setiap jenis chip yang Anda mainkan. Bagi saya, itu berarti satu dengan 8 pin (ATtiny13, 15), satu dengan 20 pin (ATtiny 2313), dan satu dengan 28 pin (ATmega8). Lampu kedip. Saat ada yang salah dengan kode Anda, tidak ada yang bisa menyelesaikannya seperti menyalakan lampu untuk mendiagnosis. Plus, program penutup mata LED adalah "Hello World" dari mikrokontroler. Papan tempat memotong roti. Bagaimanapun, ini adalah kit pengembangan.

Langkah 2: Programmer USB

Pemrogram USB
Pemrogram USB
Pemrogram USB
Pemrogram USB

Di Ghetto Programmer (v.1.0) saya menggunakan programmer port paralel. Ini bagus karena sederhana dan murah dan cepat. Tapi laptop saya tidak memiliki port paralel. Saya bermain-main dengan membuat programmer port serial sebentar, tapi jujur mereka sama rumitnya dengan versi USB dan bahkan port serial menjadi langka. Memang, laptop saya hanya benar-benar punya USB. Jadi USB-nya. Melihat sekeliling, programmer USBTiny cukup sederhana dan bekerja dengan alat GNU/AVR-GCC gratis. Lakukan sendiri atau beli kit? Cara DIY bagus jika Anda sudah dapat memprogram ATTiny2313 (dengan programmer paralel) dan memiliki kristal 12MHz. Halaman USBTiny memaparkan dasar-dasarnya. Dia mengakhiri kabel pemrograman dengan port paralel, tetapi saya akan menyelesaikannya dengan header 6-pin standar jika saya memulai dari awal. (Mengapa? Karena itu standar.) Berikut adalah pin-out-nya, dan periksa gambar di bawah untuk tata letak kabel. PD3 - MISOPD5 - ResetPD6 - SCKPD7 - MOSIJika Anda membuat sendiri, silakan belajar dari pengalaman saya dan masukkan ke dalam kotak plastik yang bagus. Jika tidak, pada akhirnya akan gagal ketika kristal 12MHz putus. Itulah sebabnya saya sekarang menggunakan…Cara cepat dan elegan adalah kit USBtinyISP Ladyada. Ini akan membuat Anda kembali $ 22, tetapi Anda mendapatkan PCB yang bagus, ATTiny2313 yang telah diprogram sebelumnya, dan kotak yang bersih dengan kabel yang bagus. Suku cadang mentah seperti $15-16, dan Anda tidak perlu menelepon Digikey dan kemudian khawatir tentang memprogram 2313 Anda sendiri. Memerlukan waktu 30 menit - 1 jam untuk menyolder semuanya. Berbelanja mewah. Percaya padaku. (Tidak berafiliasi, pelanggan puas) Dan baru saja melihat tautan ini: Tutorial AVR Ladyada yang menurut saya cukup bagus. (Dan perhatikan bahwa desain Ladyada dan USBTiny asli menggunakan kode pengenal produk USB yang berbeda -- Anda harus menemukan string ID dan mengkompilasi ulang avrGCC jika Anda beralih di antara keduanya. Saya rasa ada petunjuk di masing-masing halaman web.)

Jika Anda menggunakan sistem Linux Ubuntu dan menggunakan pemrogram USBTiny, berikut adalah perintah yang akan mengaktifkan dan menjalankan keseluruhan rantai alat: Sudo apt-get install build-essential avr-libc binutils-avr gcc-avr avrdude(diuji di Hardy Heron)Jika Anda memiliki AMD64 arch, Anda mungkin juga memerlukan: byacc libusb-dev flex bison libc6-devdan kemudian mengkompilasi AVRdude dengan tangan:(wget https://download.savannah.gnu.org/releases/avrdude/ avrdude-5.5.tar.gz tar xvzf avrdude-5.5.tar.gz cd avrdude-5.5 ## Patch diperlukan untuk AMD64: wget https://savannah.nongnu.org/patch/download.php?file_id=14754 patch -p1 < avrdude-5.5.usbtiny.64bit.patch./configure make && make install sudo avrdude -p attiny2313 -c usbtiny ## to test)Jika Anda melihat sesuatu seperti "avrdude: Perangkat AVR diinisialisasi dan siap menerima instruksi" maka Anda' kembali selesai. Oh ya, dan kredit untuk Wendel Oskay untuk diagram pinout programmer standar.

Langkah 3: Cradle Pemrograman

Tempat Pemrograman
Tempat Pemrograman
Tempat Pemrograman
Tempat Pemrograman
Tempat Pemrograman
Tempat Pemrograman

Di Ghetto Programmer v.1.0 saya menggunakan cradle pemrograman dengan input pin non-standar dan dengan pin-header perempuan untuk memasukkan barang ke dalamnya. Pin non-standar adalah ide yang buruk karena Anda tidak akan dapat menggunakan cradle Anda dengan programmer orang lain, dan sebaliknya. Pin-header wanita menyenangkan karena Anda dapat langsung mencolokkan LED ke dalamnya, tetapi ketika saya mulai melakukan sesuatu yang lebih kompleks, saya tetap akan menyambungkannya ke papan tempat memotong roti. Dengan buaian baru, saya memotong perantara. Lebih sedikit kabel tangan = lebih baik. Tetapi keuntungan terbesar dari desain cradle ini adalah Anda dapat mencolokkan cradle hampir di mana saja Anda dapat mencolokkan chip AVR. Ini ternyata sangat besar. Alih-alih mendesain sirkuit ISP ke robot Anda atau apa pun, Anda cukup memasukkan dudukan ini ke soket IC. Kemudian Anda dapat memprogram/memprogram ulang otak robot Anda di sirkuit. Setelah selesai mengembangkan, colokkan AVR secara langsung dan Anda melanjutkan ke yang berikutnya. Membuat cradle cukup mudah -- yang perlu Anda lakukan hanyalah menyambungkan pin dari header 6-pin ke tempat yang tepat di keripik. Kali ini, saya menggunakan PCB tergores. Anda juga dapat menyambungkan semuanya dengan tangan di perfboard. Dudukan ATTiny13/15 dibuat dengan soket pembungkus kawat 8-pin. Aku suka ini. Sangat mudah untuk memasukkan chip ke dalam lubang bundar yang bagus dan kaki yang panjang memberikan jarak ekstra pada papan tempat memotong roti. Saya membuat jejak PCB dengan tangan bebas dengan Sharpie. Dudukan ATTiny2313 dibuat dengan Eagle dan metode transfer toner kertas laser. Saya tidak dapat menemukan soket pembungkus kawat 20-pin, jadi saya harus menggunakan soket biasa 20-pin yang disolder ke 2 header pin 10-pin. Ini berakhir dengan buaian dengan kaki lebih pendek, tetapi berhasil. Skema dan PDF yang saya gunakan untuk rangkaian ada di bawah. Pada keduanya, saya harus memasang kabel ekstra. Begitulah hidup.

Langkah 4: Blinkenlights

Lampu kedip
Lampu kedip
Lampu kedip
Lampu kedip

Kesederhanaan itu sendiri. Saya tidak akan menyebutkan ini sama sekali jika mereka tidak begitu berguna.

Solder resistor (150-220 ohm adalah nilai yang baik.) Langsung ke kabel negatif beberapa LED. Ini akan menyala dari sekitar 2v-6v tanpa terbakar. Dan resistor membantu Anda mengingat sisi mana yang negatif. Tempelkan di mana pun Anda ingin tahu ada listrik. Cari tahu apakah transistor itu meledak. Ubah baterai nicad menjadi lampu malam yang tahan lama. Gunakan antarmuka kode berkedip untuk membaca nilai dari mikroprosesor Anda (perlahan). Atau buat 8 dari mereka dan Anda memiliki tampilan satu byte (ditambah bahan aktif di mata Cylon.) Buatlah. Buat banyak. Buat mereka sekarang.

Langkah 5: Akhir

Tamat
Tamat

Jadi "sistem" ini memenuhi hampir semua kebutuhan pengembangan saya. Ini modular, terukur, kompak, dan portabel.

Misalnya, saya mengerjakan rutinitas untuk menjalankan pesan bergulir pada tampilan 4 digit (halaman intro) di pesawat dalam perjalanan ke pernikahan seorang teman. Membuat pemecah kebekuan yang baik dengan pramugari. Potensiometer ini -> ADC -> Pengaturan ammeter yang digerakkan oleh PWM adalah papan tempat memotong roti, diberi kode, dan di-debug sepenuhnya antara sofa dan meja makan saya, dan dibersihkan dalam waktu 2 menit ketika teman-teman datang. (Ini adalah bagian pengaturan waktu alarm dari apa yang akan menjadi jam meteran.) Kadang-kadang saya membuat pengaturannya berfungsi ketika saya merasa ingin bermain-main. Tambahkan sekantong kecil barang (beberapa kapasitor dan resistor, kabel penghubung, transistor, speaker piezo, fotodioda, mikrofon, motor kecil, dll) dan Anda akan berada jauh di depan MacGuyver itu bahkan tidak lucu.

Direkomendasikan: