Taula de continguts:

Navalla suïssa AVR: 14 passos (amb imatges)
Navalla suïssa AVR: 14 passos (amb imatges)

Vídeo: Navalla suïssa AVR: 14 passos (amb imatges)

Vídeo: Navalla suïssa AVR: 14 passos (amb imatges)
Vídeo: Part 1 - Around the World in 80 Days Audiobook by Jules Verne (Chs 01-14) 2024, De novembre
Anonim
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR
Navalla suïssa AVR

El ganivet suís AVR agrupa diversos projectes de programació AVR junts en una única llauna de goma Altoids. A causa de la flexibilitat que proporciona la programació de microcontroladors, també proporciona un punt de partida per a qualsevol nombre de projectes basats en LED i sortida de so. El SAK pot contenir tants programes com el 8K de memòria ho permet i manté vuit estats per a cada programa. El polsador blau fa que el SAK faci un recorregut pels programes i els estats: una premuda ràpida fa que es mantingui al programa, però canviarà al següent estat (per molt que estigui definit) i una pulsació llarga fa que passi al següent programa. El programa i els estats actuals de tots els programes es conserven a EEPROM entre usos.

Els projectes implementats actualment al SAK inclouen els següents. Aquests, juntament amb tots els altres codis i constants (hi ha una taula de tipus de lletra completa), ocupen aproximadament 4K de l’espai disponible. Molt més espai! MiniMenorah - Evil Mad Scientists Brain Machine - Mitch Altman MiniPOV - Adafruit Industries Noise Toy - Objectes forts Llums de funcionament LED Llums LED de vela LED Aquest projecte no existiria sense la considerable generositat de tothom que va contribuir d’una manera o altra. A més de l’esmentat anteriorment, vull agrair als desenvolupadors de les eines de programari utilitzades (vegeu en altres passos) i a qualsevol persona que hagi creat un lloc web útil que afavoreixi la meva comprensió d’aquests temes. Puc obtenir crèdit directe per molt poc del codi utilitzat en aquest projecte. Si creieu que el codi és vostre, pot ser que ho sigui. Feu-m'ho saber i us donaré crèdit amb molt de gust. En qualsevol cas, gràcies per la vostra contribució:-)

Pas 1: parts

Es poden obtenir peces a qualsevol proveïdor electrònic. A causa de la restricció d'espai, la majoria dels components són necessaris tal com s'indica. Tot amb prou feines encaixa; assegureu-vos que les parts substitutives no ocupin espai addicional. No substituïu l'ATtiny84 tret que estigueu absolutament segur que els pins corresponen. Els enllaços següents a DigiKey i All Electronics. Components electrònics 1 x U1 - ATtiny84 - ATTINY84-20PU-ND1 x Ux - Presa IC de 14 pines DIP - A32879-ND9 x LED - la vostra elecció de color9 x resistències: compatibles amb els vostres LEDs 2 x R1, R2 - 100 ohm 1 / 4W -1% pel·lícula metàl·lica - 100XBK-ND2 x C7, C8 - 47uF - P5151-ND Diversos Porta bateries 1-AA 6 "cables de fil) 2461K-NDPhone jack estèreo 3,5 mm (1) MJW-22 Interruptor alternador SPDT 1/4 "encès (1) MTS-4 Interruptor de botó (1) 450-1654-ND Minty Boost El SAK funciona amb una sola bateria AA impulsada per un xip Maxim MAX756 (el component essencial del MintyBoost!). Els components següents són els necessaris per a aquesta part del circuit. - 0.1uF - 399-4151-ND2 x C3, C5 - 100uF - P5152-ND1 x L1 - 22uH radial - M9985-ND1 x D1 - 1N5818 Schottky 1A 30V - 1N5818-E3 / 1GI- ND

Pas 2: microcontrolador ATtiny84

Microcontrolador ATtiny84
Microcontrolador ATtiny84

Molts projectes fan servir el microcontrolador ATtiny2313 de 20 pins o el microcontrolador ATtiny85 de 8 pins. He trobat que l'ATtiny2313 és massa gran (per al recinte) i l'ATtiny85 és massa petit (no hi ha prou memòria, no hi ha prou pins de sortida). L'ATtiny84 és correcte:-) L'ATtiny84 té 8K de memòria flash programable (suficient per contenir molts programes petits), 512K d'EEPROM (per emmagatzemar l'estat entre usos), fins a 12 pins de sortida (per als 9 LED, 2 canals de sortida d’àudio, un commutador de polsador) i molts altres elements que no s’utilitzen en aquest projecte. Si teniu previst afegir programes, obteniu una còpia del full de dades ATtiny84. Hi ha moltes guies didàctiques per aprendre a programar aquesta família de microcontroladors a Internet. Per obtenir un resum útil dels microcontroladors, vegeu Com triar un microcontrolador. Nota El projecte descrit aquí no té el MiniMenorah completament habilitat. El MM requereix nou pins de sortida, la Brain Machine dos i el botó per canviar l'estat un, per un total de dotze. Tot i que l’ATtiny84 es pot configurar per tenir dotze pins de sortida, és a costa del pin RESET. Desactivar el pin RESET i convertir-lo en E / S fa que ATtiny84 no es pugui programar amb el programador USBtinyISP (que no ho ha fet:-) i requereix programació d’alta tensió. Tot està instal·lat per habilitar el MM, però cal un programador diferent i no en tinc cap.

Pas 3: Eines de programació AVR

Eines de programació AVR
Eines de programació AVR
Eines de programació AVR
Eines de programació AVR

Per programar microcontroladors AVR són necessaris alguns components, tant de maquinari com de programari. A continuació es mostren les eines que faig servir. Molts, molts altres existeixen en el mateix rang de preus, de franc a barat. Cerqueu un conjunt que us funcioni i enganxeu-vos-hi. Millor encara, busqueu un amic que hagi elaborat un sistema i utilitzeu les seves eines. Res no és particularment difícil si tot funciona com s’anuncia, però aconseguir que totes les eines funcionin juntes pot ser un veritable repte. Els llargs passadors del porta-xips wirewrap s’estenen cap a una placa de configuració i permeten una configuració experimental convenient. L’únic problema que he trobat és que els components dels pins de programació no es poden connectar a terra durant la programació. He adoptat dos enfocaments per resoldre aquest problema. El primer és tenir dos suports de xips, un per programar i un altre per funcionar (vegeu el bressol de 8 pins). Això no és ideal, ja que fa que una gran part de la taula de treball sigui inutilitzable i és força molest moure el xip. El segon consisteix a instal·lar un petit interruptor per desconnectar el pin de terra del terra de la placa durant la programació. Funciona millor i deixa més espai a la taula de treball per als components. ProgrammerUSBtinyISP kit d'Adafruit Industries. Amb una petita modificació (traieu el cable de 10 pins i doblegueu els LED), el programador s'adapta a una llauna de goma Altoids. El cable de 6 pins fins i tot es pot enrotllar a la llauna per emmagatzemar-lo. SoftwareWinAVR és una col·lecció d’eines de desenvolupament de programari de codi obert per programar microcontroladors AVR en màquines Windows. Funciona bé amb el programador USBtinyISP (vegeu el tutorial AVR). Recentment he canviat d’utilitzar l’aplicació Bloc de notes del programador que s’inclou amb WinAVR a utilitzar Eclipse amb el connector AVR Eclipse. Eclipse pot utilitzar avrdude, de manera que haureu d'instal·lar WinAVR de totes maneres. Eclipse té una millor gestió de projectes, tutorials útils i és gratuït. Només va trigar uns minuts a instal·lar-lo, fer un tutorial i programar un xip. Telefoneu a un amic Hi ha molts recursos a Internet. Busqueu-los, demaneu ajuda. Les persones poden tenir coneixements i ser útils. Està bé:-) També poden ser desconsiderats. Això no està bé:-(

Pas 4: Programació del microcontrolador

Programació del microcontrolador
Programació del microcontrolador

Codi C No critiqueu allò que no entenc. No sóc programador, C no és el meu idioma nadiu, i estic aguantat per un fil prim de Java i moltes cerques al web quan treballo a C. Tot i que gran part del codi provenia d'altres projectes (vegeu els crèdits), Vaig haver de fer algunes addicions i modificacions. El codi font del Swiss AVR Knife s'adjunta a continuació, tant com a fitxer font c com a fitxer hexadecimal. M’agradaria saber on es podria millorar el codi. Hi ha alguns canvis que preveig fer al codi. Properes actualitzacions. Mentrestant, el codi funciona tal com s’anunciava. Els fusibles dels microcontroladors són confusos. He desactivat uns quants microcontroladors, configurant-los per accident per buscar un oscil·lador extern i desactivant el pin RESET. Es poden recuperar, però fins aleshores només són errors morts. Aneu amb compte si decidiu canviar els fusibles. Per calcular els valors dels fusibles correctes, utilitzeu una calculadora de fusibles en línia. Seleccioneu la part de destinació (ATtiny84) i la configuració adequada: oscil·lador RC intern que funciona a 8 MHz (valor per defecte), NO dividiu el rellotge per 8 internament, activeu la descàrrega de programes en sèrie i inhabiliteu la detecció de marró. El resultat ha de ser el següent. -U lfuse: w: 0xe2: m -U hfuse: w: 0xdf: m -U efuse: w: 0xff: m (baix 0xE2 alt 0xDF ext 0xFF). Només cal cremar els fusibles una vegada (tret que tingueu previst canviar-los). Eclipsi ho fa fàcil, ja que, estic segur, ho fan altres IDE. Preguntes que m’agradaria respondre Qualsevol idea sobre l’optimització del codi Per què els llums parpellejants de la màquina de so i llum provoquen una oscil·lació del to quan s’activen a la llauna, però no a la pissarra? Per què a Eclipse no li agraden les funcions lightOn i lightOff, tot i que semblen funcionar?

Pas 5: Tauler de treball del projecte

Tauler de treball del projecte
Tauler de treball del projecte
Tauler de treball del projecte
Tauler de treball del projecte

Com que gran part del treball d’aquest projecte el realitza el microcontrolador, hi ha molt poques parts externes. Després de comprovar que el vostre programador i la vostra cadena d’eines estiguin en ordre, seria una bona idea fer una panellada del circuit i assegurar-vos que tot funciona com s’anunciava. Vaig utilitzar els LEDs del model de llauna i vaig treure el bressol i el xip per utilitzar-los en diverses fotografies. El cablejat general connecta bàsicament els pins actius a unes poques parts i, a continuació, es connecta a terra. Al codi, veureu trossos de codi que cal activar o comentar en funció de si l'objectiu és el tauler de control o el PCB.

Pas 6: Preparació de la llauna de goma Altoids

Imatges al camí Emplateu la part inferior. La part inferior de la llauna es corba cap amunt i cap amunt. Cal aplanar-la perquè la bateria i la placa de circuit encaixin i quedin uniformement. Tingueu cura de no distorsionar la llauna, empenyeu la part inferior fins que quedi essencialment plana. La llauna necessita tres jocs de forats. Utilitzo un punxó metàl·lic per marcar les ubicacions dels forats i les puntes de punt (per a la fusta) per perforar els forats. Els bits de punt brut tenen un punt central i dues arestes tallants. No patinaran i les vores es tallaran lentament pel metall. Els bits de punt Brad estan disponibles a Lee Valley (entre altres llocs). El primer és un conjunt de nou forats de 5 mm a la part superior de la llauna per als LED. Hi ha disponibles bits de punt mètric mètrics que fan forats nets i ajustats per als LED. Crea una plantilla de paper amb els forats marcats i transfereix les marques a la part superior de la llauna. Per tal d’evitar l’empenta de la part superior de la llauna, recolzeu la part interna de la tapa sobre un petit bloc de fusta quan pugueu i perforeu la part superior. Amb el paper i la fusta al seu lloc, faig fosser la llauna amb el punxó. En perforar, aneu lentament al principi. Les vores tallants dels punts forts haurien de fer un cercle uniforme. Perforar amb la broca qualsevol cosa menys perpendicular a la superfície pot provocar que la broca agafi i trenqui el metall. El punt brut de 5 mm fa un bon forat net, però vaig trobar que l’havia d’ampliar lleugerament. Ho vaig fer perforant des de l'interior amb un bit normal de 13/64 ". El segon conjunt consta de dos forats de 1/4" a la part dreta de l'estany per a l'interruptor i la presa d'àudio. A causa de la curvatura estreta al final de la llauna, aquests forats han d’estar força propers. Assegureu-vos que els espaceu perquè els components encaixin a la llauna. Centreu-los verticalment a la porció del costat visible quan la tapa estigui tancada. Marqueu-lo amb un cop de puny i foradeu amb molta cura. La precaució sobre els bits que agafen l’estany s’aplica amb més força amb els bits més grans. L’últim forat és per al polsador. Col·loqueu el forat cap a la part inferior dreta de manera que el polsador no interfereixi amb els altres components de la llauna.

Pas 7: Dissenyar i fabricar el PCB

Disseny i fabricació del PCB
Disseny i fabricació del PCB
Disseny i fabricació del PCB
Disseny i fabricació del PCB
Disseny i fabricació del PCB
Disseny i fabricació del PCB

Hi ha nombrosos recursos a Internet que descriuen el procés de creació de PCB. Cap dels mètodes és infal·lible ni fàcil, però és important posar-se còmode amb almenys un. Utilitzo la versió freeware de l’EAGLE Layout Editor de CadSoft per crear l’esquema i dissenyar la placa de circuit imprès. El meu enfocament per fabricar el PCB es descriu a la secció de fabricació i preparació del PCB de l’altaveu de llauna Altoids. Després de transferir, gravar i perforar el tauler, esteu a punt per soldar-ho tot junt. Nota La meva experiència més recent per transferir imatges a les plaques de circuits són les següents. Renteu bé la pissarra amb sabó per a vaixella i fregueu-la amb un fregall verd. Esmalleu suaument les rebaves de les vores del tauler perquè el paper de transferència i la planxa tinguin un bon contacte amb el tauler. Preescalfeu la planxa. Col·loqueu un tros de paper a la pissarra i escalfeu la pissarra amb la planxa. Quan la pissarra estigui força calenta, col·loqueu amb cura el paper de transferència preparat a la pissarra. S’enganxarà de seguida (perquè el tauler està calent), així que assegureu-vos que estigui posicionat correctament. A continuació, planxar directament a la part posterior brillant del paper de transferència. Això mai no em va causar problemes, però utilitzeu el vostre propi ferro. Prova primer. Deixeu refredar el tauler i, a continuació, feu-lo passar sota aigua freda. El paper de transferència hauria d’aparèixer i deixar tota la imatge. Utilitzeu un visor de diapositives / negatiu de 8 vegades per mirar la transferència i omplir les peces que falten. Bona sort.

Pas 8: soldar peces al PCB

Peces de soldadura a PCB
Peces de soldadura a PCB
Peces de soldadura a PCB
Peces de soldadura a PCB
Peces de soldadura a PCB
Peces de soldadura a PCB

Hi ha nombrosos recursos a Internet que descriuen el procés de soldar components electrònics a PCB. Vegeu, per exemple, el tutorial de soldadura a ladyada.net. L’ordre en què instal·leu components no importa realment, tot i que he trobat que el que és més fàcil és treballar de més petit a més gran. Els cables LED / blinkenlight són prou llargs perquè pugueu modelar-los en un patró semblant a la menora a la llauna. Col·loqueu els LEDs amb cura i doblegueu els cables de manera que la part superior de cada LED estigui posicionada de manera que pugi cap amunt pel forat respectiu. Això pot ser un repte, però sembla molt bo quan finalment funciona. Si es deixen els cables massa llargs, els LED poden ser aixafats cap avall i fora de posició per la tapa de la llauna. Nota El LED més a la dreta no està en la mateixa orientació que els altres vuit. Assegureu-vos de comprovar la polaritat dels LED en relació amb el disseny de la placa quan els instal·leu. Aquest LED està connectat al pin RESET, de manera que podeu optar per no instal·lar-lo. Nota Els cables de la presa d’àudio i les resistències comparteixen un forat. Per comoditat, poseu les resistències en posició vertical de manera que el cos de la resistència no quedi sobre el forat amb el cable d’àudio. Prepareu i instal·leu la presa d’àudio en aquest punt o espereu fins que estigui a punt per soldar-se a les resistències. No és divertit desoldar les resistències més endavant.

Pas 9: llums intermitents

Llums intermitents
Llums intermitents

Els LEDs han d’estar protegits per resistències. Determineu la caiguda de tensió i els requisits de corrent dels vostres LEDs i calculeu les resistències adequades suposant una font de 5V del xip. Hi ha calculadores en línia fàcilment disponibles per fer-ho. Feu-vos un munt de llums intermitents. En fer-los per a aquest projecte, talleu el càtode (cable negatiu / curt del LED pel costat aplanat) i soldeu la resistència molt a prop de la lent del LED. Els LED formen una forma de menorah a la llauna. Fins i tot amb la resistència gairebé a tocar l’objectiu, el LED més curt del centre quedarà lleugerament aixafat per la tapa de la llauna. Per evitar que es produeixin pantalons curts als límits estrets de la llauna, cobreix cada resistència amb un tros de tub termoretràctil.

Pas 10: Preparació del suport de la bateria

Preparació del suport de la bateria
Preparació del suport de la bateria

Feu lliscar petits trossos de tubs termorretractables pels dos cables del suport de la bateria. Introduïu-los amb cura als forats del suport i reduïu-los al lloc. Aquests proporcionen un cert grau de protecció per als cables. (Aquesta instrucció es duplica a la pàgina Preparació del commutador alternador.) Talleu el fil negre a la longitud i soldeu-lo al forat adequat del PCB. El fil vermell es solda directament al commutador; vegeu les instruccions d’aquesta pàgina per saber com procedir. En projectes anteriors he tallat les pestanyes de retenció del suport de la bateria. Després d’haver fet això amb el prototip, ara em sap greu. La bateria no vol mantenir-se ben fixada al seu lloc. Deixeu les pestanyes per iniciar-les i traieu-les només si teniu problemes per treure la bateria. Tot i dir-ho, la imatge mostra un suport de la bateria amb les pestanyes tallades. Això es deu al fet que l’he eliminat d’un altre projecte.

Pas 11: Preparació del commutador de commutació

Preparació del commutador de commutació
Preparació del commutador de commutació

Depenent del commutador, és possible que hagueu de retallar un dels pins. Ho faig amb els interruptors que faig servir, tot i que potser no sigui del tot necessari. Feu lliscar un petit tros de tub termoencongible al llarg del cable vermell del suport de la bateria. Introduïu-lo amb cura al forat del suport i reduïu-lo al lloc. Proporciona un cert grau de protecció per al cable. (Aquesta instrucció duplica les instruccions de Preparació del suport de la bateria.) Feu lliscar un altre petit tros de tub termoretràctil sobre el fil vermell. Talla i tira el cable al llarg i aplica una mica de soldadura al pin de l'interruptor i al final del cable. Soldeu el cable vermell del suport de la bateria directament al passador exterior del commutador. Feu lliscar el tros de tub termoretràctil sobre la junta per protegir-lo i enfortir-lo. El segon cable va del passador central del commutador a la PCB. Soldeu el cable al commutador tal com es descriu anteriorment. Protegiu l’articulació amb tubs termorretractables. Soldeu l’altre extrem al forat adequat del PCB.

Pas 12: Preparació de la presa d’àudio

Preparació de la presa d’àudio
Preparació de la presa d’àudio
Preparació de la presa d’àudio
Preparació de la presa d’àudio
Preparació de la presa d’àudio
Preparació de la presa d’àudio

Els cables de la presa d’àudio són força curts. Apliqueu una mica de soldadura als passadors de la presa i del cable i, a continuació, soldeu-los al lloc. Feu lliscar trossos de tub termoretràsit sobre les juntes per protegir-les i enfortir-les. El cable de terra es pot soldar directament al seu forat. Els extrems dels cables de senyal comparteixen un forat amb un extrem d’una resistència. Prepareu el filferro i la resistència girant els extrems junts i aplicant una mica de soldadura. El forat on s’introdueixen s’ha de perforar fins a 3/64 per acomodar els dos cables. Soldeu-lo al seu lloc.

Pas 13: Preparació del commutador de polsador

Preparació del commutador de polsador
Preparació del commutador de polsador
Preparació del commutador de polsador
Preparació del commutador de polsador
Preparació del commutador de polsador
Preparació del commutador de polsador

Prepareu un tros curt de filferro sòlid formant-lo en forma d’U que s’adapti perfectament a la part inferior de l’interruptor. Apliqueu una bola de soldadura a banda i banda del forat (deixeu espai per a l’interruptor) i col·loqueu l’interruptor al seu lloc. Fondre la soldadura i empènyer el filferro al seu lloc. Deixeu que la soldadura s’endureixi i repeteixi per l’altre costat. Això hauria de col·locar i assegurar l’interruptor al seu lloc. Prepareu dos trossos de filferro encallat tallant a llarg i despullant els dos extrems. Assegureu-vos que els cables siguin prou llargs perquè la tapa de la llauna es pugui obrir completament. Soldeu-lo a dos passadors adequats de l’interruptor i, a continuació, feu lliscar trossos de tub termoencongible sobre les juntes per protegir-los i enfortir-los. Soldeu els extrems als seus respectius forats del tauler. Enfileu els cables amb cura entre els LEDs i assegureu-vos que no se situin damunt de les bateries. Vaig estendre els dos pins de l’interruptor de manera que el LED més dret es llisqués entre ells. Els pins de l’interruptor són MOLT fràgils (els altres dos es van desconnectar). Tingueu en compte que el pin PA7 PCINT7 6 està configurat per escoltar un canvi d’estat. En prémer l’interruptor del polsador, es posa el pin cap amunt i s’executa SIGNAL (PCINT0_vect). Basant-se en la durada del botó, o no passa res (descompte brut), l'estat està avançat (premuda curta) o el programa està avançat (premuda llarga).

Pas 14: tancament de la tapa

Tancament de la tapa
Tancament de la tapa

Si tot està bé en aquest moment, voldreu tancar la llauna. En fer-ho, heu de tenir molt en compte la posició dels LED. Em sembla que els he de posar en posició amb un tornavís de fulla fina perquè estiguin correctament col·locats als seus forats. Apliqueu una mica de pressió cap avall a la tapa a mesura que maneu els LEDs fins a la seva ubicació i, finalment, es llisquen al seu lloc. És possible que hagueu de col·locar els cables de manera que caiguin entre els components i no. A més, és possible que els passadors del polsador s’hagin de doblar fora del camí.

Recomanat: