Kazalo:

VUSBTiny AVR SPI programer: 3 koraki
VUSBTiny AVR SPI programer: 3 koraki

Video: VUSBTiny AVR SPI programer: 3 koraki

Video: VUSBTiny AVR SPI programer: 3 koraki
Video: VUSBTINY AVR Programmer 2024, November
Anonim
VUSBTiny AVR SPI programer
VUSBTiny AVR SPI programer

potem ko sem naredil usbtiny isp programer in ga uporabljal 6 mesecev, sem iskal izdelavo drugega za prenašanje. Všeč mi je preprostost zasnove usbtiny isp, vendar bi jo rada naredila še manjšo in vzela manj delov. ena stvar v prvotni zasnovi, ki jo želim spremeniti, je odpraviti uporabo kristala ure. ena od rešitev, ki sem jih našel, je ta, da gonilniki v-usb podpirajo notranji oscilator 16,5 MHz na napravah attiny25/45/85. zato začenjam ta projekt, da bi usbtiny isp zaposlil v-usb za usb komunikacijo. takojšnje prednosti so prihranek prostora in manjše število komponent (nič več kristalov). Opis uporabe s spletnega mesta https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny je programska izvedba USB-ja z nizko hitrostjo protokol za mikrokrmilnike Atmel ATtiny. Seveda bo delovalo tudi na seriji ATmega. Programska oprema je napisana za AVR, ki deluje na 12 MHz. Pri tej frekvenci vsak bit na vodilu USB traja 8 ciklov ure, z veliko zvijač pa je programsko opremo mogoče dekodirati in kodirati valovne oblike USB. Gonilnik USB potrebuje približno 1250 do 1350 bajtov bliskovnega prostora (brez izbirnih identifikacijskih nizov), odvisno od konfiguracije in različice prevajalnika, in 46 bajtov RAM -a (brez prostora za sklad). Vmesnik C je sestavljen iz 3 do 5 funkcij, odvisno od konfiguracije. Opis vusb s spletnega mesta https://www.obdev.at/products/vusb/ V-USB je samo programska izvedba naprave USB z nizko hitrostjo za Atmelove Mikrokrmilniki AVR, ki omogočajo izdelavo strojne opreme USB s skoraj vsakim mikrokrmilnikom AVR, ki ne potrebuje dodatnega čipa. Video o gradnji in uporabi

Korak: Lastnosti in deli

Lastnosti in deli
Lastnosti in deli

* programska logika iz usbtiny isp, podpora za zrele avr-dude * majhen odtis * minimalne komponente * pooblasti ciljno napravo. Upoštevajte, da io linije do ciljnega mcusa niso zaščitene. SCK in MOSI lahko dodate 1k-2k upor in zaščitite pred morebitnimi napačnimi povezavami. nl/~ dicks/avr/usbtiny/seznam delov * attiny45/85 (85 je lažje priti) * 3,6v zener diode (1n747, BZX79,..izbegajte 1W tipe) * 68ohm upor x 2 * 1,5K upor * mini vezje 170 vezanih točk * USB kabel (kabel USB tiskalnika v trgovini za dolar je v redu) * 1k/2k upori za zaščito io linij (neobvezno) potrebna orodja * delujoč avr programer (ja, to je catch22, za izdelavo enega potrebujemo) * delovno programsko okolje avr

2. korak: postavitev, shema in konstrukcija ploščic

Postavitev, shema in konstrukcija ploščic
Postavitev, shema in konstrukcija ploščic
Postavitev, shema in konstrukcija ploščic
Postavitev, shema in konstrukcija ploščic

Gradnja

* sledite postavitvi matične plošče, ni komponent, 3 uporov, 2 diod, 1 pokrovček in 8 -polni mcu. * Pridobite kabel USB tiskalnika za dolar, odrežite konec tiskalnika, tam bodo 4 izpostavljene žice, jih zavarujte in jih pretvorite v 4 -polno moško glavo, ki jih bomo uporabili za povezavo z mizo. glejte shemo za razporeditev in dodelitev zatičev (J1). * pazite na polarnost diod.

gradnjo in utripanje projekta

projekt je bil zgrajen v lucidnem polju linux ubuntu z orodno verigo avr-gcc. domnevate, da takšno okolje že imate, ali pa iz interneta ugotovite, kako ga nastaviti. izvorne kode so gnu gpl v2 z licenco za dedovanje.

izvorna koda sledi konvenciji, ki jo priporoča v-usb, lahko prenesete izvorni paket vusbtiny.tgz in ga odjavite v imenik projekta. v vašem izvornem imeniku je main.c, ki je moja različica spremenjenega programerja usbtiny. in podimenik usbdrv, ki vsebuje plast v-usb. pri gradnji tega upoštevajte pogoje licenciranja za zgornja dva projekta. moj vir logike programerja temelji na različici Dicka Streeflanda in ne na verziji ladyada (čeprav sta skoraj enaki).

za tiste, ki nimajo sestavljene preveč verige, lahko uporabite naslednjo binarno datoteko

kliknite za prenos vusbtiny.hex

in uporabite avrdude za utripanje vdelane programske opreme

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

(če je vaša naprava drobna85, zamenjajte -p t45 w/ -p t85)

vir lahko prenesete tukaj kliknite za prenos vusbtiny.tgz

odstranite izvorni paket v delovni imenik

tar -zxvf vusbtiny.tgz

* naredite cd vsubtiny, da spremenite v delovni imenik vusbtiny * prilagodite datoteko make za ciljno napravo glede na čip, ki ga boste uporabljali. PROGRAMMER_MCU = t45 ali t85 * naredi make * priloži svojega najljubšega programerja ponudnika internetnih storitev * spremeni datoteko make in po potrebi spremeni parametre avrdude. založnik predpostavlja programer USBTiny. AVRDUDE_PROGRAMMERID = uporabniška programska oprema flash flash preko make install

po utripanju vdelane programske opreme moramo pravilno nastaviti varovalko, v tem projektu uporabljamo ponastavitev pin 1 kot io

* ura ppl, kot jo zahteva plast v-usb za časovni razpored usb * ponastavljen pin je onemogočen, saj ga moramo uporabiti kot io

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

ta nastavitev onemogoči nadaljnje programiranje prek 5V SPI, saj za io potrebujemo pin RESET (pin1). za obnovitev varovalke boste potrebovali dostop do programerja HVSP.

3. korak: uporaba in uporaba

Uporaba in uporaba
Uporaba in uporaba
Uporaba in uporaba
Uporaba in uporaba
Uporaba in uporaba
Uporaba in uporaba

neposredno utripanje na plošči

če uporabljate vusbtiny za utripanje 8 -polnih naprav AVR, lahko preprosto pritisnete ciljno napravo na vrh naprave za programiranje. programer je bil zasnovan tako, da se programski zatiči ujemajo s cilji. obstaja pa ena zvijača, na igrišču za programiranje mcu boste morali izolirati nožici 2 in 3, saj gre za USB D+ in D- priključke, ki se povežejo z računalnikom. Za to uporabljam rez škotskega traku, kar lahko vidite na fotografijah. na spodnji sliki je tiny13v "jahanje" na tiny45, pripravljeno za sprejem vdelane programske opreme.

ISP utripa prek mostička

za programiranje ciljnega vezja prek ponudnika internetnih storitev (programiranje v sistemu) potrebujete kabel ponudnika internetnih storitev. tukaj ne uporabljam standardnih 2x3 ali 2x5 pinskih glav. namesto tega uporabljam mostiček 1x6, ki je bolj prijazen do plošče, lahko sestavite glavo 2x3 ali 2x5, tako da jih preslikate v J2, kot je prikazano na postavitvi in shemi matične plošče. naslednja fotografija prikazuje drobnega 2313, pripravljenega za bliskanje prek ponudnika internetnih storitev.

odpravljanje težav

* ne morem utripati vdelane programske opreme? preverite svojega prvotnega programerja, morda boste morali prilagoditi čas preko zastavice -B v avrdude. poskusite najprej prebrati čip, morda je slaba varovalka, morda vaš čip potrebuje signal zunanje ure. Morda boste morali svoj čip popraviti na privzeto 1. mesto. * preverite povezave * če uporabljate druge io zatiče, preverite kodo in povezave * lahko zamenjate zener diode z vrstami 500mw, 400mw * lahko poskusite zmanjšati vrednost R3 na 1,2K ali manj * večja je verjetnost, da boste naleteli na težave s časom avrdude, poskusite -B zastavica avrdude, imejte krajši kabel USB vse pomaga

Priporočena: