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, Srpanj
Anonim
Okruženje za razvoj geta
Okruženje za razvoj geta

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

Korak 1: Komplet

Komplet
Komplet

Osnovni komplet sadrži sljedeće materijale: USB programator. Zato što želite programirati mikrokontrolere sa svog prijenosnog računala bilo gdje. A budući da je USB vrlo zgodan izvor +5v. Programiranje kolijevki. Jedan za svaku vrstu čipa s kojim se igrate. Za mene to znači jedan s 8 pinova (ATtiny13, 15), jedan s 20 pinova (ATtiny 2313) i jedan s 28 pinova (ATmega8). Blinkenlights. Kad 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. To je ipak razvojni komplet.

Korak 2: USB programator

USB programator
USB programator
USB programator
USB programator

U programu Ghetto Programmer (v.1.0) koristio sam paralelni programer portova. Super je jer je jednostavno, jeftino i brzo. Ali moje prijenosno računalo nema paralelni priključak. 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, moje prijenosno računalo zapravo ima samo USB. Dakle, to je USB. Gledajući unaokolo, programer USBTiny prilično je jednostavan i radi s besplatnim alatima GNU/AVR-GCC. Učinite to sami ili kupite komplet? Način "uradi sam" je dobar ako već možete programirati ATTiny2313 (s paralelnim programatorom) i imati kristal od 12 MHz. USBTiny Page izlaže osnove. On završava programski kabel s paralelnim portom, ali ja bih ga dovršio u standardnom 6-pinskom zaglavlju da sam počeo 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 kad se kristal od 12 MHz odvoji. Zato sada koristim … Brz i elegantan način je Ladyadin USBtinyISP komplet. Vratit će vam 22 USD, ali dobit ćete lijepu PCB, unaprijed programiranu ATTiny2313 i čistu kutiju s lijepim kabelima. Sirovi dijelovi ionako su 15 do 16 USD i ne morate pozivati Digikey, a zatim se brinuti o programiranju vlastitog 2313. Spajanje je potrebno 30 minuta - 1 sat. Razmetanje. 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 izvorni USBTiny koriste različite kodove za identifikaciju USB proizvoda-morat ćete pronaći ID nizove 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 sustav i koristite programer USBTiny, evo naredbi koje će pokrenuti cijeli niz 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 sastaviti 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 ponovno učinjeno. O da, i svaka čast Wendelu Oskayu za dijagram standardnih ispisa programatora.

Korak 3: Poklopac za programiranje

Kolijevka za programiranje
Kolijevka za programiranje
Kolijevka za programiranje
Kolijevka za programiranje
Kolijevka za programiranje
Kolijevka za programiranje

U Ghetto Programmer v.1.0 koristio sam programsku kolijevku s nestandardnim pin ulazom i ženskim pin-headerima za umetanje stvari. Nestandardni pinovi su loša ideja jer nećete moći koristiti svoju kolijevku s tuđim programerom, i obrnuto. Ženski pin-headeri bili su zabavni jer ste mogli izravno uključiti LED diode u njih, 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 u tome što možete priključiti postolje gotovo svugdje gdje možete priključiti AVR čip. Ovo se pokazalo ogromnim. Umjesto da dizajnirate ISP krugove u svom robotu ili što već, samo umetnite ovu kolijevku u IC utičnicu. Tada možete programirati/ponovno programirati mozak vašeg robota u krugu. Kad završite s razvojem, priključite AVR izravno 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. Možete isto tako dobro ožičiti cijelu stvar na perfboard-u. Postolje ATTiny13/15 izrađeno je s 8-polnom utičnicom za umotavanje žice. Volim ove. Č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 izrađen je pomoću metode prijenosa tonera Eagle i laserskog papira. Nisam mogao pronaći nijednu 20-polnu utičnicu za omatanje pa sam morao pribjeći uobičajenoj 20-polnoj utičnici lemljenoj na 2 10-pinska zaglavlja. Ovo završava kolijevkom s kraćim nogama, ali radi. Shema i PDF koje sam koristio za krug su u nastavku. Na oba sam morao ručno ožičiti dodatnu liniju. Takav je život.

Korak 4: Blinkenlights

Blinkenlights
Blinkenlights
Blinkenlights
Blinkenlights

Sama jednostavnost. Ove uopće ne bih spominjao da nisu tako prokleto zgodni.

Lemite otpornik (150-220 ohma je dobra vrijednost.) Ravno na negativni vod nekih LED dioda. Svijetlit će s približno 2v-6v bez izgaranja. I 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 zaslon (plus aktivni sastojak u Cylon očima.) Napravite ih. Napravite mnoge. Napravite ih sada.

Korak 5: Kraj

Kraj
Kraj

Dakle, ovaj "sustav" zadovoljava gotovo sve moje razvojne potrebe. Modularan je, skalabilan, kompaktan i prenosiv.

Na primjer, razradio sam rutine za pokretanje pomicanja poruka na četveroznamenkastom zaslonu (uvodna stranica) u avionu na putu za vjenčanje prijatelja. Čini dobar ledolomac sa stjuardesama. Ovaj način postavljanja ampermetra na potientiometru -> ADC -> PWM -om postavljen je na matičnu ploču, kodiran i potpuno uklonjen pogreškom između mog kauča i stola za blagovanje i čisti se za otprilike 2 minute kad dođu prijatelji. (To je dio podešavanja vremena alarma onoga što će biti mjerač sata.) Postavku ponekad ponesem na posao kad mi se zaželi igrati. Dodajte malu vrećicu dobrota (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čeni: