Sadržaj:

Okruženje za razvoj geta: 5 koraka
Okruženje za razvoj geta: 5 koraka

Video: Okruženje za razvoj geta: 5 koraka

Video: Okruženje za razvoj geta: 5 koraka
Video: ТЛЯ БОИТСЯ ЭТОГО СИЛЬНЕЕ ОГНЯ! Супер Лучшее Средство от Тли Без Химии! 2024, Juli
Anonim
Okruženje za razvoj geta
Okruženje za razvoj geta

Malo prije sam objavio brzu i prljavu "el cheapo" metodu za početak programiranja čipova Atmel AVR serije: Ghetto Programmer (verzija 1.0) Od tada sam vampirao, ponovo vampirao i na drugi način poboljšavao svoja podešavanja. Mislio sam da bi bilo lijepo to dokumentirati. Cilj je bio dobiti fleksibilno, kompaktno, prenosivo, okruženje za izradu protokola za mikrokontrolere zasnovano na AVR-u. Jeftino (ish). Dakle, bez odlaganja, evo Ghetto Development Environment (GDE) (verzija 1.2).

Korak 1: Komplet

The Kit
The Kit

Osnovni komplet sadrži sljedeće: USB programator. Zato što želite da možete programirati mikrokontrolere sa svog laptopa bilo gde. I zato što je USB vrlo zgodan izvor +5v. Programiranje postolja. Jedan za svaku vrstu čipa s kojim se igrate. Za mene to znači jedan sa 8 pinova (ATtiny13, 15), jedan sa 20 pinova (ATtiny 2313) i jedan sa 28 pinova (ATmega8). Blinkenlights. Kada nešto nije u redu s vašim kodom, ništa ga ne briše kao ubacivanje svjetala za postavljanje dijagnoze. Osim toga, LED blinker program je "Hello World" mikrokontrolera. Brboard. Na kraju krajeva, to je razvojni komplet.

Korak 2: USB programator

USB programator
USB programator
USB programator
USB programator

U Ghetto Programmer -u (v.1.0) koristio sam paralelni programer portova. Odlično je jer je jednostavno, jeftino i brzo. Ali moj laptop nema paralelni port. Malo sam se igrao sa izradom programera za serijske portove, ali iskreno, oni su jednako komplicirani kao i USB verzija, pa čak i serijski portovi postaju rijetki. Zaista, moj laptop zaista ima samo USB. Dakle, USB je. Gledajući unaokolo, programer USBTiny je prilično jednostavan i radi s besplatnim GNU/AVR-GCC alatima. Učinite to sami ili kupite komplet? Način „uradi sam“je dobar ako već možete programirati ATTiny2313 (sa paralelnim programatorom) i imati kristal od 12 MHz. USBTiny Page izlaže osnove. On završava kabl za programiranje paralelnim portom, ali ja bih ga završio ako počnem iznova. (Zašto? Zato što je to standardno.) Evo njegovih ispisa i provjerite raspored kabela na donjoj slici. PD3 - MISOPD5 - ResetPD6 - SCKPD7 - MOSIIAko sami napravite, učite iz mog iskustva i stavite je u lijepu plastičnu kutiju. Ako to ne učinite, na kraju će propasti kada se kristal od 12 MHz odvoji. Zato sada koristim … Brz i elegantan način je Ladyadin USBtinyISP komplet. Vratiće vam 22 USD, ali dobićete lepu PCB, unapred programiranu ATTiny2313, i čistu kutiju sa lepim kablovima. Sirovi dijelovi ionako koštaju 15-16 USD i ne morate pozivati Digikey, a zatim brinuti o programiranju vlastitog 2313. Spajanje je potrebno 30 minuta - 1 sat. Splurge. Vjeruj mi. (Bez pripadnosti, zadovoljan kupac) I upravo sam vidio ovu vezu: Ladyadin AVR vodič koji mi se čini prilično dobar. (I imajte na umu da Ladyadin dizajn i originalni USBTiny koriste različite kodove identifikatora USB proizvoda-morat ćete pronaći nizove ID-a i ponovno sastaviti avrGCC ako se prebacujete između njih. Mislim da postoje upute na odgovarajućim web stranicama.)

U slučaju da koristite Ubuntu Linux sistem i koristite USBTiny programer, evo naredbi koje će pokrenuti cijeli lanac alata: sudo apt-get install build-essential avr-libc binutils-avr gcc-avr avrdude (testirano na Hardy Heron-u) Ako imate AMD64 luk, možda će vam trebati i: byacc libusb-dev flex bison libc6-devand, a zatim ručno kompajlirati 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 ## Zakrpa potrebna za AMD64: wget https://savannah.nongnu.org/patch/download.php?file_id=14754 zakrpa -p1 <avrdude -5.5.usbtiny.64bit.patch./configure make && make install sudo avrdude -p attiny2313 -c usbtiny ## za testiranje) Ako vidite nešto poput "avrdude: AVR uređaj inicijaliziran i spreman za prihvaćanje uputa", tada ćete ponovo urađeno. O da, i svaka čast Wendel Oskay za dijagram standardnih programatora.

Korak 3: Podloga za programiranje

Kolevka za programiranje
Kolevka za programiranje
Kolevka za programiranje
Kolevka za programiranje
Kolevka za programiranje
Kolevka za programiranje

U Ghetto Programmer v.1.0 koristio sam ležište za programiranje sa nestandardnim pin ulazom i sa ženskim pin-headerima za umetanje stvari. Nestandardni pinovi su loša ideja jer nećete moći koristiti postolje s tuđim programerom, i obrnuto. Ženski pin-headeri bili su zabavni jer ste u njih mogli direktno priključiti LED diode, ali kad bih počeo raditi nešto složenije, svejedno bih ih ožičio. S novom kolijevkom izrezao sam posrednika. Manje ručnog ožičenja = bolje. Ali najveća prednost ovog dizajna ležišta je to što možete ukopčati postolje gotovo bilo gdje gdje možete priključiti AVR čip. Ovo se pokazalo ogromnim. Umjesto da dizajnirate ISP krugove u svom robotu ili šta već, samo umetnite ovu kolijevku u IC utičnicu. Tada možete programirati/ponovo programirati mozak vašeg robota u krugu. Kada završite s razvojem, priključite AVR direktno u računalo i prelazite na sljedeći. Izrada postolja je dovoljno jednostavna-sve što trebate učiniti je spojiti pinove sa 6-pinskog zaglavlja na prava mjesta na čips. Ovaj put sam koristio gravirane PCB -e. Isto tako možete i ručno ožičiti cijelu stvar na perfboard-u. Postolje ATTiny13/15 izrađeno je s 8-polnom utičnicom za umotavanje žice. Obožavam ovo. Čip je lako umetnuti u njegove lijepe okrugle rupe, a duge noge pružaju dodatni razmak na ploči. Ručno sam napravio tragove PCB -a sa Sharpiem. Nosač ATTiny2313 napravljen je pomoću metode prenosa tonera za papir Eagle i laserskog papira. Nisam mogao pronaći nijednu 20-polnu utičnicu za umotavanje pa sam morao pribjeći uobičajenoj 20-polnoj utičnici lemljenoj na 2 10-iglična zaglavlja. Ovo završava kolijevkom s kraćim nogama, ali funkcionira. Shema i PDF koje sam koristio za kolo su dolje. Na oba, morao sam ručno ožičiti dodatnu liniju. Takav je život.

Korak 4: Blinkenlights

Blinkenlights
Blinkenlights
Blinkenlights
Blinkenlights

Sama jednostavnost. Ne bih ih uopće spominjao da nisu tako prokleto zgodni.

Lemite otpornik (150-220 ohma je dobra vrijednost.) Ravno na negativni vod nekih LED dioda. Svetliće sa približno 2v-6v bez sagorevanja. Otpornik vam pomaže da zapamtite koja je strana negativna. Zalijepite ih gdje god želite da znate da ima struje. Otkrijte je li tranzistor pregorio. Pretvorite nicad bateriju u dugotrajno noćno svjetlo. Koristite sučelje treptavog koda za čitanje vrijednosti iz vašeg mikroprocesora (polako). Ili ih napravite 8 i dobit ćete jednobajtni ekran (plus aktivni sastojak u Cylon očima.) Napravite ih. Napravi ih mnogo. Napravite ih sada.

Korak 5: Kraj

Kraj
Kraj

Tako da ovaj "sistem" zadovoljava gotovo sve moje razvojne potrebe. Modularna je, skalabilna, kompaktna i prenosiva.

Na primjer, razradio sam rutine za pokretanje pomicanja poruka na četveroznamenkastom ekranu (uvodna stranica) u avionu na putu za vjenčanje prijatelja. Pravi dobar ledolomac sa stjuardesama. Ovaj potientiometar -> ADC -> PWM -postavljen ampermetar postavljen je na matičnu ploču, kodiran i u potpunosti uklonjen pogreške između mog kauča i stola za blagovanje i čisti se za otprilike 2 minute kad prijatelji dođu. (To je dio postavljanja alarma za dio onoga što će biti mjerač vremena.) Postavku ponekad ponesem na posao kad mi se prohtje. Dodajte malu vrećicu poslastica (neki kondenzatori i otpornici, spojna žica, tranzistori, piezo zvučnici, fotodiode, mikrofoni, mali motori itd.) I bit ćete toliko ispred MacGuyvera da nije ni smiješno.

Preporučuje se: