Taula de continguts:

Entorn de desenvolupament del gueto: 5 passos
Entorn de desenvolupament del gueto: 5 passos

Vídeo: Entorn de desenvolupament del gueto: 5 passos

Vídeo: Entorn de desenvolupament del gueto: 5 passos
Vídeo: Алан де Боттон: Добрая, мягкая философия успеха 2024, Desembre
Anonim
Entorn de desenvolupament de guetos
Entorn de desenvolupament de guetos

Fa un temps, vaig publicar un mètode ràpid i brut "el cheapo" per començar a programar els xips de la sèrie Atmel AVR: Ghetto Programmer (versió 1.0). Vaig pensar que seria bo documentar-lo. L’objectiu era aconseguir un entorn de prototipatge de microcontroladors basat en AVR, flexible, compacte, portàtil, que es pugui utilitzar en qualsevol lloc. Així, sense més preàmbuls, aquí teniu el Ghetto Development Environment (GDE) (versió 1.2).

Pas 1: el kit

El kit
El kit

El kit bàsic conté els elements següents: Programador USB. Perquè voleu poder programar microcontroladors des del portàtil en qualsevol lloc. I perquè l’USB és una font molt útil de + 5 V. Programació de bressols. Un per a cada tipus de xip amb què jugueu. Per a mi, això significa un de 8 pins (ATtiny13, 15), un de 20 pins (ATtiny 2313) i un de 28 pins (ATmega8). Llums intermitents. Quan alguna cosa no funciona amb el vostre codi, res no ho aclareix com ficar llums per diagnosticar. A més, el programa LED intermitent és el "Hello World" dels microcontroladors. Taula de pa. Després de tot, és un kit de desenvolupament.

Pas 2: el programador USB

El programador USB
El programador USB
El programador USB
El programador USB

A Ghetto Programmer (v.1.0) he utilitzat un programador de ports paral·lels. És fantàstic perquè és senzill, econòmic i ràpid. Però el meu ordinador portàtil no té un port paral·lel: he jugat a fer programadors de ports sèrie una mica, però sincerament són tan complicats com la versió USB i fins i tot els ports sèrie són cada vegada més escassos. De fet, el meu portàtil només té USB. Així que USB ho és. Mirant al voltant, el programador USBTiny és bastant senzill i funciona amb les eines gratuïtes GNU / AVR-GCC. Feu-ho vosaltres mateixos o compreu un kit? La forma de bricolatge és bona si ja podeu programar un ATTiny2313 (amb programador paral·lel) i tenir un vidre de 12 MHz assegut. USBTiny Page exposa els conceptes bàsics. Acaba el cable de programació amb un port paral·lel, però ho acabaria amb una capçalera estàndard de 6 pins si començés de nou. (Per què? Perquè és estàndard.) Aquí teniu els seus pin-outs i consulteu la imatge següent per a la disposició del cable. PD3 - MISOPD5 - ResetPD6 - SCKPD7 - MOSII Si en feu el vostre, apreneu de la meva experiència i poseu-lo en una bonica caixa de plàstic. Si no ho feu, finalment fallarà quan el cristall de 12 MHz es trenqui. És per això que ara faig servir … La forma ràpida i elegant és el kit USBtinyISP de Ladyada. Us retornarà 22 dòlars, però obtindreu un bonic PCB, ATTiny2313 preprogramat i una caixa neta amb bonics cables. Les parts en brut són com 15-16 dòlars de totes maneres, i no cal que truqueu a Digikey i després us preocupeu per programar el vostre propi 2313. Triga 30 minuts a 1 hora per soldar-ho tot junt. Malbaratament. Confia en mi. (Sense afiliació, client satisfet) I acabo de veure aquest enllaç: Tutorial AVR de Ladyada que em sembla força bo. (I tingueu en compte que el disseny de Ladyada i l'USBTiny original utilitzen diferents codis d'identificació de producte USB: haurà de trobar les cadenes d'identificació i tornar a compilar avrGCC si canvieu entre les dues. Crec que hi ha instruccions a les pàgines web respectives.)

En cas que utilitzeu el sistema Ubuntu Linux i utilitzeu el programador USBTiny, aquí teniu les ordres que faran funcionar tota la cadena d’eines: sudo apt-get install build-essential avr-libc binutils-avr gcc-avr avrdude (provat) a Hardy Heron) Si teniu un arc AMD64, és possible que també necessiteu: byacc libusb-dev flex bison libc6-devand i després compilar AVRdude a mà: (wget https://download.savannah.gnu.org/releases/avrdude/ avrdude-5.5.tar.gz tar xvzf avrdude-5.5.tar.gz cd avrdude-5.5 ## Patch necessari per a AMD64: wget https://savannah.nongnu.org/patch/download.php?file_id=14754 patch -p1 <avrdude-5.5.usbtiny.64bit.patch./configure make && make install sudo avrdude -p attiny2313 -c usbtiny ## per provar) Si veieu alguna cosa com "avrdude: Dispositiu AVR inicialitzat i llest per acceptar instruccions", llavors " s'ha acabat. Ah, sí, i agraïu a Wendel Oskay el diagrama dels pinouts del programador estàndard.

Pas 3: el bressol de programació

El bressol de programació
El bressol de programació
El bressol de programació
El bressol de programació
El bressol de programació
El bressol de programació

A Ghetto Programmer v.1.0 he utilitzat un bressol de programació amb una entrada de pin no estàndard i amb capçaleres de pin femelles per posar-hi coses. Els pins no estàndard són una mala idea perquè no podreu utilitzar el vostre bressol amb el programador d'una altra persona i viceversa. Les capçaleres femenines eren divertides perquè es podien connectar directament els LEDs, però quan començaria a fer alguna cosa més complexa, acabaria cablejant-la de totes maneres. Amb el bressol nou, vaig tallar l’intermediari. Menys cablejat manual = millor, però l’avantatge més gran d’aquest disseny de bressol és que podeu connectar el bressol gairebé on vulgueu connectar el xip AVR. Això resulta enorme. En lloc de dissenyar circuits ISP al vostre robot o qualsevol altra cosa, només heu de ficar aquesta bressol al sòcol IC. A continuació, podeu programar / tornar a programar el cervell del robot en circuit. Quan hàgiu acabat de desenvolupar-lo, connecteu l’AVR directament i passareu al següent. Fer els bressols és prou fàcil; només cal que connecteu els pins de la capçalera de 6 pins als llocs adequats de les fitxes. Aquesta vegada, he utilitzat PCB gravats. També podeu connectar-lo manualment a la taula de perfils. M'encanten aquests. És fàcil inserir el xip als seus bonics forats rodons i les potes llargues ofereixen un espai addicional a la placa. Vaig fer les traces del PCB a mà alçada amb un Sharpie. El bressol ATTiny2313 es va fer amb Eagle i el mètode de transferència de tòner de paper làser. No vaig poder trobar cap presa de corrent de 20 pins, de manera que vaig haver de recórrer a una presa normal de 20 pins soldada en 2 capçaleres de 10 pins. Això acaba amb un bressol amb potes més curtes, però funciona. A continuació es mostra l’esquema i el PDF que he utilitzat per al circuit. A les dues, vaig haver de connectar manualment una línia addicional. Així és la vida.

Pas 4: llums intermitents

Llums intermitents
Llums intermitents
Llums intermitents
Llums intermitents

Simplicitat en si mateixa. No els mencionaria en absolut si no fossin tan maleïts.

Soldeu una resistència (150-220 ohms és un bon valor) directament al cable negatiu d’alguns LED. S’il·luminarà d’uns 2v-6v sense que es cremi. I la resistència us ajuda a recordar quin costat és negatiu. Enganxeu-los allà on vulgueu saber que hi ha electricitat. Esbrineu si aquest transistor està bufat. Convertiu una bateria nicad en una llum nocturna de llarga vida. Utilitzeu una interfície de codi intermitent per llegir els valors del microprocessador (lentament). O en feu vuit i teniu una pantalla d’un byte (més el principi actiu dels ulls de Cylon). Feu-ne molts. Feu-les ara.

Pas 5: el final

El final
El final

Per tant, aquest "sistema" compleix gairebé totes les meves necessitats de desenvolupament. És modular, escalable, compacte i portàtil.

Per exemple, vaig treballar les rutines per executar missatges de desplaçament a la pantalla de 4 dígits (pàgina d'introducció) a l'avió de camí al casament d'un amic. Fa un bon trencaglaç amb els assistents de vol. Aquest potiòmetre -> ADC -> La configuració de l'amperímetre basat en PWM es va configurar, codificar i depurar completament entre el meu sofà i la meva taula de menjador i es neteja en 2 minuts quan arriben els amics. (És la part de configuració de l'hora d'alarma del que serà un rellotge de metre.) De vegades, la configuració funciona perquè tinc ganes de jugar. Afegiu una petita bossa de productes (alguns condensadors i resistències, cable connectat, transistors, altaveus piezoelèctrics, fotodíodes, micròfons, motors petits, etc.) i estareu tan per davant de MacGuyver que ni tan sols és divertit.

Recomanat: