Агуулгын хүснэгт:

VUSBTiny AVR SPI програмист: 3 алхам
VUSBTiny AVR SPI програмист: 3 алхам

Видео: VUSBTiny AVR SPI програмист: 3 алхам

Видео: VUSBTiny AVR SPI програмист: 3 алхам
Видео: USB программатор на CH341a (как пользоваться ) 2024, Арваннэгдүгээр
Anonim
VUSBTiny AVR SPI програмист
VUSBTiny AVR SPI програмист

usbtiny isp програмист хийж, 6 сарын турш хэрэглэсний дараа би өөр төхөөрөмж авч явахаар хайж байсан. usbtiny isp дизайны энгийн байдал надад таалагддаг, гэхдээ бүр жижиг болгож жижиг хэсгүүдийг авахыг хүсч байна. Анхны дизайн дахь миний өөрчлөхийг хүсч буй нэг зүйл бол болор ашиглалтыг арилгах явдал юм. Миний олж мэдсэн нэг шийдэл бол v-usb драйверууд нь attiny25/45/85 төхөөрөмж дээрх 16.5Mhz дотоод осцилляторыг дэмждэг явдал юм. Тиймээс би usbtiny isp-ийг USB холболтод ашиглах v-usb ашиглахын тулд энэ төслийг эхлүүлж байна. Үүний шууд давуу тал нь зай хэмнэх, бүрэлдэхүүн хэсгүүдийн тоо багатай байх (талст байхгүй болно). usbtiny description from https://www.xs4all.nl/~dicks/avr/usbtiny/ Atmel ATtiny микроконтроллеруудын протокол. Мэдээжийн хэрэг, энэ нь ATmega цуврал дээр ажиллах болно. Програм хангамж нь 12 МГц давтамжтай AVR -д зориулагдсан болно. Ийм давтамжтайгаар USB автобусны бит тус бүр 8 цагийн мөчлөг шаарддаг бөгөөд маш их заль мэх хийснээр USB долгионы хэлбэрийг програмаар декодлох, кодлох боломжтой байдаг. USB драйвер нь тохиргоо, хөрвүүлэгчийн хувилбараас хамааран ойролцоогоор 1250-1350 байт флаш зай (нэмэлт таних мөрийг оруулаагүй), 46 байт RAM (стекийн зайг оруулаагүй) шаардлагатай. C интерфэйс нь тохиргооноос хамааран 3-5 функцээс бүрдэнэ. Http://www.obdev.at/products/vusb/vusb-ийн тайлбар V-USB нь Atmel-ийн бага хурдтай USB төхөөрөмжийг зөвхөн програм хангамжаар хэрэгжүүлэх боломжтой юм. AVR микроконтроллерууд нь бараг ямар ч AVR микроконтроллероор USB тоног төхөөрөмжийг бүтээх боломжтой бөгөөд нэмэлт чип шаарддаггүй.

Алхам 1: онцлог ба эд анги

Онцлог ба эд анги
Онцлог ба эд анги

* usbtiny isp програмчлалын логик, гүйцсэн avr-dude дэмжлэг * жижиг хөлийн хэвлэх * хамгийн бага бүрэлдэхүүн хэсгүүд * зорилтот төхөөрөмжийн зорилтот мкус руу чиглэсэн io шугам хамгаалагдаагүй болохыг анхаарна уу. Та 1k-2k резисторыг SCK болон MOSI дээр нэмж, https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all дээрээс v-usb дээрээс олж авсан бүтээлүүд дээр үндэслэсэн буруу холболтын лавлагааас хамгаалах боломжтой. nl/~ dicks/avr/usbtiny/хэсгүүдийн жагсаалт * attiny45/85 (85 -ийг авахад илүү хялбар) * 3.6v zener диод (1n747, BZX79,.. 1W төрлөөс зайлсхийх) * 68ohm эсэргүүцэл x 2 * 1.5K эсэргүүцэл * мини талхны самбар 170 tiepoints * usb кабель (долларын дэлгүүр usb принтерийн кабель сайн) * io шугам хамгаалалтын 1к/2к резистор (заавал биш) багаж шаардлагатай * ажиллах avr програмист (тийм ээ, энэ бол барих22, бидэнд нэгийг хийх хэрэгтэй) * ажиллах avr програмчлалын орчин

Алхам 2: Breadboard -ийн зохион байгуулалт, схем, барилгын ажил

Breadboard -ийн зохион байгуулалт, схем, барилгын ажил
Breadboard -ийн зохион байгуулалт, схем, барилгын ажил
Breadboard -ийн зохион байгуулалт, схем, барилгын ажил
Breadboard -ийн зохион байгуулалт, схем, барилгын ажил

барилга

* Талхны хавтангийн схемийг дагаж мөрдөөрэй, ийм бүрэлдэхүүн хэсгүүд, 3 резистор, 2 диод, 1 таг, 8 зүүтэй mcu байхгүй. * долларын дэлгүүрийн USB принтерийн кабелийг хэвлэгчийн төгсгөлийг таслахад 4 ил утас байх бөгөөд 4 зүүтэй эрэгтэй толгойтой болгож, бид үүнийг самбар дээр холбоход ашиглах болно. схем ба зүү хуваарилах схемийг үзнэ үү (J1). * диодын туйлшралыг анхаарч үзээрэй.

төслийг барьж, анивчуулах

төслийг avr-gcc хэрэгслийн сүлжээ бүхий Linux ubuntu тунгалаг хайрцагт бүтээсэн болно. Танд ийм орчин байгаа гэж бодож байна, эсвэл үүнийг хэрхэн тохируулахаа интернэтээс олж мэдэх боломжтой. эх кодууд нь gnu gpl v2 удамшлын лицензтэй байдаг.

эх код нь v-usb-ээс санал болгосон конвенцийг дагаж мөрддөг бөгөөд та vusbtiny.tgz эх багцыг татаж аваад төслийн лавлахад оруулаагүй болно. таны эх лавлах санд main.c байгаа бөгөөд энэ нь миний өөрчилсөн usbtiny програмистын хувилбар юм. болон v-usb давхаргыг агуулсан usbdrv дэд лавлах. Үүнийг барихдаа дээрх хоёр төслийн лицензийн хугацааг ажиглана уу. Программистын логик дээрх миний эх сурвалж нь хатагтайн хувилбар биш харин Дик Стрифландын хувилбар дээр суурилсан болно (хэдийгээр тэд бараг адилхан).

хэт гинжин хэлхээ холбоогүй хүмүүст дараах хоёртын файлыг ашиглаж болно

vusbtiny.hex татаж авахын тулд дарна уу

болон firmware -ийг флэш болгохын тулд avrdude -ийг ашиглана уу

avrdude -c usbtiny -p t45 -e -V -U flash: w: usbtiny.hex

(хэрэв таны төхөөрөмж жижиг 85 бол -p t45 w/ -p t85 -ийг солино уу)

эх сурвалжийг эндээс татаж авах боломжтой vusbtiny.tgz татаж авах

эх багцыг өөрийн ажлын лавлах руу задлах

tar -zxvf vusbtiny.tgz

* cus vsubtiny хийх, vusbtiny ажлын лавлах болгон өөрчлөх * Таны ашиглах чипийн дагуу зорилтот төхөөрөмжид тохирох файлыг тохируулах. өөрөөр хэлбэл PROGRAMMER_MCU = t45 эсвэл t85 * хийх * дуртай ISP програмистаа хавсаргах * makefile -ийг өөрчлөх, шаардлагатай бол avrdude параметрээ өөрчлөх. хувьцааг USBTiny програмист гэж үздэг. өөрөөр хэлбэл AVRDUDE_PROGRAMMERID = usbtiny * флаш програмыг make install ашиглан

програмыг анивчсаны дараа бид гал хамгаалагчийг зөв тохируулах хэрэгтэй бөгөөд энэ төсөлд 1 -р зүү тохиргоог io болгон ашиглаж байна

* USB цагийг ашиглахын тулд v-usb давхаргад заасны дагуу ашигладаг ppl цаг

avrdude -c usbtiny -p t45 -V -U lfuse: w: 0xe1: m -U hfuse: w: 0x5d: m -U efuse: w: 0xff: m

Энэ тохиргоо нь 5V SPI -ээр дамжуулан цаашдын програмчлалыг идэвхгүй болгодог, учир нь бидэнд io -ийн RESET pin (pin1) хэрэгтэй болно. гал хамгаалагчийг сэргээхийн тулд танд HVSP програмист хандах шаардлагатай болно.

Алхам 3: Хэрэглээ ба хэрэглээ

Хэрэглээ ба хэрэглээ
Хэрэглээ ба хэрэглээ
Хэрэглээ ба хэрэглээ
Хэрэглээ ба хэрэглээ
Хэрэглээ ба хэрэглээ
Хэрэглээ ба хэрэглээ

талхны самбар дээр шууд анивчдаг

Хэрэв та vusbtiny -ийг ашиглан 8 зүү AVR төхөөрөмжийг асааж байгаа бол програмист төхөөрөмжийн дээд хэсэгт зорилтот төхөөрөмжөө дарж болно. програмчлагч нь програмчлалын тээглүүр нь зорилгодоо нийцсэн байхаар зохион бүтээгдсэн болно. Нэг заль мэх байдаг, гэхдээ та компьютерт холбогдсон USB D+ ба D зүү тул програмист mcu дээрх 2 ба 3-р зүүг тусгаарлах хэрэгтэй болно. Би үүнд хүрэхийн тулд скотч соронзон хальс ашигладаг бөгөөд үүнийг зураг дээрээс харж болно. firmware хүлээн авахад бэлэн байгаа tiny45 дээр tiny13v "унаж" байгааг доор үзүүлэв.

ISP нь холбогчоор анивчдаг

ISP-ээр дамжуулан зорилтот хэлхээг програмчлах (систем доторх програмчлал) танд ISP кабель хэрэгтэй болно. Энд би стандарт 2x3 эсвэл 2x5 зүү толгойг ашигладаггүй. Үүний оронд би талхны самбар дээр илүү тохиромжтой 1х6 хэмжээтэй холбогчийг ашиглаж байна, та 2х3 эсвэл 2х5 зүү бүхий толгойг талхны хавтангийн бүдүүвч, схемд үзүүлсэн шиг J2 дээр зурж болно. Дараах зураг нь ISP -ээр дамжуулахад бэлэн болсон жижиг 2313 -ийг харуулав.

алдааг олж засварлах

* firmware -ийг асааж чадахгүй байна уу? анхны програмистаа шалгаарай, avrdude дахь -B туг ашиглан цагийг тохируулах шаардлагатай байж магадгүй юм. 1 -р чипийг уншиж үзээрэй, муу гал хамгаалагч байж магадгүй, таны чипэнд гадаад цагийн дохио хэрэгтэй байж магадгүй. та чипээ анхны байдалд нь буцааж засах хэрэгтэй болж магадгүй. * холболтыг шалгах * өөр өөр io зүү, код, холболтыг шалгах * та 500 мВт, 400 мВт -ийн төрлийн zener диодыг орлуулж болно * та R3 -ийн утгыг 1.2 К буюу түүнээс бага болгож бууруулахыг оролдож болно * танд цаг хугацааны асуудал тулгарах магадлал өндөр байна. -Avrdude туг, богино USB кабельтай бол бүгд тусалдаг

Зөвлөмж болгож буй: