Mundarija:
- 1 -qadam: Xususiyatlar va qismlar
- 2 -qadam: Breadboard tartibi, sxemasi va qurilishi
- 3 -qadam: Foydalanish va qo'llash
Video: VUSBTiny AVR SPI dasturchisi: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
usbtiny isp dasturchisini yasab, uni 6 oy ishlatganimdan so'ng, men tashish uchun boshqasini yaratmoqchi bo'ldim. Men usbtiny isp dizaynining soddaligini yaxshi ko'raman, lekin uni kichikroq qilib, kamroq qismlarga bo'lishni xohlayman. O'zgartirmoqchi bo'lgan asl dizayndagi bitta narsa - soat billuridan foydalanishni yo'q qilish. Men topgan echimlardan biri shundaki, v-usb drayverlari attiny25/45/85 qurilmalarida 16,5 MGts ichki osilatorni qo'llab-quvvatlaydi. shuning uchun men bu loyihani boshlayman usbtiny isp usb aloqasi uchun v-usbdan foydalanadi. Darhol foyda shundaki, u joyni tejaydi va komponentlar sonini kamaytiradi (kristallar yo'q).usbtiny tavsifi https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny-bu past tezlikli USB dasturiy ta'minoti. Atmel ATtiny mikrokontrollerlari uchun protokol. Albatta, u ATmega seriyasida ham ishlaydi. Dastur 12 MGts chastotali AVR uchun yozilgan. Bunday chastotada, USB -avtobusning har bir biti 8 soatlik tsiklni oladi va ko'p ayyorlik bilan dasturiy ta'minot yordamida USB to'lqin shakllarini dekodlash va kodlash mumkin. USB drayveriga konfiguratsiya va kompilyator versiyasiga qarab, taxminan 1250 dan 1350 baytgacha bo'sh joy (ixtiyoriy identifikator qatorlari bundan mustasno) va 46 baytli operativ xotira (stek bo'shligidan tashqari) kerak bo'ladi. V interfeysi konfiguratsiyaga qarab 3 dan 5 gacha funktsiyalardan iborat. AVR mikrokontrolderlari USB -qurilmalarni deyarli har qanday AVR mikrokontroldor yordamida qurishga imkon beradi, bu esa qo'shimcha chip talab qilmaydi.
1 -qadam: Xususiyatlar va qismlar
* usbtiny isp-dan dasturlash mantig'i, etuk avr-dude qo'llab-quvvatlashi * kichkina oyoq izi * minimal komponentlar * maqsadli qurilma, maqsadli mcusga io chiziqlari himoyalanmaganligini ta'kidlaydi. Siz 1k-2k rezistorlarni SCK va MOSI-ga qo'shishingiz va v-usb-da https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl/~ dicks/avr/usbtiny/qismlar ro'yxati * attiny45/85 (85 ga kelish osonroq) * 3.6v zener diodlari (1n747, BZX79,.. 1W turlaridan qoching) * 68ohm qarshilik x 2 * 1.5K qarshilik * mini -taxtali 170 tiepoints * usb kabel (dollar do'koni usb printer kabeli yaxshi) * io liniyalarini himoya qilish uchun 1k/2k rezistorlar (ixtiyoriy) asboblar kerak * ishchi avr dasturchisi (ha, bu ushlash22, bizga bitta qilish kerak) * ishlaydigan avr dasturlash muhiti
2 -qadam: Breadboard tartibi, sxemasi va qurilishi
qurilish
* taxtaning tartibini bajaring, bu erda komponentlar, 3 rezistor, 2 diod, 1 qopqoq va 8 pinli mcu bo'lishi mumkin emas. * dollarlik usb -printer kabelining printer uchini kesib oling, 4 ta ochiq sim bo'ladi, ularni mahkamlang va 4 pinli erkak sarlavhaga aylantiring, biz uni non paneliga ulash uchun ishlatamiz. sxemani va pinni belgilash uchun sxemaga murojaat qiling (J1). * diodlarning qutblanishiga e'tibor bering.
loyihani qurish va o'chirish
loyiha avr-gcc asboblar zanjiri bilan Linux ubuntu ravshan qutisiga qurilgan. Sizda bunday muhit bor yoki siz uni qanday sozlashni Internetdan bilib olishingiz mumkin. manba kodlari gnu gpl v2 merosdan litsenziyalangan.
manba kodi v-usb tomonidan tavsiya etilgan konventsiyaga mos keladi, siz vusbtiny.tgz manba paketini yuklab olishingiz va loyiha katalogiga ajratib qo'yishingiz mumkin. manba katalogingizda main.c bor, bu mening o'zgartirilgan usbtiny dasturchisining versiyasi. va v-usb qatlamini o'z ichiga olgan usbdrv pastki katalogi. Iltimos, buni qurishda yuqoridagi ikkita loyihaning litsenziyalash muddatiga rioya qiling. dasturchi mantig'idagi manbaim ladyada versiyasiga emas, balki Dik Streefland versiyasiga asoslangan (garchi ular deyarli bir xil).
juda zanjirga ega bo'lmaganlar uchun quyidagi ikkilikdan foydalanishingiz mumkin
vusbtiny.hex -ni yuklab olish uchun bosing
va dasturiy ta'minotni o'chirish uchun avrdude -dan foydalaning
avrdude -c usbtiny -p t45 -e -V -U flesh: w: usbtiny.hex
(agar sizning qurilmangiz kichik 85 bo'lsa, -p t45 w/ -p t85 ni almashtiring)
manba bu erda yuklab olinishi mumkin, vusbtiny.tgz -ni yuklab olish uchun bosing
manba paketini ishchi katalogingizga oching
tar -zxvf vusbtiny.tgz
* vusbtiny ishchi katalogiga aylantirish uchun cd vsubtiny -ni ishlating * Siz foydalanadigan chipga muvofiq maqsadli qurilma uchun faqat makefile. ya'ni PROGRAMMER_MCU = t45 yoki t85 * qilish * sevimli ISP dasturchisini biriktirish * makefile faylini o'zgartirish va kerak bo'lganda avrdude parametrlarini o'zgartirish. aktsioner USBTiny dasturchisi hisoblanadi. ya'ni AVRDUDE_PROGRAMMERID = usbtiny * flesh -dasturiy ta'minot o'rnatish orqali
dasturiy ta'minot yonib -o'chib turgandan so'ng, biz sug'urtalovchini to'g'ri sozlashimiz kerak, biz ushbu loyihada 1 -pinni io sifatida ishlatamiz
* vp-usb qatlami talab qilinadigan usb vaqtini belgilash uchun ishlatilgan * ppl soati
avrdude -c usbtiny -p t45 -V -U lfuse: w: 0xe1: m -U hfuse: w: 0x5d: m -U efuse: w: 0xff: m
bu sozlash 5V SPI orqali keyingi dasturlashni o'chirib qo'yadi, chunki bizga io uchun RESET pin (pin1) kerak. sug'urtani tiklash uchun sizga HVSP dasturchisidan foydalanish kerak bo'ladi.
3 -qadam: Foydalanish va qo'llash
to'g'ridan -to'g'ri taxtada miltillovchi
agar siz 8 pinli AVR qurilmalarini yondirish uchun vusbtiny -dan foydalanayotgan bo'lsangiz, maqsadli qurilmangizni dasturchi qurilmasi ustiga bosishingiz mumkin. dasturchi dasturlash pinlari nishonga mos keladigan qilib yaratilgan. bitta hiyla-nayrang bor, siz dasturchi mcu-da 2 va 3-pinlarni ajratishingiz kerak bo'ladi, chunki ular kompyuterga ulanadigan USB D+ va D-pinlari. Men bunga erishish uchun kesilgan skotchdan foydalanaman, buni fotosuratlarda ko'rishingiz mumkin. quyida ko'rsatish - tiny45 -da, dasturiy ta'minotni qabul qilishga tayyor, kichik 13v "minish".
Internet -provayder jumper orqali miltillaydi
ISP orqali maqsadli sxemani dasturlash uchun (tizim ichidagi dasturlash) sizga ISP kabeli kerak. bu erda men standart 2x3 yoki 2x5 pinli sarlavhalarni ishlatmayapman. Buning o'rniga men nonga qulay bo'lgan 1x6 o'tish moslamasidan foydalanayapman, 2x3 yoki 2x5 pinli sarlavhani ularni J2 formatida xaritada va sxemada ko'rsatilgandek qilishingiz mumkin. Quyidagi rasmda Internet -provayder orqali yonib ketishga tayyor 232313 tasvirlangan.
muammolarni bartaraf qilish; nosozliklarni TUZATISH
* dasturiy ta'minotni o'chira olmaydi? asl dasturchingizni tekshiring, avrdude -B bayrog'i orqali vaqtni sozlashingiz kerak bo'lishi mumkin. 1 -chipni o'qishga harakat qiling, yomon sug'urta bo'lishi mumkin, sizning chipingiz tashqi soat signaliga muhtoj bo'lishi mumkin. Siz chipni standart 1 -chi darajaga qaytarishingiz kerak bo'lishi mumkin. * ulanishlarni tekshirish * agar har xil io -pinlar, kod va ulanishlarni ishlatsangiz * siz zener diodlarini w/ 500mw, 400mw * bilan almashtira olasiz * siz R3 qiymatini 1,2K yoki undan pastroqqa tushirishga urinib ko'rishingiz mumkin * siz vaqt muammosiga tez -tez duch kelishingiz mumkin. -Avrdude bayrog'i, qisqa USB kabeli bor, hamma yordam beradi
Tavsiya:
JDM dasturchisi sharhi: 9 qadam
JDM dasturchisini ko'rib chiqish: JDM - bu mashhur PIC dasturchisi, chunki u ketma -ket portdan, minimal komponentlardan foydalanadi va quvvat manbaini talab qilmaydi. Ammo bu erda chalkashliklar mavjud, tarmoqdagi dasturchilarning ko'p variantlari, qaysi PIC bilan ishlaydi? Ushbu "yo'riqnomada
AVR dasturchisi V/yuqori kuchlanish: 17 qadam
AVR dasturchisi yuqori voltli: bu mening birinchi ko'rsatma. Men yaratgan taxta AVR dasturchisi. Kengash so'nggi bir necha yil ichida men qurgan 4 ta alohida prototipli taxtaning vazifalarini birlashtiradi: - yuqori voltli AVR dasturchisi, asosan ATtiny qurilmalarida fu o'rnatish uchun ishlatiladi
Arduino Uno dasturchisi sifatida C kodini AVR -ga qanday yuklash kerak: 6 qadam
Dasturchi sifatida Arduino Uno -dan foydalanib AVR -ga C kodini qanday yuklash kerak: Hammaga salom: D Bu erda men Arduino Uno R3 yordamida har qanday AVR chipini dasturlashning oddiy usulini baham ko'raman, kodni mikrokontrolleringizga yozish uchun faqat Arduino Uno kerak bo'ladi. juda qimmatga tushadigan dasturchi
Atmel Studio uchun arzon STK500 AVR dasturchisi: 7 qadam
Atmel Studio uchun arzon STK500 AVR dasturchisi: Atmel Studio - AVR dasturlarini yaratish uchun kuchli vosita, lekin dastur yozish - bu birinchi qadam. Dasturdan foydalanish uchun siz sxemani tuzib, kodingizni mikrokontrollerga o'tkazishingiz kerak. Siz AVR -ni Atmel Studio -dan dasturlashingiz mumkin
AVR mikrokontrollerlari uchun ISP dasturchisi: 4 qadam
AVR mikrokontrolderlari uchun ISP dasturchisi: Mikrokontroller dasturchisi - bu kompyuter tili kodini kompyuterdan mikrokontroller/EEPROMga uzatish uchun ishlatiladigan dasturiy ta'minot bilan ta'minlangan apparat qurilmasi. AVR mikrokontrollerlari uchun ISP dasturchisi - bu ketma -ket dasturchilar