Kazalo:

Razvojno okolje geta: 5 korakov
Razvojno okolje geta: 5 korakov

Video: Razvojno okolje geta: 5 korakov

Video: Razvojno okolje geta: 5 korakov
Video: Какого числа от 1 до 31, родился человек, такая у него и вся жизнь 2024, Julij
Anonim
Razvojno okolje geta
Razvojno okolje geta

Nekaj časa nazaj sem objavil hiter in umazan način "el cheapo", s katerim sem začel programirati čipe serije Atmel AVR: Ghetto Programmer (različica 1.0) Od takrat sem vampiral, ponovno vampiral in drugače izboljšal nastavitve. Zdelo se mi je, da bi bilo lepo dokumentirati. Cilj je bil dobiti prilagodljivo, kompaktno, prenosno okolje za prototipiranje mikrokrmilnikov, ki temelji na AVR. Poceni (ish). Torej, brez odlašanja, tukaj je Ghetto Development Environment (GDE) (različica 1.2).

1. korak: Komplet

Komplet
Komplet

Osnovni komplet vsebuje naslednje materiale: USB programer. Ker želite programirati mikrokrmilnike iz prenosnega računalnika kjer koli. In ker je USB zelo priročen vir +5v. Zibelke za programiranje. En za vsako vrsto čipa, s katerim se igrate. Zame to pomeni enega z 8 zatiči (ATtiny13, 15), enega z 20 zatiči (ATtiny 2313) in enega z 28 zatiči (ATmega8). Utripajoče luči. Ko je s kodo nekaj narobe, je nič ne razčisti, kot prižiganje luči za diagnozo. Poleg tega je program za utripanje LED "Hello World" mikrokrmilnikov. Konec koncev je to razvojni komplet.

2. korak: USB programer

USB programer
USB programer
USB programer
USB programer

V Ghetto Programmer (v.1.0) sem uporabil programer za vzporedna vrata. Odlično je, ker je preprosto, poceni in hitro. Toda moj prenosni računalnik nima vzporednih vrat. Nekaj časa sem se poigraval z izdelovalci programov za serijska vrata, a po pravici povedano, so prav tako zapleteni, kot je različica USB in celo serijska vrata postajajo redka. Dejansko ima moj prenosnik res samo USB. USB je torej. Če pogledamo okoli, je programer USBTiny precej preprost in deluje z brezplačnimi orodji GNU/AVR-GCC. Naredite sami ali kupite komplet? Način »naredi sam« je dober, če že lahko programirate ATTiny2313 (z vzporednim programerjem) in imate okrog sebe kristal 12MHz. USBTiny Page opisuje osnove. Programski kabel zaključi z vzporednimi vrati, vendar bi ga končal v standardnem 6-pinskem glavi, če bi začel na novo. (Zakaj? Ker je to standardno.) Tu so njegovi pin-outi in poglejte spodnjo sliko za postavitev kabla. PD3 - MISOPD5 - PonastavitevPD6 - SCKPD7 - MOSIIČe naredite svojega, se učite iz mojih izkušenj in ga vstavite v lepo plastično škatlo. Če tega ne storite, bo sčasoma propadel, ko se odcepi 12MHz kristal. Zato zdaj uporabljam … Hiter in eleganten način je Ladyadin USBtinyISP komplet. To vam bo povrnilo 22 USD, vendar dobite lepo tiskano vezje, vnaprej programirano ATTiny2313 in čisto škatlo z lepimi kabli. Surovi deli so tako ali tako vredni 15-16 USD, zato vam ni treba poklicati Digikeyja in nato skrbeti za programiranje lastnega 2313. Spajanje traja 30 minut - 1 uro. Splurge. Zaupaj mi. (Brez povezave, zadovoljna stranka) In pravkar sem videl to povezavo: Ladyadin AVR vadnik, ki se mi zdi precej dober. (Upoštevajte, da Ladyadin dizajn in izvirni USBTiny uporabljata različne kode za identifikacijo izdelka USB-poiskati morate niz ID-ja in znova sestaviti avrGCC, če preklapljate med tema dvema. Mislim, da so na ustreznih spletnih straneh navodila.)

V primeru, da uporabljate sistem Ubuntu Linux in uporabljate programer USBTiny, so tukaj ukazi, ki bodo zagonili celotno orodno verigo: sudo apt-get install build-bistven avr-libc binutils-avr gcc-avr avrdude (preizkušeno na Hardy Heron) Če imate lok AMD64, boste morda potrebovali tudi: byacc libusb-dev flex bison libc6-devand, nato pa ročno sestavite AVRdude: (wget https://download.savannah.gnu.org/releases/avrdude/ avrdude-5.5.tar.gz tar xvzf avrdude-5.5.tar.gz cd avrdude-5.5 ## Za AMD64 je potreben popravek: wget https://savannah.nongnu.org/patch/download.php?file_id=14754 popravek -p1 <avrdude -5.5.usbtiny.64bit.patch./configure make && make install sudo avrdude -p attiny2313 -c usbtiny ## to test) Če vidite nekaj takega kot "avrdude: AVR naprava inicializirana in pripravljena sprejeti navodila", potem ponovljeno. Oh ja, in zahvala Wendel Oskay za diagram standardnih izpisov programerja.

3. korak: zibelka za programiranje

Zibelka za programiranje
Zibelka za programiranje
Zibelka za programiranje
Zibelka za programiranje
Zibelka za programiranje
Zibelka za programiranje

V Ghetto Programmer v.1.0 sem uporabil programsko držalo z nestandardnim vhodom za pin in z ženskimi glavami pin, v katere sem vtaknil stvari. Nestandardni zatiči so slaba ideja, ker zibelke ne boste mogli uporabljati s programerjem nekoga drugega in obratno. Ženski pin-headeri so bili zabavni, ker ste lahko vanje neposredno priklopili LED-diode, ko pa bi začel delati kaj bolj zapletenega, bi ga vseeno povezal na mizo. Z novo zibelko sem izrezal posrednika. Manj ročnega ožičenja = bolje. Največja prednost te zasnove zibelke pa je, da lahko zibelko priključite skoraj povsod, kjer lahko priključite čip AVR. To se izkaže za ogromno. Namesto da načrtujete vezja ponudnika internetnih storitev v svojem robotu ali karkoli drugega, preprosto vstavite to zibelko v vtičnico IC. Nato lahko programirate/ponovno programirate možgane svojega robota v vezju. Ko končate z razvojem, priključite AVR neposredno in preklopite na naslednjega. Izdelava zibelk je dovolj enostavna-vse, kar morate storiti, je, da nožice iz 6-polne glave priključite na prava mesta na čipi. Tokrat sem uporabil jedkane PCB -je. Prav tako lahko ročno ožičite celotno stvar na perfboard-u. Zibelka ATTiny13/15 je narejena z 8-polno vtičnico za ožičenje. Obožujem te. Čip je enostavno vstaviti v njegove lepe okrogle luknje, dolge noge pa zagotavljajo dodaten razmik na plošči. Prostoročno sem naredil sledi PCB -ja s Sharpiejem. Nosilec ATTiny2313 je bil izdelan z metodo prenosa tonerja Eagle in laserskega papirja. Nisem mogel najti nobenih 20-polnih vtičnic, zato sem se moral zateči k 20-polni običajni vtičnici, spajkani na 2 10-pinski glavi. To se konča z zibelko s krajšimi nogami, vendar deluje. Shema in PDF, ki sem ga uporabil za vezje, sta spodaj. Na obeh sem moral ročno ožičiti dodatno linijo. Takšno je življenje.

4. korak: Utripajoče luči

Utripajoče luči
Utripajoče luči
Utripajoče luči
Utripajoče luči

Preprostost sama. Teh sploh ne bi omenjal, če ne bi bili tako prekleto priročni.

Spajamo upor (150-220 ohmov je dobra vrednost.) Naravnost na negativni kabel nekaterih LED. Prižgal se bo pri približno 2v-6v, ne da bi zagorel. In upor vam pomaga zapomniti, katera stran je negativna. Lepite jih povsod, kjer želite vedeti, da je elektrika. Ugotovite, ali je tranzistor pregorel. Pretvorite baterijo nicad v dolgotrajno nočno luč. Z vmesnikom z utripajočo kodo (počasi) preberite vrednosti iz svojega mikroprocesorja. Ali pa jih naredite 8 in dobili boste enobajtni zaslon (skupaj z aktivno sestavino v Cylonovih očeh.) Naredite jih. Naredi jih veliko. Naredite jih zdaj.

5. korak: Konec

Konec
Konec

Tako ta "sistem" izpolnjuje skoraj vse moje razvojne potrebe. Je modularna, prilagodljiva, kompaktna in prenosna.

Na primer, razvil sem rutine za izvajanje pomikajočih se sporočil na 4-mestnem zaslonu (uvodna stran) na letalu na poti do poroke prijatelja. Od stevardes je dober ledolomec. Ta potientiometer -> ADC -> Nastavitev ampermetra s PWM pogonom je bila izdelana na krovu, kodirana in v celoti odpravljena med mojim kavčem in jedilno mizo ter očiščena v 2 minutah, ko pridejo prijatelji. (To je del nastavitve časa za alarm, kaj bo merilna ura.) Včasih nastavitev nastavim na delo, ko se mi zdi, da se hokej igram. Dodajte majhno vrečko dobrot (nekaj kondenzatorjev in uporov, priključna žica, tranzistorji, piezo zvočnik, fotodiode, mikrofoni, majhni motorji itd.) In tako daleč boste pred MacGuyverjem, niti ni smešno.

Priporočena: