Daftar Isi:
- Langkah 1: Fitur dan Bagian
- Langkah 2: Tata Letak, Skema, dan Konstruksi Papan Tempat memotong roti
- Langkah 3: Penggunaan dan Aplikasi
Video: VUSBTiny AVR SPI Programmer: 3 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
setelah membuat usbtiny isp programmer dan menggunakannya selama 6 bulan, saya mencari untuk membuat satu lagi untuk dibawa-bawa. saya suka kesederhanaan desain isp usbtiny tetapi ingin membuatnya lebih kecil dan mengambil lebih sedikit bagian. satu hal dalam desain asli yang ingin saya ubah adalah menghilangkan penggunaan kristal jam. satu solusi yang saya temukan adalah driver v-usb mendukung osilator internal 16,5Mhz pada perangkat attiny25/45/85. jadi saya memulai proyek ini agar usbtiny isp menggunakan v-usb untuk komunikasi usb. manfaat langsungnya adalah menghemat ruang dan memiliki jumlah komponen yang lebih sedikit (tidak ada lagi kristal). Deskripsi usbtiny dari https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny adalah implementasi perangkat lunak dari USB kecepatan rendah protokol untuk mikrokontroler Atmel ATtiny. Tentu saja, itu juga akan berfungsi pada seri ATmega. Perangkat lunak ini ditulis untuk AVR dengan clock 12 MHz. Pada frekuensi ini, setiap bit pada bus USB membutuhkan 8 siklus clock, dan dengan banyak tipu daya, dimungkinkan untuk memecahkan kode dan mengkodekan bentuk gelombang USB dengan perangkat lunak. Driver USB membutuhkan sekitar 1250 hingga 1350 byte ruang flash (tidak termasuk string identifikasi opsional), tergantung pada konfigurasi dan versi kompiler, dan 46 byte RAM (tidak termasuk ruang tumpukan). Antarmuka C terdiri dari 3 hingga 5 fungsi, tergantung pada deskripsi konfigurasi.vusb dari https://www.obdev.at/products/vusb/ V-USB adalah implementasi perangkat lunak saja dari perangkat USB berkecepatan rendah untuk Atmel's Mikrokontroler AVR, memungkinkan untuk membangun perangkat keras USB dengan hampir semua mikrokontroler AVR, tidak memerlukan chip tambahan.video tentang konstruksi dan penggunaan
Langkah 1: Fitur dan Bagian
* logika pemrograman dari usbtiny ISP, dukungan avr-dude yang matang * foot-print kecil * komponen minimal * memberi daya pada perangkat target Perhatikan bahwa jalur io ke mcus target tidak dilindungi. Anda dapat menambahkan resistor 1k-2k ke SCK dan MOSI dan melindungi dari kemungkinan referensi koneksi yang salah berdasarkan karya yang ditemukan di v-usb dari framework https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl/~dicks/avr/usbtiny/daftar suku cadang * attiny45/85 (85 lebih mudah didapat) * Dioda zener 3.6v (tipe 1n747, BZX79,..avoid 1W) * resistor 68ohm x 2 * resistor 1,5K * papan tempat memotong roti mini 170 titik ikat * kabel usb (kabel printer usb toko dolar baik-baik saja) * resistor 1k/2k untuk perlindungan garis io (opsional) diperlukan alat * programmer avr yang berfungsi (ya, ini adalah tangkapan22, kita perlu satu untuk membuatnya) * lingkungan pemrograman avr yang berfungsi
Langkah 2: Tata Letak, Skema, dan Konstruksi Papan Tempat memotong roti
konstruksi
* mengikuti tata letak papan tempat memotong roti, tidak ada yang mungkin komponen, 3 resistor, 2 dioda, 1 tutup, ditambah 8 pin mcu. * Dapatkan toko dolar usb printer kabel potong ujung printer, akan ada 4 kabel yang terbuka, amankan dan buat menjadi 4 pin male header, kita akan gunakan untuk menyambung ke breadboard. konsultasikan skema untuk tata letak dan penugasan pin (J1). * hati-hati terhadap polaritas dioda.
membangun dan mem-flash proyek
proyek ini dibangun di kotak lucid ubuntu linux dengan toolchain avr-gcc. diasumsikan Anda sudah memiliki lingkungan seperti itu, atau Anda dapat mencari tahu dari internet cara mengaturnya. kode sumber adalah gnu gpl v2 berlisensi dari warisan.
kode sumber mengikuti konvensi yang direkomendasikan oleh v-usb, Anda dapat mengunduh paket sumber vusbtiny.tgz dan membuka tarnya ke dalam direktori proyek. dalam direktori sumber Anda, ada main.c, yang merupakan versi saya dari programmer usbtiny yang dimodifikasi. dan sub-direktori usbdrv, yang berisi lapisan v-usb. mohon diperhatikan syarat perijinan dari kedua proyek diatas saat membangun ini. sumber saya pada logika programmer didasarkan pada versi Dick Streefland dan bukan versi ladyada (walaupun hampir sama).
bagi mereka yang tidak memiliki build too-chain, Anda dapat menggunakan biner berikut:
klik untuk mengunduh vusbtiny.hex
dan gunakan avrdude untuk mem-flash firmware
avrdude -c usbtiny -p t45 -e -V -U flash:w:usbtiny.hex
(jika perangkat Anda adalah tiny85, ganti -p t45 w/ -p t85)
sumber dapat diunduh di sini klik untuk mengunduh vusbtiny.tgz
untar paket sumber ke direktori kerja Anda
tar -zxvf vusbtiny.tgz
* lakukan cd vssubtiny, untuk mengubah ke direktori kerja vusbtiny * buatlah file makefile untuk perangkat target sesuai dengan chip yang akan Anda gunakan. yaitu PROGRAMMER_MCU=t45 atau t85 * lakukan make * lampirkan programmer ISP favorit Anda * ubah makefile dan ubah parameter avrdude Anda jika diperlukan. stok satu mengasumsikan programmer USBTiny. yaitu AVRDUDE_PROGRAMMERID=usbtiny * flash firmware melalui make install
setelah mem-flash firmware, kita perlu mengatur sekering dengan benar, kita menggunakan pin 1 reset sebagai io dalam proyek ini
* jam ppl digunakan sesuai kebutuhan oleh lapisan v-usb untuk pengaturan waktu usb * reset pin dinonaktifkan karena kami perlu menggunakannya sebagai io
avrdude -c usbtiny -p t45 -V -U lfuse:w:0xe1:m -U hfuse:w:0x5d:m -U efuse:w:0xff:m
pengaturan ini menonaktifkan pemrograman lebih lanjut melalui 5V SPI karena kita memerlukan pin RESET (pin1) untuk io. Anda akan memerlukan akses ke programmer HVSP untuk memulihkan sekring.
Langkah 3: Penggunaan dan Aplikasi
flashing langsung di papan tempat memotong roti
jika Anda menggunakan vusbtiny untuk mem-flash perangkat AVR 8 pin, Anda cukup menekan perangkat target Anda di atas perangkat programmer. pemrogram telah dirancang sedemikian rupa sehingga pin pemrograman cocok dengan target. ada satu trik, Anda harus mengisolasi pin 2 dan 3 pada mcu pemrogram, karena mereka adalah pin USB D+ dan D- yang terhubung ke PC. saya menggunakan potongan scotch tape untuk mencapai ini, Anda dapat melihatnya di foto. tunjukkan di bawah ini adalah tiny13v "naik" di tiny45, siap menerima firmware.
ISP berkedip melalui jumper
untuk memprogram sirkuit target melalui ISP (pemrograman dalam sistem), Anda memerlukan kabel ISP. di sini saya tidak menggunakan header pin 2x3 atau 2x5 standar. sebagai gantinya saya menggunakan jumper 1x6 yang lebih ramah papan tempat memotong roti, Anda dapat membuat header pin 2x3 atau 2x5 dengan memetakannya ke J2 seperti yang ditunjukkan pada tata letak dan skema papan tempat memotong roti. foto berikut menunjukkan tiny2313 siap untuk di-flash melalui ISP.
penyelesaian masalah
* tidak dapat mem-flash firmware? periksa programmer asli Anda, mungkin perlu menyesuaikan waktu melalui flag -B di avrdude. coba baca chip 1, mungkin sekeringnya buruk, mungkin chip Anda memerlukan sinyal clock eksternal. Anda mungkin perlu memperbaiki chip Anda kembali ke default 1. * periksa koneksi * jika menggunakan pin io yang berbeda, periksa kode dan koneksi * Anda dapat mengganti dioda zener dengan tipe 500mw, 400mw * Anda dapat mencoba mengurangi nilai R3 menjadi 1,2K atau kurang * Anda lebih mungkin mengalami masalah waktu avrdude, coba -B bendera avrdude, memiliki kabel USB yang lebih pendek semuanya membantu
Direkomendasikan:
Programmer AVR W/Tegangan Tinggi: 17 Langkah
Programmer AVR W/Tegangan Tinggi: Ini adalah Instruksi pertama saya. Papan yang saya rancang adalah Programmer AVR. Papan ini menggabungkan fungsi dari 4 papan prototipe terpisah yang saya buat dalam beberapa tahun terakhir: - Pemrogram AVR Tegangan Tinggi, terutama digunakan pada perangkat ATtiny untuk mengatur fu
Cara Upload Kode C ke AVR Menggunakan Arduino Uno Sebagai Programmer: 6 Langkah
Cara Upload Kode C ke AVR Menggunakan Arduino Uno Sebagai Programmer: HI semuanya:D Di sini saya akan membagikan cara sederhana untuk memprogram chip AVR apa pun menggunakan Arduino Uno R3 Yang Anda butuhkan untuk membakar kode ke mikrokontroler Anda adalah Arduino Uno alih-alih membeli yang spesifik programmer yang biayanya banyak
Layar LCD I2C / IIC - Gunakan LCD SPI ke Layar LCD I2C Menggunakan Modul SPI ke IIC Dengan Arduino: 5 Langkah
Layar LCD I2C / IIC | Menggunakan LCD SPI ke Layar LCD I2C Menggunakan Modul SPI ke IIC Dengan Arduino: Hai teman-teman karena LCD SPI 1602 yang normal memiliki terlalu banyak kabel untuk dihubungkan sehingga sangat sulit untuk menghubungkannya dengan arduino tetapi ada satu modul yang tersedia di pasaran yang dapat ubah tampilan SPI menjadi tampilan IIC sehingga Anda hanya perlu menghubungkan 4 kabel
Programmer AVR STK500 Murah untuk Atmel Studio: 7 Langkah
Programmer AVR STK500 Murah untuk Atmel Studio: Atmel Studio adalah alat yang ampuh untuk membuat program AVR, tetapi menulis program adalah langkah pertama. Untuk menggunakan program Anda, Anda harus membuat sirkuit dan mentransfer kode Anda ke mikrokontroler. Anda dapat memprogram AVR Anda dari Atmel Studio dengan menggunakan
Programmer ISP untuk Mikrokontroler AVR: 4 Langkah
Programmer ISP untuk Mikrokontroler AVR: Programmer mikrokontroler adalah perangkat keras disertai dengan perangkat lunak yang digunakan untuk mentransfer kode bahasa mesin ke mikrokontroler/EEPROM dari PC. Programmer ISP untuk mikrokontroler AVR adalah Serial Programmer yang menggunakan