Mundarija:

VUSBTiny AVR SPI dasturchisi: 3 qadam
VUSBTiny AVR SPI dasturchisi: 3 qadam

Video: VUSBTiny AVR SPI dasturchisi: 3 qadam

Video: VUSBTiny AVR SPI dasturchisi: 3 qadam
Video: VUSBTINY AVR Programmer 2024, Noyabr
Anonim
VUSBTiny AVR SPI dasturchisi
VUSBTiny AVR SPI dasturchisi

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

Xususiyatlari va qismlari
Xususiyatlari va qismlari

* 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

Breadboard tartibi, sxemasi va qurilishi
Breadboard tartibi, sxemasi va qurilishi
Breadboard tartibi, sxemasi va qurilishi
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

Qo'llash va qo'llash
Qo'llash va qo'llash
Qo'llash va qo'llash
Qo'llash va qo'llash
Qo'llash va qo'llash
Qo'llash 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: