Sisällysluettelo:

VUSBTiny AVR SPI -ohjelmoija: 3 vaihetta
VUSBTiny AVR SPI -ohjelmoija: 3 vaihetta

Video: VUSBTiny AVR SPI -ohjelmoija: 3 vaihetta

Video: VUSBTiny AVR SPI -ohjelmoija: 3 vaihetta
Video: AVR SPI bus test. 2024, Marraskuu
Anonim
VUSBTiny AVR SPI -ohjelmoija
VUSBTiny AVR SPI -ohjelmoija

Kun olin tehnyt usbtiny -isp -ohjelmoijan ja käyttänyt sitä 6 kuukautta, etsin toisen tekemistä kuljetettavaksi. Pidän usbtiny -isp -mallin yksinkertaisuudesta, mutta haluaisin tehdä siitä vielä pienemmän ja ottaa vähemmän osia. yksi asia alkuperäisessä suunnittelussa, jonka haluan muuttaa, on poistaa kellokristallin käyttö. Yksi ratkaisu, jonka löysin, on, että v-usb-ajurit tukevat 16,5 MHz: n sisäistä oskillaattoria attiny25/45/85-laitteissa. joten aloitan tämän projektin saadakseni usbtiny isp: n v-usb: n USB-viestintään. välitön hyöty on se, että se säästää tilaa ja sisältää vähemmän komponentteja (ei enää kiteitä). usbtiny-kuvaus osoitteesta https://www.xs4all.nl/~dicks/avr/usbtiny/ USBtiny on USB-nopeuden ohjelmistototeutus protokolla Atmel ATtiny -mikro -ohjaimille. Tietenkin se toimii myös ATmega -sarjassa. Ohjelmisto on kirjoitettu AVR: lle, jonka kellotaajuus on 12 MHz. Tällä taajuudella jokainen USB -väylän bitti kestää 8 kellojaksoa, ja paljon temppuja käyttämällä on mahdollista purkaa ja koodata USB -aaltomuotoja ohjelmiston avulla. USB -ohjain tarvitsee noin 1250–1 350 tavua flash -tilaa (lukuun ottamatta valinnaisia tunnistusmerkkijonoja) kokoonpanosta ja kääntäjäversiosta riippuen sekä 46 tavua RAM -muistia (ei pinotilaa). C-käyttöliittymä koostuu 3-5 toiminnosta kokoonpanosta riippuen. Nevb-kuvaus https://www.obdev.at/products/vusb/ AVR -mikrokontrollerit mahdollistavat USB -laitteiston rakentamisen lähes minkä tahansa AVR -mikrokontrollerin kanssa ilman lisä sirua. Video rakentamisesta ja käytöstä

Vaihe 1: Ominaisuudet ja osat

Ominaisuudet ja osat
Ominaisuudet ja osat

* ohjelmointilogiikka usbtiny isp: ltä, kypsä avr-dude-tuki * pieni jalanjälki * minimaaliset komponentit * tehot kohdelaite Huomaa, että kohde-icus-linjat eivät ole suojattuja. voit lisätä 1k-2k vastuksia SCK- ja MOSI-laitteisiin ja suojautua mahdollisilta vääriltä yhteysviitteiltä, jotka perustuvat v-usb-sivustolta löytyviin töihin https://www.obdev.at/vusb/ usbtiny isp https://www.xs4all. nl/~ dicks/avr/usbtiny/osaluettelo * attiny45/85 (85 on helpompi saada) * 3,6 V: n zener -diodit (1n747, BZX79,..vältä 1 W: n tyypit) * 68 ohmin vastus x 2 * 1,5 K: n vastus * mini leipälauta 170 sidontapistettä * usb -kaapeli (dollarikauppa -usb -tulostinkaapeli on kunnossa) * 1k/2k vastukset io -linjojen suojaukseen (valinnainen) tarvittavat työkalut * toimiva avr -ohjelmoija (kyllä, se on saalis22, tarvitsemme sellaisen tehdäksemme) * toimiva avr -ohjelmointiympäristö

Vaihe 2: Leipälevyn asettelu, kaavio ja rakenne

Leipälevyn asettelu, kaavio ja rakentaminen
Leipälevyn asettelu, kaavio ja rakentaminen
Leipälevyn asettelu, kaavio ja rakentaminen
Leipälevyn asettelu, kaavio ja rakentaminen

rakentaminen

* Noudata leipälevyn asettelua, siinä ei ole komponentteja, 3 vastusta, 2 diodia, 1 korkki ja 8 -nastainen mcu. * saat dollarin myymälän USB -tulostinkaapelin, joka katkaisee tulostimen pään, siellä on 4 paljastettua lankaa, kiinnitä ja tee niistä 4 -napainen urosliitin, käytämme sitä liittämiseen leipälautaan. katso kaaviota asettelusta ja nastan osoittamisesta (J1). * varo diodin napaisuutta.

rakentaa ja vilkaista projektia

projekti rakennettiin linux ubuntu lucid -laatikkoon avr-gcc-työkaluketjun avulla. oletetaan, että sinulla on jo tällainen ympäristö, tai voit selvittää Internetistä, miten se asennetaan. lähdekoodit ovat gnu gpl v2, jotka on lisensoitu perinnöstä.

lähdekoodi noudattaa v-usb: n suosittelemaa käytäntöä, voit ladata lähdepaketin vusbtiny.tgz ilman tähtiä projektihakemistoon. lähdehakemistossasi on main.c, joka on minun versioni modifioidusta usbtiny -ohjelmoijasta. ja usbdrv-alihakemisto, joka sisältää v-usb-kerroksen. Noudata edellä mainittujen kahden hankkeen lisenssiehtoja tätä rakennettaessa. Lähteeni ohjelmoijalogiikasta perustuu Dick Streefland -versioon eikä ladyada -versioon (vaikka ne ovat melkein samat).

Niille, joilla ei ole liikaa ketjua, voit käyttää seuraavaa binaaria

Lataa vusbtiny.hex napsauttamalla

ja käytä avrdudea laiteohjelmiston päivittämiseen

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

(jos laitteesi on pieni85, vaihda -p t45 w/ -p t85)

Lähde voidaan ladata täältä napsauttamalla ladataksesi vusbtiny.tgz

poista lähdepaketin tähti työhakemistoosi

tar -zxvf vusbtiny.tgz

* tee cd vsubtiny, vaihtaaksesi vusbtiny -työhakemistoon * ajust makefile kohdelaitteelle käyttämäsi sirun mukaan. eli PROGRAMMER_MCU = t45 tai t85 * tee merkki * liitä suosikki Internet -palveluntarjoajasi * muokkaa makefileä ja muuta tarvittaessa avrdude -parametrejasi. varastossa oletetaan USBTiny -ohjelmoija. eli AVRDUDE_PROGRAMMERID = usbtiny * flash -laiteohjelmisto make -asennuksen kautta

laiteohjelmiston vilkkumisen jälkeen meidän on asetettava sulake oikein, käytämme tässä projektissa nastan 1 nollausta io: na

* ppl-kelloa käytetään v-usb-kerroksen vaatimalla tavalla USB-ajoitukseen * nollaustappi poistettu käytöstä, koska meidän on käytettävä sitä io: na

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

tämä asetus poistaa käytöstä lisäohjelmoinnin 5V SPI: n kautta, koska tarvitsemme RESET -nastan (pin1) io: lle. Tarvitset pääsyn HVSP -ohjelmoijaan sulakkeen palauttamiseksi.

Vaihe 3: Käyttö ja sovellus

Käyttö ja sovellus
Käyttö ja sovellus
Käyttö ja sovellus
Käyttö ja sovellus
Käyttö ja sovellus
Käyttö ja sovellus

vilkkuu suoraan leipätaululla

jos käytät vusbtinyä 8 -nastaisten AVR -laitteiden salamaan, voit painaa kohdelaitetta ohjelmointilaitteen päällä. ohjelmoija oli suunniteltu siten, että ohjelmointinapit vastaavat tavoitteita. On kuitenkin yksi temppu, sinun on eristettävä nastat 2 ja 3 ohjelmoijan mcu: sta, koska ne ovat tietokoneeseen liitettäviä USB D+- ja D-nastoja. Käytän leikkausnauhaa tämän saavuttamiseksi, näet sen valokuvissa. alla oleva esitys on tiny13v: n "ratsastus" tiny45: llä, valmis vastaanottamaan laiteohjelmiston.

ISP vilkkuu hyppyjohtimen kautta

jos haluat ohjelmoida kohdepiirin ISP: n kautta (järjestelmän sisäinen ohjelmointi), tarvitset ISP-kaapelin. tässä en käytä tavallisia 2x3- tai 2x5 -nastaisia otsikoita. Sen sijaan käytän 1x6 -hyppyjoukkoa, joka on leipälautaystävällisempi, voit tehdä 2x3- tai 2x5 -nastaisen otsikon yhdistämällä ne J2: ksi leipätaulun asettelun ja kaavioiden mukaisesti. seuraavassa kuvassa on pieni2313, joka on valmis salamaan Internet -palveluntarjoajan kautta.

ongelmien karttoittaminen

* Etkö voi päivittää laiteohjelmistoa? tarkista alkuperäinen ohjelmoijasi, joudut ehkä säätämään ajoitusta -B -lipun avulla avrdudessa. yritä lukea siru 1, voi olla huono sulake, voi olla, että siru tarvitsee ulkoisen kellosignaalin. sinun on ehkä korjattava sirusi takaisin oletusarvoon 1. * tarkista yhteydet * jos käytät erilaisia io -nastoja, tarkista koodi ja liitännät * voit korvata zener -diodit, joiden teho on 500 mw, 400 mw * voit yrittää pienentää R3 -arvon 1,2 kt: aan tai vähemmän * kohtaat todennäköisemmin avrdude -ajoitusongelmia, kokeile -B lippu avrdude, on lyhyempi USB -kaapeli auttaa

Suositeltava: