Destrezas requeridas: Usted debe tener una comprensión de: Básicos de la electrónica. (Recomendamos contra la construcción de este como su proyecto de electrónica por primera vez. Pero, por favor lea el instructivo. Usted todavía aprender mucho!) Cómo soldar. Cómo utilizar un multímetro, etc Escribir código en C (Opcional Ofrecemos un programa completamente funcional, listo para ir)
Esto es lo que usted necesita para hacer un cubo del LED: 512x LED (más algunos adicionales por cometer errores!) Resistencias de 64x. (vea el paso por p or separado para el valor ohmios) 1x o 2x PCB prototipo de gran tamaño. El tipo con el cobre c obre "ojos", ver imagen. 1x microcontrolador ATmega32 (también puede usar el pin compatible ATMEGA16) LEDs de estado de 3x. Usted elige el color y tamaño. Resistencias de 3x para los LEDs de estado. 8x 74HC574 VA 16x transistores PN2222 16x resistencias de 1k 1x 74HC138 IC 1x Maxim MAX232 IC 1x 14.7456 MHz corteza 2x 22pF condensadores cerámicos 16x 0.1uF condensadores cerámicos 3x 1000uF condensador electrolítico 3x 10uF condensador electrolítico 1x 100uF condensadores electrolíticos 8x 20 pines zócalos IC 1x conector de 40 pines del IC 2x 16 pines zócalo del IC 1x 2-pin terminal de tornillo 1x cable de 2wire con tapones 9 x 8 pines clavijas terminales 1x 4 pines clavijas de los terminales, en ángulo recto 2x 16-pin conector del cable plano 1 x 10-pin conector de cable plano Cable plano Pulsadores 2x 2x clavijas de los cables de cinta 9 x 8 pines enchufes hembra de cabecera Cable de serie y el encabezado de 4 pines pines hembra Pedazo de madera para la plantilla y la base 8x opcional resistencias pull-up para las capas Fuente de alimentación de 5V (ver paso separado de la fuente de alimentación) (Lo saque de un tutorial en ingles, o sea, en sii allá saldria todo esto unos 67 dolares. Acá ni idea :S). Algunas imagenes de las cosas:
Un cubo LED es como una pantalla de LED, pero es especial, ya que tiene una tercera dimensión, lo que lo convierte en 3D. Piense en ello como muchas de las pantallas transparentes de baja resolución. En la muestra normal, es normal para tratar de p ila de los píxeles lo más cerca posible a fin de hacer que se vea mejor, pero en un cubo de uno debe ser capaz de ver a través de ella, y más espacio entre los píxeles (en realidad es voxels, ya que es en 3D) que se necesita. La separación es una fidelidad equilibrio entre la facilidad de las capas detrás de ella se ve, y voxel. Dado que es una obra mucho más hacer un cubo de un LED indicador LED, por lo general son de baja resolución. Una pantalla LED de 8x8 píxeles es sólo el 64 LEDs, pero un cubo de 8x8x8 LED es de 512 LEDs, un orden de magnitud más difícil de hacer! Esta es la razón LED cubos se hacen solamente en baja resolución. Un cubo LED no tiene por qué ser simétrica, es posible hacer un 7x8x9, o incluso los de forma irregular. Este cubo tiene 512 LED LED. Obviamente, tener un puerto de E / S dedicado a cada LED sería muy poco práctico. Usted tendría un microcontrolador con 512 puertos de E / S, y ejecutar 512 cables a través del cubo. En cambio, los cubos de LED se basan en un fenómeno óptico llamado persistencia de la visión (POV). Si un flash LED muy rápido, la imagen permanecerá en la retina durante un rato después de que el led se apaga. Mediante el parpadeo de cada capa d el cubo de una después de otra muy, muy rápido, que da la
ilusión de una imagen 3D, cuando int hecho de que usted está buscando en una serie de imáge nes 2D apiladas ontop oneanother. Esto también se l lama multiplexación. Con esta configuración, sólo necesitamos 64 (de los ánodos) + 8 (por cada capa), puertos de E / S para controlar el cubo del LED. En el vídeo, el proceso se ralentiza lo suficiente para que usted lo ve, entonces se ejecuta más rápido y más rápido hasta la frecuencia de actualización es lo suficientemente rápido com o para que se prenda el efecto Punto de vista.
Vamos a estar hablando de ánodos, cátodos, columnas y capas, por lo que le permite tomar un momento para familiarizarse con la anatomía de un cubo d e LED. Un LED tiene dos piernas. Uno positivo (el ánodo) y uno (cátodo) negativo. Con el fin de la luz de un LED, tiene que ejecutar la corriente de lo positivo a la pata negativa. (Si no recuerdo mal la corriente real de los electrones es al revés. Pero sigamos con el flujo de corriente que es de positivo a negativo por ahora). El cubo del LED se compone de columnas y capas. Las piernas del cátodo de cada LED en una capa se sueldan entre sí. Todas las patas del ánodo en una columna se sueldan entre sí. Cada una de las 64 columnas están conectados a la placa controladora con un cable por separado. Cada columna puede ser controlado individualmente. Cada una de las 8 capas también tienen un cable por separado va a la tarjeta controladora. Cada una de las capas se conectan a un transistor que permite el cubo para activar y desactivar el flujo de corriente a través de cada capa.
Por sólo encender el transistor para una capa, la corriente de las columnas del ánodo sólo puede fluir a través de esa capa. Los transistores de las otras capas están apagados, y generan a la imagen de los 64 cables de ánodos sólo se muestran en la capa seleccionada. Para mostrar la siguiente capa, basta con a pagar el transistor de la capa actual, cambiar la imagen de los 64 cables del ánodo a la imagen de la capa siguiente. A continuación, encienda el transistor de la siguiente capa. Enjuague y repita muy muy rápido. Las capas se conoce como capas, capas cátodo o capas de tierra. Las columnas se hará referencia a las columnas, las columnas de ánodo o ánodos. Para conducir un cubo de LED, se necesitan dos conjuntos de puertos de E / S. Uno a la fuente de todas las columnas del ánodo del LED, y uno de hundir todas las capas del cátodo. Por el lado del ánodo del cubo, deberá x ^ 2 puertos de E / S, donde x ^ 3 es e l tamaño de su cubo de LED. Para una 8x8x8 (x = 8), que necesita 64 puertos de E / S para conducir los ánodos LED. (8x8). También necesita 8 puertos de E / S para conducir los cátodos. Tenga en cuenta que el número de puertos de E / S se incrementará exponencialmente. Así será el número de LEDs. Puede ver una lista de las necesidades de pines de E / S para diferentes tamaños de cubo en el cuadro 1. Para un cubo pequeño LED, 3x3x3 o 4x4x4, puede salirse con la conexión de las capas del cátodo directamente a un micro controlador de E / S alfiler. Para un cubo más grande sin embargo, la corriente que pasa a través de este pin será demasiado alto. Para un cubo de 8x8x8 LED con sólo 10 mA por LED, lo que necesita para cambiar 0.64 amperios. Ver tabla 2 para una descripción de los requisitos de energía para una capa de LED de diferentes tamaños. Esta tabla muestra el consumo de corriente con todos los LED d e encendido. Si usted está planeando construir un cubo de 8x8x8 o más grandes que ejecuta cada LED en más de 10 mA-ish, recuerde tomar en cuenta que su transistores de capa debe ser capaz de manejar esa carga.
Nos reunimos en el último paso que un cubo de 8x8x8 LED requiere 64 8 líneas de E / S para funcionar. Ningún controlador AVR micro con un paquete de la INMERSIÓN (el tipo de chip a través del agujero que usted puede fácilmente la soldadura o el uso de una placa, paquete en línea dual) que tiene muchas líneas de E / S disponibles. Para conseguir obtener el necesario 64 líneas de producción necesaria para los ánodos LED, vamos a crear un circuito multiplexor simple. Este circuito m últiplex 11 líneas de E / S en 64 líneas de salida. El multiplexor se construye mediante el uso de un componente llamado un cierre o un flip-flop.
Vamos a llamar a los cierres de aquí en adelante. Este utiliza un multiplexor de 8 bits cierre IC llama 74HC574. Este chip tiene los siguientes pines: 8 entradas (D0-7) 8 salidas (Q0-7) Un "cierre" pin (CP) Una salida permite la espiga (OE) El trabajo del cierre es la de servir como una especie de memoria simple. El cierre puede tener 8 bits de información, y estos 8 bits son representados en los pines de salida. Considere la posibilidad de un cierre con un LED conectado a la salida Q0. Para activar este LED, se aplican V + (1) D0 de entrada, a continuación, tire de la CP pasador bajo (GND), entonces alto (V +). Cuando el CP pin cambios de menor a mayor, el estado de la entrada D0 está "conectado" a la salida Q0, y este resultado se mantiene en ese estado, independientemente de lo s cambios futuros en la condición de D0 de entrada, hasta que nuevos datos se carga tirando el CP pines de alta y baja de nuevo. Para hacer un cierre de matriz que puede recordar el estado encendido / apagado de 64 LEDs que necesitamos 8 de estos cierres. Las entradas D0-7 de todos los cierres están conectadas entre sí en un bus de 8 bits. Para cargar el encendido / apagado de todos los estados de los 64 LEDs que simplemente haga lo siguiente: Cargue los datos del primer cierre en el autobús. tirar de la CP pasador del primer cierre bajo, alto. Cargar los datos del segundo cierre sobre el autobús. tirar de la CP pasador de la segunda baja, después del cierre de alta. Cargar los datos del tercer cierre en el autobús. tirar de la CP pasador de la tercera baja, después del cierre de alta. Enjuague y repita. El único problema con esta configuración es que necesitamos 8 líneas de E / S para controlar la línea de PC para cada cierre. La solución es utilizar un 74HC138. Este CI tiene 3 líneas de entrada y 8 salidas. Las líneas de entrada se utilizan para controlar cuál de las ocho líneas de salida que será puesta a tierra en cualquier momento. El resto será alto. Cada una de las salidas en el 74HC138 está conectado a la clavija del PP en uno de los p estillos. El siguiente pseudo-código se carga el contenido de una matriz de búfer en el cierre de matriz: // PORT A = data bus // PORT B = address bus (74HC138) // char buffer[8] holds 64 bits of data for the latch array PORTB = 0x00; // This pulls CP on latch 1 low. for (i=0; i < 8; i++) { PORTA = buffer ; PORTB = i+1; } Las salidas del 74HC138 se activa BAJA. Esto significa que la salida que se activa es puesta a tierra. El pasador (CP) en el cierre es un disparador flanco de subida, lo que significa que los datos
está trabada cuando cambia de BAJO a ALTO. Para activar el derecho de cierre, el 74HC138 necesita para mantenerse un paso por delante del contador i. Si hubiera sido un activo chip de alta, podríamos escribir PORTB = i; Ust ed probablemente está pensando, ¿qué sucede cuando el contador llega a 7, esto quiere decir que la salida de PORTB es de 8 (1000 binario) en la última iteración de la de () bucle. Sólo los primeros 8 bits del puerto B están conectados a la 74HC138. Así que cuando el puerto salidas B 8 o 1000 en binari o, el 74HC138 lee 000 en binario, completando así su ciclo. (comenzó a 0). El 74HC138 ahora salir la siguiente secuencia: 1 2 3 4 5 6 7 0, dando así un cambio de BAJO a ALTO para el cierre actual de acuerdo para hacer frente a i.
Hay otra solución para ofrecer más líneas de salida. Fuimos con el multiplexor de cierre basada porque teníamos ocho cierres disponibles cuando se construye el cubo del LED. También puede utilizar un desplazamiento fuera de serie-en paralelo-registro para poder obtener 64 líneas de salida. 74HC164 es un cambio de registro de 8 bits. Este chip tiene dos entradas (también puede tener una salida permite pin, pero vamos a ignorar esta en este ejemplo). de datos reloj Cada vez que cambia la entrada de reloj de menor a mayor, los datos de Q6 se mueve en el Q7, Q5 a Q6, Q4 a Q5 y así sucesivamente. Todo lo que se desplaza una posición a la derecha (en el supuesto de que Q0 está a la izquierda). El estado de la línea de entrada de datos se desplaza a Q0. La forma en que normalmente se carga de datos en un chip de este tipo, es tomar un byte y bits
que cambiar de puesto en el chip un poco a la vez. Esta utiliza una gran cantidad de ciclos de CPU. Sin embargo, tenemos que usar 8 de estos chips para conseguir nuestros deseados 64 líneas de salida. Simplemente conecte la entrada de datos de cada registro de cambio a cada uno de los 8 bits en un puerto del microcontrolador. Todas las entradas de reloj están conectadas entre sí y conectados a un perno en otro puerto de E / S. Esta configuración se utilizan 9 líneas de E / S en el microcontrolador. En la solución anterior, cada byte en nuestro arsenal de búfer se colocó en su propio cierre del IC. En esta configuración cada byte se distribuirán en los 8 registros de desplazamiento, con un poco de cada uno. El siguiente pseudo-código trasladará el contenido de una matriz de 64 bits de búfer a los registros de cambio. // PORT A: bit 0 connected to shif t register 0's data input, bit 1 to shift register 1 a nd so on. // PORT B: bit 0 connected to all the clock inputs // char buffer[8] holds 64 bit s of data for (i=0; i < 8; i++) { PORTB = 0x00; // Pull the clock line low, so we can pull it high later to trigger the shift register PORTA = buffer; // Load a byte of data onto port A PORTB = 0x01; // Pull the clock line high to shift data into the shift registers. } Este es tal vez una mejor solución, pero teníamos que utilizar lo que había disponibles en la construcción del cubo. A los efectos de este instructivo, que va a utilizar un pestillo multiplexor base para la expansión del puerto de E / S. Siéntase libre de utilizar est a solución en lugar si usted entiende la forma en que ambos trabajan. Con esta configuración, el contenido de la memoria intermedia se "gira" 90 grados en comparación con el multiplexor de cierre basado. Cable de hasta el cubo en consecuencia, o simplemente se gira 90 grados para compensar
Este paso es fácil pasar por alto, como LED mismos no llegar a esa cantidad de corriente. Pero recuerde que este circuito se basará 64 veces el mA de los LED si están encendidos. Además de eso, el regulador y el cierre de circuitos integrados también se basa en curso. Para calcular el consumo de corriente de los LED, conecte un led a una fuente de alimentación de 5V con la resistencia va a utilizar, y medir la corriente en mA. Multiplique este número por 64, y tiene los requisitos de energía para el propio cubo. A esto se añade 15 a 20 mA para el AVR y un par de mA para cada cierre del IC. Nuestro primer intento de una fuente de alimentación consistía en utilizar un regulador de voltaje de bajada, LM7805, con una verruga de la pared de 12V. Con más de 500 mA y la entrada de 12V, este chip se volvió extremadamente caliente, y no fue capaz de suministrar la corriente deseada. Más tarde eliminado este chip, y soldado un cable desde la entrada al pin de salida en el chip que solía ser. Ahora usamos una fuente de poder regulada para obt ener un suministro estable de alta 5V actual.
Usted puede utilizar un habitual o fuente de alimentación ATX y viejos o carcasa externa de disco duro. Si desea utilizar una fuente de alimentación ATX, usted tiene que conectar el cable verde del conector de la placa a tierra (negro). Esta fuerza de voluntad para arriba. Cerramientos exteriores del disco duro son especialmente agradables para utilizar como fuentes de alimentación. Ellos ya tienen un recinto conveniente. Lo único que tienes que hacer es añadir los terminales de alimentación externa. Las fuentes de alimentación tiene un montón de cables, pero el lugar más fácil para obtener la energía que necesita es a través de un conector molex. Ese es el tipo de conector se encuentra en los discos duros (antes de los S-ATA). El negro es GND amarillo es +12 V rojo es de +5 V Aquí está una imagen de nuestra fuente de alimentación de laboratorio. He mos de salida de 12V, 5V de salida con un medidor de amperios y 5V de salida sin un amperímetro. Usamos la segunda salida de 5V para alimentar un ventilador de PC de 80 mm a los humos de aspirar o soplar cuando la soldadura. No vamos a entrar en más detalles de cómo hacer una fuente de alimentación aquí. Estoy seguro de que puede encontrar otro instructivo sobre cómo hacer eso.
1) Usted quiere que el cubo del LED para ser igualmente visible desde todos los lados. Por lo tanto le recomendamos utilizar LEDs difusa. Un LED clara se rodará la mayor parte de su luz a la parte superior del LED. Una difusa LED será más o menos igual de brillante por todos lados. Borrar LED también crear otro problema. Si el cubo está formado por LEDs claro. Los LED también parcialmente iluminar el LED encima de ellos, ya que la mayoría de la luz se dirige hacia arriba. Esto crea algunos efectos no deseados fantasma. En realidad ordenó LED difusa de eBay, pero tiene 1.000 leds clara en su lugar. Envío de vuelta a China para recibir un reemplazo habría tomado demasiado tiempo, así que decidimos utilizar los LEDs clara en su lugar. Funciona bien, pero el cubo es mucho más brillante cuando se ve desde la parte superior en comparación a los la dos. Los LEDs se ordenó de eBay se describen en realidad como "desactivada LED". Tal vez debería haber tenido en la pista Desactivar es algo que se hace con una bomba cuando se desea evitar que volar, jeje. 2) Ampliar LED le da un píxel más gr ande y más brillante, pero desde ya que el cubo es de 8 capas profundas, que desea espacio suficiente para ver todo el cam ino hasta el último nivel. Fuimos co n 3mm LED porque queríamos que el cubo de ser lo más "transparente" como sea posible. Nuestra recomendación es utilizar 3mm LED difusa. 3) Usted puede comprar lotes muy baratos LEDs de 1000 en eBay. Pero tenga en cuenta que la calidad del producto se puede reflejar en su precio. Creemos que hay menos posibilidades de mal
funcionamiento del LED si usted compra una mejor calidad / LED más caro. 4) Plaza de los LED probablemente sería genial, pero entonces usted necesita para hacer una plantilla de soldar con capacidad LEDs cuadrados. Con LED r edondo de 3 mm, todo lo que necesita es una broca de 3 mm. 5) Puesto que el cubo se basa en la multiplexación y la persistencia de la visión para crear imágenes, cada capa es sólo enciende por 1 / 8 de la época. Esto se llama un ciclo de trabajo 8.1. Para compensar esto, los LEDs tienen que ser lo suficientemente brillante como para producir el nivel de brillo deseado en el ciclo de trabajo 1.8. 6) Longitud de la pierna. El diseño del cubo en el presente instructivo usa las patas de los LEDs a sí mismos como el esqueleto para el cubo. La longitud de las piernas de los LEDs debe ser igual o mayor que la distancia que desea entre cada LED.
Hay tres cosas a considerar al elegir el valor de sus resistencias, los LEDs, el 74HC574 que impulsan los LEDs, y transistores utilizados para cambiar las capas de encendido y apagado. 1) Si el LED viene con una hoja de datos, debe haber algún amperaje allí. Por lo general, hay dos clasificaciones, una de mA de carga continua, y mA para las cargas de explosión. Los LEDs se ejecuta un ciclo de trabajo 1.8, por lo que puede hacer referencia a la calificación de estallar. 2) El 74HC574 tiene también algunas de las limitaciones máximas. Si todos los LED en la columna de un ánodo están en, este chip será la oferta actual 8.8 de la época. Tienes que mantener dentro del rango de mA máximo especificado para los pines de salida. Si nos fijamos en la hoja de datos, encontrarás esta línea: Fuente de CC de salida o actual del fregadero al pin de salida, E / S: 25 mA. También hay una clasificación de VCC o GND corriente máxima de 50mA. A fin de no superar esto, los LED sólo puede funcionar a 50 / 8 mA desde el 74HC574 tiene 8 salidas. Esto le da 6,25 mA a trabajar. 3) Los transistores tienen que encender y apagar 64 x mA de su LED. Si el LED de 20mA dibujar cada uno, esto quiere decir que usted tiene que encender y apagar 1.28 amperios. Los transistores único que había disponible había una calificación máxima de 400mA. Terminamos con resistencias de 100 ohmios.
Queríamos hacer el cubo del LED usando como componentes posibles. Habíamos visto a algunas personas con barras de metal para sus diseños, pero no te nía ninguna barras de metal. Muchos de los diseños de barra de metal también se parecía un poco torcida. Pensamos que la manera más fácil de construir un cubo se llevó a doblar las piernas de los LEDs para que las piernas convertido en el andamiaje q ue sostiene el LED en su lugar. Hemos doblado la pierna del cátodo en uno de los LED y se mide a ser de 26 mm desde el centro de la LED. Al elegir un espacio de LED de 25 mm, habría una superposición de 1 mm para soldar. (1 pulgada = 25,4 mm) Con un pequeño LED de 3 mm de 25 mm entre cada uno dirigido nos dio un montón de espacio abierto dentro del cubo. Al ver todo el camino hasta la capa más lejos no sería un problema. Podríamos haber hecho el cubo más pequeño, pero entonces tendría que cortar cada sola pierna, y la visibilidad en el cubo se vería comprometida.
Nuestra recomendación es utilizar el espacio máximo que su LED puede permitir. Añadir 1 mm de margen para soldar.
Con el fin de hacer una bonita LED Cube, que necesita un poco de alambre de acero recta. El cable único que tenía era en carretes, por lo que tuvo que ser enderezado. Nuestro primer intento de esto falló horriblemente. Tratamos de doblar en un alambre recto, pero no importa lo mucho que se inclinó, simplemente no era lo suficientemente recto. Entonces recordé un episodio de "Cómo se hace" de Discovery Channel. El episodio fue acerca de cómo hacer que el alambre de acero. Empiezan con un carrete de alambre grueso realmente, luego lo tire a través de agujeros más pequeños. Recordamos que el cable estaba totalmente recto y simétrico al ser arrastrada por el estilo. Así que nos dimos cuenta de que debemos dar tir ando de una oportunidad, ¡y funcionó! 100% hilo metálico directamente de un carrete! Aquí es cómo usted lo hace. corte de la longitud del cable que necesita de la bobina, más una o dos pulgadas. Retire el aislamiento, en su caso. Obtener un agarre firme de cada extremo del cable de dos pares de pinzas Tirar con fuerza! Usted se sentirá el estiramiento de alambre un poco. Usted sólo tendrá que estirar un par de milímetros para que sea agradable y recta.
Si usted tiene un tornillo de banco, usted puede asegurar un extremo en el vicio y el uso de un par de alicates. Esto probablemente sería mucho más fácil, pero no somos dueños de un vicio.
Siempre Busters Mito está probando un mito complejo, empiezan por algunos experimentos a pequeña escala. Le recomendamos que haga lo mismo. Antes hemos construido el cubo 8x8x8 LED, empezamos haciendo una versión m ás pequeña de la misma, 4x4x4. Al hacer la versión de 4x4x4 en primer lugar, se puede perfeccionar su técnica de soldadura cubo antes de comenzar en la grande. Echa un vistazo a nuestro cubo de 4x4x4 LED instructivo para obtener instrucciones sobre la construcción de un pequeño "prototipo ".
Con el fin de hacer una bonita cubo de LED, es importante que es totalmente simétrico, que el espacio entre cada LED es idéntica, y que cada uno de los puntos de LED de la misma manera. La forma más sencilla de conseguir esto es crear una plantilla de soldadura temporal / plantilla. 1) Encuentra un trozo de madera o plástico que es más grande que el tamaño de su cubo. 2) Buscar una broca que hace un agujero que se ajuste a un LED perfectamente en su lugar. No quiero que sea para el ala, ya que haría más difícil de quitar la capa de soldado de la plantilla sin doblarla. Si los agujeros son demasiado grandes, algunos de los LEDs podría salir torcido. 3) Use una regla y un ángulo de hierro para elaborar una red de 8 por 8 líneas que se intersectan en 64 puntos, utilizando el espacio LED determina en un paso anterior. 4) Utilice un objeto con punta afilada para hacer sangrías en cada intersección. Estas sangrías evitará que la broca se deslice hacia los lados cuando se inicia la perforación. 5) Perforar todos los agujeros. 6)
Tome un LED y tratar por todos los agujeros de tamaño. Si el agujero es demasiado apretado un poco, con cuidado de perforación hasta que el LED se adapta perfectamente y se puede sacar sin mucha resistencia. 7) En algún lugar cerca de la mitad de uno de los lados, dibujar una pequeña marca o una flecha. Un alambre de acero se sueldan en aquí, en cada capa para dar el cubo algunos refuerzos adicionales.
Usted va a estar muy cerca de soldadura en el cuerpo del LED, y que probablemente va a ser el uso de LEDs realmente barato de eBay. LED no les gusta el calor, los LEDs baratos, probablemente más que otros. Esto significa que usted tiene que tomar algunas pr ecauciones para evitar LED roto. Soldadura de hierro higiene En primer lugar, usted necesita para mantener su soldador limpio y reluciente. Eso significa que limpiarlo de la esponja cada vez que lo utilice. La punta de su soldador debe estar limpio y brillante. Cada vez que la ve la punta se ensucie con el flujo o oxidante, lo que significa perder es shinyness, usted debe limpiarlo. Incluso si usted está en medio de soldadura. Que tiene una punta de soldadura limpia hace que sea mucho más fácil la transferencia de calor a la meta de soldadura. Velocidad de soldadura Al soldar tan cerca del cuerpo del LED, tiene que entrar y salir rápidamente. Limpie su plancha limpia. Aplique una pequeña cantidad de soldadura a la punta. Toque la parte que desea para soldar con el lado de la plancha en la que sólo hay que poner una pequeña capa de estaño. Deje que el calor de destino para 0,5-1 segundos, y luego tocar el otro lado de la meta que se suelda con la soldadura. Sólo es necesario aplicar un poco. Sólo la soldadura que está en contacto con el metal de los dos cables hará una diferencia. Una gran mancha de soldadura no hará que la unión de soldadura más fuerte. Retire el soldador inmediatamente después de aplicar la soldadura. Errores y enfriamiento Si usted comete un error, por ejemplo, si los cables se mueven antes de que se endurezca la soldadura o no se aplican suficiente soldadura. No vuelva a intentarlo de inmediato. En este punto el LED ya está muy caliente, y la aplicación de más calor con el soldador sólo hará más calor. Continuar con el LED al lado y dejar que se enfríe durante un minuto, o un golpe en el mismo para
quitar algo de calor. Soldadura Recomendamos el uso de una soldadura fina para soldar los LEDs. Esto le da un control mucho más, y le permiten hacer bonita juntas de soldadura sin manchas grandes de la soldadura. Se utilizó una soldadura de calibre 0,5 mm. No utilice la soldadura sin flujo. Si la soldadura es muy antiguo y el flujo no es la meta de limpieza adecuada, obtener nuevos soldadura. No hemos experimentado esto, pero hemos oído que puede suceder. ¿Estamos paranoicos? Cuando la construcción del cubo de 8x8x8 LED, hemos probado todas y cada LED antes de usarlo en el cubo. También probamos todos los LED después de terminar de soldar una capa. Algunos de los LED no funciona después de haber sido soldado en su lugar. Consideramos estas cosas antes de hacer una soldadura sola articulación. Incluso con una cuidadosa soldadura, algunos LEDs fueron dañados. Lo último que quieres es un LED roto cerca del centro del cubo cuando se acaba. La primera capa y la segunda desde el exterior se puede fijar después, pero más allá de que eso, y usted necesitará herramientas quirúrgicas endoscópicas
Cada capa se compone de ocho columnas de LEDs mantienen unidos por las piernas de cada LED. En la parte superior de cada capa de cada LED se gira 90 grados hacia la derecha, de modo que la pierna se conecta con el LED superior de la columna siguiente. En la columna de la derecha esta etapa, sobresale de la parte de la capa. Dejamos esto en su lugar y lo utilizan para conectar
tierra al probar todos los LED en un paso posterior. 1) Preparar 64 LEDs Doble la pierna del cátodo de cada LED de 90 grados. Asegúrese de que las piernas están dobladas en la misma dirección en todos los LED. En cuanto a la LED sentado en un agujero en la plantilla con la muesca a la derecha, se inclinó hacia arriba la pierna. 2) Comenzar con la fila en la parte superior Comience por colocar la parte superior derecha del LED en la plantilla. Luego coloque la otra hacia la izquierda, la posición de modo que la pierna del cátodo está tocando la pierna cátodo del LED anterior. Enjuague y repita hasta que llegue el LED izquierdo. Suelde todas las articulaciones. 3) Soldar los 8 columnas Si eres diestro, se recomienda empezar con la columna a la izquierda. De esta forma la mano puede estar en la plantilla de madera cuando la soldadura. Usted necesitará una mano firme cuando se suelda a mano alzada como éste. Comience por colocar el segundo LED de la parte superior, alineando lo que todo es toca la pierna de la junta de soldadura de la etapa anterior. A continuación, coloque el LED por debajo de ese modo que la pierna toca el cátodo LED encima. Repita el procedimiento hasta llegar a la parte inferior. Suelde todas las articulaciones. 4) Añadir llaves Ahora tiene una capa que se parece a un peine. En este punto todo es muy débil, y usted tendrá que añadir un poco de apoyo. Se utilizó un refuerzo en la parte inferior y otro cerca de la mitad. Tome una paz de alambre recto, aproximadamente alinearlo en el que lo quiere y la soldadura de un extremo a la capa. Ajustar la alineación y la soldadura el otro extremo en su lugar. Ahora, hacer soldaduras de los 6 restantes columnas. Haga e sto por dos llaves. 5) Análisis de todos los LEDs Esto se trata en el próximo paso. Sólo mencionar aquí para no remover la capa todavía. 6) Eliminar la capa La primera capa del cubo LED está todo hecho, ahora todo lo que tienes que hacer es eliminar de la plantilla. Dependiendo del tamaño de sus agujeros, algunos de los LED puede tener más resistencia al intentar sacarla. Simplemente agarrando ambos extremos de la cap a y tirando probablemente rompería toda la cosa, si un par de los LEDs están atrapados. Comience levantando todas y cada una de LED un par de milímetros. Lo suficiente como para sentir que no hay ninguna resistencia. Cuando todos los testigos están liberados de sus agujeros, trate de levantar con cuidado. Si todavía está atascado, parar y sacar el LED atascado. Repita ocho veces! Nota sobre las imágenes: Si usted está teniendo problemas para ver los detalles en cualquiera de nuestras fotos, se puede considera que la resolución completa haciendo clic en el icono de la i pequeña en la esquina superior izquierda de cada imagen. Todos nuestros cerca las imágenes se toman con un mini trípode y debe tener el foco macro excelente. En la página de la imagen, elija el tamaño original de las "Medidas disponibles" menú de la izquierda.
Soldadura que cerca del cuerpo del LED se puede dañar el interior de la electrónica. Le recomendamos que pruebe todos los LEDs antes de continuar. Conecte la tierra a la pestaña que sobresalir en la esquina superior derecha. Conecte un cable de 5V a través de una resistencia. Utilice cualquier resistencia que se enciende el LED y no exceda su
calificación mA máximo a 5V. 470 Ohm probablemente, podría funcionar muy bien. Tome el alambre y toque contra los 64 piernas ánodo que sobresale de su plantilla. Si un LED no parpadea cuando se toca, eso significa que algo anda mal. 1) La soldadura no es conducir la corriente. 2) El LED se sobrecalienta y se rompe. 3) Usted no hizo una correcta conexión entre elel cable de prueba y el led . (empezar).
En nuestra opinión, un cubo del LED es una obra de arte y debe ser perfectamente simétricos y rectos. Si nos fijamos en los indicadores LED en la plantilla desde el lateral, que probablemente se inclinó en alguna dirección. Usted quiere que todas las patas al punto hacia arriba, en un ángulo de 90 grados de la plantilla. Mientras observa la plantilla desde el lado, enderezar todas las piernas. A continuación, gire la plantilla de 90 grados, para poder verla desde el otro lado, y luego hacer el mismo proceso. Ahora tiene una capa perfecta que está listo para ser retirado de la plantilla.
En las columnas del cubo del LED, queremos que cada LED para sentarse centrada precisamente por encima debajo de los LED. Las patas de los LEDs de salir del cuerpo LED medio milímetro más o menos del borde. Para realizar una junta de soldadura, tenemos que doblar la pierna del ánodo para que toque la pierna del ánodo en el LED a continuación. Hacer una curva en la pierna del ánodo hacia el cátodo de la pierna de aproximadamente 3 mm desde el extremo de la pierna. Esto es suficiente para que la pierna se dobla alrededor del LED abajo y hacer contacto con su pierna ánodo.
Ahora viene la parte difícil, soldar todo junto! Las dos primeras capas puede ser muy débil antes de que se sueldan entre sí. Usted puede poner la primera capa de vuelta en la plantilla para darle algo de estabilidad.
Con el fin de evitar el desastre total, usted necesitará algo para mantener la capa en su lugar antes de que se suelda en su lugar. Por suerte, la anchura de una batería de 9V es muy cerca a 25 mm. Probablemente más cercano a 25,5 de 26 mm, pero eso está bien. Advertencia: El 9 voltios de una batería de 9V puede fácilmente sobrecarga si los LED de los contactos de la batería entra en contacto con las patas de los LEDs. Hemos grabado en los polos de la batería para evitar que accidentalmente arruinando los LED que se suelda. Tuvimos un montón de pilas de 9V por ahí, así que les sirven de apoyo temporal. Comience por colocar una batería de 9V en cada esquina. Asegúrese de que todo está perfectamente alineado, luego soldar el LED esquina. Ahora soldar todos los LEDs alrededor del borde del cubo, moviéndose a lo largo de las baterías de 9V como todos. Esto asegurará que las capas se sueldan perfectamente paralelos entre sí. Ahora mover una pila de 9V para el centro del cubo. Basta con introducirlo en uno de los lados. Soldar un par de los LEDs en el centro. Todo esto debería ser bastante estable en este momento, y usted puede seguir para soldar el resto de los LED sin utilizar la batería de 9V para el apoyo. Sin embargo, si parece que algunos de los LED se hunden un poco, con diapositivas en una pila de 9V para levantarlos! Cuando se han soldado todas las columnas, es el momento para poner a prueba los indicadores LED de nuevo. Recuerde que la ficha que salen desde la esquina superior derecha de la capa, que le dijo que no se retire sin embargo? Ahora es el momento de usarlo. Tome un pedazo de alambre y soldadura de la ficha de la capa inferior de la ficha de la capa que acaba de soldar en su lugar. Conecte la tierra a la ficha del suelo. Prueba cada uno dirigido con la misma configuración que utilizó al probar las capas individuales. Dado que las capas de tierra se han conectado por las etiquetas de prueba, y todos los ánodos de cada columnas están conectadas entre sí, todos los LEDs en una columna debe encenderse cuando se aplica voltaje a la superior. Si el LED debajo de él no se enciende, probablemente significa que se le olvidó una junta de soldadura! Es mucho mej or resolver esto en este momento, más que cuando todas las capas están soldadas entre sí. El centro del cubo es prácticamente imposible llegar a un soldador. Durante los siguientes 6 capas, utilice e l mismo proceso exacto, pero que pasan m ás tiempo alineando los LEDs esquina antes de soldar ellos. Mira el cubo de arriba, y asegúrese de que todos los testigos de esquina en una línea recta cuando se mira desde arriba. Aclarar y repetir!
No teníamos ninguna herramienta de lujo a nuestra disposición para crear una posición de lujo o caja para el cubo de LED. En su lugar, hemos modificado la plantilla para trabajar como una base para el cubo. Le animamos a hacer algo más fresco de lo que hizo por el cubo del LED! Para la plantilla, sólo perforó un par de milímetros en la madera. Para transformar la plantilla en una base, que acaba de perforar todos los agujeros a través de la junta. Luego perforar 8 orificios más pequeños para los 8 cables del cátodo corriendo a las 8 capas cátodo. Por supuesto, usted no quiere que su cubo de LED en una base de madera de colores. No teníamos ninguna pintura negro por ahí, pero sí encontramos un gigante rotulador negro! Tinción de la madera negro con un marcador mágico funcionó sorprendentemente bien! Creo que el que usamos tiene un punto de 10 mm.
Montar el cubo. Eso suena muy fácil, pero no lo es. Tienes que alinear las piernas 64 LED para deslizarse a través de 64 hoyos, al mismo tiempo. Es como enhebrar una aguja, los tiempos de 64. Se han encontrado más fácil que em pezar con uno de los extremos, luego, gradualmente, apareciendo las piernas en su lugar. Utilice un lápiz o algo para meter en las patas del LED que pierda sus agujeros. Una vez que los 64 LED están metiendo las patas en la base, con cuidado a su vez que en su lado. Luego doblar los 64 piernas 90 grados. Esto es suficiente para mantener el cubo montado firmemente a la base. No hay necesidad de pegamento o cualquier otra cosa
Ahora tiene un cubo de LED con 64 conexiones del ánodo en la parte inferior de la base. Pero es necesario conectar las capas de tierra también. Recuerde que los ocho pequeños agujeros que ha perforado en un paso anterior? Vamos a usarlos ahora. Hacer un poco de alambre recto usando e l método explicado en un paso anterior. Comenzamos con motivo de la capa 0. T ome un pedazo corto de alambre recto, hacer una curva de aproximadamente 10 mm desde el extremo. Meter por el agujero de capa de base 0. Deja 10mm metiendo a través de la parte inferior de la base. Posición de modo que la curva que hace se basa en el alambre trasero de la capa de base 0. Ahora bien, la soldadura en su lugar. Capa 1 al 7 son un poco más complicado. Se utilizó una mano para sujetar el cable en su lugar durante la soldadura. Tome un pedazo de alambre recto y la curva de 90 grados de 10 mm desde el extremo. Luego se corta a la longitud de manera que 10 mm de alambre se asoman a través de la parte inferior de la base. Meter el cable por el agujero y dejar que el resto de alambre en el cable de nuevo de la capa que se está conectando. Sujete la mano sobre el alambre, entonces la soldadura en su lu gar. Aclarar y repetir siete veces más. Con cuidado, gire el cubo en su lado y doblar los 8 cables de tierra de 90 grados.
64+8 cables que van desde el controlador al cubo de LED. Se utilizó cable de cinta para hacer las cosas un poco más fácil. Las capas de tierra utiliza un cable de 8 hilos de la cinta.
Los cátodos están conectados con 4 de 16 cables de alambre de la cinta. Cada uno de estos cables planos se dividen en dos en cada extremo, para obtener dos cables de 8 hilos. En el lado del controlador, que adjunta 0.1 "conectores de cabecera mujeres. Estos se conectan a estándar 0.1" pasadores sola fila de encabezado d e PCB. El conector de cabecera es un conector m odular que se presenta en dos partes, l as inserciones de metal y un cuerpo de plástico. Los insertos de metal se supone que se doble, en una herramienta. No hemos tenido la herramienta adecuada a mano, así que utilizamos un alicate. T ambién hemos añadido una pequeña capa de estaño para asegurarse de que los cables no se caen de con el uso. 1) Preparar un cable de 8 hilos de cinta y 4 16 hilos cables de cinta de la lon gitud deseada 2) crimpado o soldadura en los insertos metálicos. 3) Introducir el inserto de metal en la carcasa del conector de plástico. 4) Suelde el cable de 8 hilos de la cinta a las bandas del cátodo. Pre-lata antes de soldar los cables! 5) la soldadura en el resto de los cables. La franja roja en el primer alambre indica que este es el bit 0. 6) Apriete los tornillos de la liberación de tensión para asegurarse de que todo se queda en su lugar. 7) Conecte todos los cables de cinta para los PCB en el orden correcto. Vea las fotos de abajo. Nuestras 8 cable de alambre de la cinta no tenía un cable rojo. Simplemente introduce el conector 180 grados si el cubo está boca abajo. Si todo va bien, tirar de la capa del cubo y empezar a soldar la siguiente.
Sacamos el mayor tipo de PCB que había disponibles (9x15cm) y comenzó a experimentar con diferentes diseños de tablero. Pronto quedó claro q ue abarrotar todos los componentes en una sola placa no era una buena solución. En su lugar, decidió separar el cierre matriz y la parte de alimentación del circuito y colocarlo en una tabla separada. Una cinta de transferencias por cable líneas de datos entre los dos tableros. Elección de dos tableros independientes fue un a buena decisión. El cierre matriz ocupaba casi todo el espacio del tablero de circuito. No habría sido mucho espacio para el controlador de micro y otras partes. Puede que no tenga las juntas exactamente el mismo circuito que nosotros, o lo desea, puede organizar sus componentes de manera diferente. Trate de colocar todos los componentes en la placa de circuito para ver qué diseño mejor se adapte a su tarjeta de circuitos.
Nosotros usamos un cristal exterior de 14,7456 MHz para conducir el reloj del sistema ATmega. Usted puede pensar que se trata de un número impar de usar, y por qué no se ejecutó el ATmega a 16MHz es clasificado. Queremos ser capaces de controlar el cubo del LED de una computadora, usando RS232. Comunicación serie requiere la sincronización exacta. Si el tiempo está apagado, sólo un poco, algunos bits se van a perder o contabilizado por partida doble de tiempo en tiempo. No vamos a correr ningún algoritmos de corrección de errores en las comunicaciones de serie, por lo que cualquier error en la línea estaría representada en el cubo LED como un voxel es encendido o
apagado en el lugar equivocado. Para establecer la comunicación serie impecable, tiene que utilizar una frecuencia de reloj que puede ser dividido por la frecuencia de serie que desea utilizar. 14,7456 MHz es divisible por todos los populares velocidades de transmisión RS232. (* 14.7456MHz 1000 * 1000) / 9600 = 1.536,0 (* 14.7456MHz 1000 * 1000) / 19.200 baudios = 768.0 (* 14.7456MHz 1000 * 1000) / 38.400 baudios = 384.0 (* 14.7456MHz 1000 * 1000) / 115 200 baudios = 128.0 La fórmula dentro de los paréntesis se convierte de MHz a Hz. En primer lugar * 1000 le da KHz, el próximo Hz. Como se puede ver todas estas velocidades de transmisión RS232 puede ser limpiamente dividida por nuestra velocidad de reloj. Comunicación serie esté libre de errores!
Vemos que la gente hace un montón de cosas raras cuando la soldadura de PCB prototipo. Antes de continuar, sólo queremos compartir con ustedes el proceso que utilizamos para crear pistas sobre los PCB prototipo con los ojos de la soldadura. Una vez que domines esta técnica, es probable que empezar a usarlo mucho.
1) Llenar cada punto de la pista que quiere hacer con la soldadura. 2) Conecte todos los otros puntos por calentamiento y la adición de una pequeña capa de estaño. 3) Conectar las piezas largas de 2 agujeros que ahora tienen que abarca el tema deseado. 4) Mira qué hermoso es el resultado. Se puede ver en el video de cómo lo hacemos. Tuvimos que tocar algunos de los puntos dos veces a unirse a ellos. Fue un poco difícil tener la cámara en el modo en que se suelda
link: http://www.youtube.com/watch?v=kROaQZOYNIw
El cubo está completo, ahora lo único que queda es un circuito monstruo para controlar el problema. Vamos a empezar con la parte más fácil, la "fuente de alimentación". La fuente de alimentación consta de un terminal de tornillo donde se conecta la tierra de los cables y VCC, algunos condensadores de filtrado, un switch y una de un LED para indicar la alimentación. Inicialmente, se había diseñado un sistema de alimentación de a bordo con un paso por el regulador de voltaje LM7805. Sin embargo, esto resultó ser un gran fracaso. Usamos esto con una verruga de la pared de 12V. Pero como usted ya sabe, la mayoría de las verrugas de la pared voltajes de salid a superiores a las especificadas en la etiqueta. Nuestro outputted algo así como 14 voltios. El LM7805 no es un regulador de voltaje muy sofisticado, que sólo utiliza la resistencia a reducir el voltaje. Para obtener 5 voltios de salida de 14 voltios de entrada significa que el LM7805 tiene que bajar 9 voltios. El exceso de energía se dispersa en forma de calor. Incluso con el disipador de calor que se ve en la imagen, se hizo muy, muy caliente. Camino a la caliente al tacto! Además de eso, el rendimiento no era grande tampoco. No fue capaz
de suministrar la corriente necesaria para ejecutar el cubo en el brillo completo. El LM7805 se retiró más tarde, y un alambre se suelda entre los pines de entrada y salida. En su lugar, utiliza una fuente externa de alimentación d e 5V, como se explica en un paso anterior. ¿Por qué tan muchos condensadores? El cubo del LED se va a cambiar unos 500mA dentro y fuera de varios cientos de veces por segundo. En el momento en que se enciende la carga de 500 mA, el voltaje se va a caer a través de todo el circuito. Hay muchas cosas que contribuyen a esto. La resistencia en los cables de la fuente de alimentación, la lentitud en el suministro de energía para compensar el aumento de la carga, y probablemente algunas otras cosas que no sabía nada Mediante la adición de condensadores, se crea un buffer entre el circuito y la fuente de alimentación. Cuando la carga 500mA está encendido, la corriente necesaria puede extraerse de los condensadores durante el tiempo que toma la fuente de alimentación para compensar el aumento de la carga. condensadores grandes se pueden suministrar grandes corrientes durante períodos más largos de tiempo, mientras que los condensadores más pequeños pueden s uministrar pequeñas ráfagas mas rápido de la energía. Hemos colocado un condensador 1000uF justo después del interruptor principal. Esto funciona como nuestro buffer de alimentación principal. Después de eso, hay un condensador de 100uF. Es una práctica común tener un condensador grande en e l pin de entrada de un LM7805 y un condensador más pequeño en él es perno de la salida. El condensador de 100uF probablemente no es necesario, pero creemos que los condensadores que su aspecto más fresco del circuito! El LED está conectado a VCC sólo después de que el interruptor de alimentación principal, a través de una resistencia.
En este paso se suelda en los componentes principales de la matriz de multiplexor. Nuestra consideración de diseño principal aquí era minimizar la soldadura y el cableado. Hemos optado por colocar los conectores tan cerca de la VA como sea posible. En la salida del lado, sólo hay dos puntos de soldadura por colum na cubo LED. IC-resistencia, la resistencia del conector. Las salidas de los cierres están dispuestos en orden 0-7, por lo que este funciona de maravilla. Si no recuerdo, el seguro que está utilizando está disponible en dos versiones, una con las entradas y salidas en orden secuencial, y otra con el de entradas y salidas en orden aparentemente al azar. No se que uno! Durante los siguientes 6 capas, utilice el mismo proceso exacto, pero que pasan más tiempo alineando los LEDs esquina antes de soldar ellos. Mira el cubo de arriba, y asegúrese de que todos los testigos de esquina en una línea recta cuando se mira desde arriba. Aclarar y repetir!
No teníamos ninguna herramienta de lujo a nuestra disposición para crear una posición de lujo o caja para el cubo de LED. En su lugar, hemos modificado la plantilla para trabajar como una base para el cubo. Le animamos a hacer algo más fresco de lo que hizo por el cubo del LED! Para la plantilla, sólo perforó un par de milímetros en la madera. Para transformar la plantilla en una base, que acaba de perforar t odos los agujeros a través de la junta. Luego perforar 8 orificios más pequeños para los 8 cables del cátodo corriendo a las 8 capas cátodo. Por supuesto, usted no quiere que su cubo de LED en una base de madera de colores. No teníamos ninguna pintura negro por ahí, pero sí encon tramos un gigante rotulador negro! Tinción de la madera negro con un marcador mágico funcionó sorprendentemente bien! Creo que el que usamos tiene un punto de 10 mm.
Montar el cubo. Eso suena muy fácil, pero no lo es. Tienes que alinear las piernas 64 LED para deslizarse a través de 64 hoyos, al mismo tiempo. Es como enhebrar una aguja, los tiempos de 64. Se han encontrado más fácil que em pezar con uno de los extremos, luego, gradualmente, apareciendo las piernas en su lugar. Utilice un lápiz o algo para meter en las patas del LED que pierda sus agujeros. Una vez que los 64 LED están metiendo las patas en la base, con cuidado a su vez que en su lado. Luego doblar los 64 piernas 90 grados. Esto es suficiente para mantener el cubo montado firmemente a la base. No hay necesidad de pegamento o cualquier otra cosa
Ahora tiene un cubo de LED con 64 conexiones del ánodo en la parte inferior de la base. Pero es necesario conectar las capas de tierra también. Recuerde que los ocho pequeños agujeros que ha perforado en un paso anterior? Vamos a usarlos ahora. Hacer un poco de alambre recto usando e l método explicado en un paso anterior. Comenzamos con motivo de la capa 0. T ome un pedazo corto de alambre recto, hacer una curva de aproximadamente 10 mm desde el extremo. Meter por el agujero de capa de base 0. Deja 10mm metiendo a través de la parte inferior de la base. Posición de modo que la curva que hace se basa en el alambre trasero de la capa de base 0. Ahora bien, la soldadura en su lugar. Capa 1 al 7 son un poco más complicado. Se utilizó una mano para sujetar el cable en su lugar durante la soldadura. Tome un pedazo de alambre recto y la curva de 90 grados de 10 mm desde el extremo. Luego se corta a la longitud de manera que 10 mm de alambre se asoman a través de la parte inferior de la base. Meter el cable por el agujero y dejar que el resto de alambre en el cable de nuevo de la capa que se está conectando. Sujete la mano sobre el alambre, entonces la soldadura en su lu gar. Aclarar y repetir siete veces más. Con cuidado, gire el cubo en su lado y doblar los 8 cables de tierra de 90 grados.
64+8 cables que van desde el controlador al cubo de LED. Se utilizó cable de cinta para hacer las cosas un poco más fácil. Las capas de tierra utiliza un cable de 8 hilos de la cinta.
Los cátodos están conectados con 4 de 16 cables de alambre de la cinta. Cada uno de estos cables planos se dividen en dos en cada extremo, para obtener dos cables de 8 hilos. En el lado del controlador, que adjunta 0.1 "conectores de cabecera mujeres. Estos se conectan a estándar 0.1" pasadores sola fila de encabezado de PCB. El conector de cabecera es un conector m odular que se presenta en dos partes, l as inserciones de metal y un cuerpo de plástico. Los insertos de metal se supone que se doble, en una herramienta. No hemos tenido la herramienta adecuada a mano, así que utilizamos un alicate. También hemos añadido una pequeña capa de estaño para asegurarse de que los cables no se caen de con el uso. 1) Preparar un cable de 8 hilos de cinta y 4 16 hilos cables de cinta de la lon gitud deseada 2) crimpado o soldadura en los insertos metálicos. 3) Introducir el inserto de metal en la carcasa del conector de plástico. 4) Suelde el cable de 8 hilos de la cinta a las bandas del cátodo. Pre-lata antes de soldar los cables! 5) la soldadura en el resto de los cables. La franja roja en el primer alambre indica que este es el bit 0. 6) Apriete los tornillos de la liberación de tensión para asegurarse de que todo se queda en su lugar. 7) Conecte todos los cables de cinta para los PCB en el orden correcto. Vea las fotos de abajo. Nuestras 8 cable de alambre de la cinta no tenía un cable rojo. Simplemente introduce el conector 180 grados si el cubo está boca abajo. Si todo va bien, tirar de la capa del cubo y empezar a soldar la siguiente.
Sacamos el mayor tipo de PCB que había disponibles (9x15cm) y comenzó a experimentar con diferentes diseños de tablero. Pronto quedó claro que abarrotar todos los componentes en una sola placa no era una buena solución. En su lugar, decidió separar el cierre matriz y la parte de alimentación del circuito y colocarlo en una tabla separada. Una cinta de transferencias por cable líneas de datos entre los dos tableros. Elección de dos tableros independientes fue una buena decisión. El cierre matriz ocupaba casi todo el espacio del tablero de circuito. No habría sido mucho espacio para el controlador de micro y otras partes. Puede que no tenga las juntas exactamente el mismo circuito que nosotros, o lo desea, puede organizar sus componentes de manera diferente. Trate de colocar todos los componentes en la placa de circuito para ver qué diseño mejor se adapte a su tarjeta de circuitos.
Nosotros usamos un cristal exterior de 14,7456 MHz para conducir el reloj del sistema ATmega. Usted puede pensar que se trata de un número impar de usar, y por qué no se ejecutó el ATmega a 16MHz es clasificado. Queremos ser capaces de controlar el cubo del LED de una computadora, usando RS232. Comunicación serie requiere la sincronización exacta. Si el tiempo está apagado, sólo un poco, algunos bits se van a perder o contabilizado por partida doble de tiempo en tiempo. No vamos a correr ningún algoritmos de corrección de errores en las comunicaciones de serie, por lo que cualquier error en la línea estaría representada en el cubo LED como un voxel es encendido o
apagado en el lugar equivocado. Para establecer la comunicación serie impecable, tiene que utilizar una frecuencia de reloj que puede ser dividido por la frecuencia de serie que desea utilizar. 14,7456 MHz es divisible por todos los populares velocidades de transmisión RS232. (* 14.7456MHz 1000 * 1000) / 9600 = 1.536,0 (* 14.7456MHz 1000 * 1000) / 19.200 baudios = 768.0 (* 14.7456MHz 1000 * 1000) / 38.400 baudios = 384.0 (* 14.7456MHz 1000 * 1000) / 115 200 baudios = 128.0 La fórmula dentro de los paréntesis se convierte de MHz a Hz. En primer lugar * 1000 le da KHz, el próximo Hz. Como se puede ver todas estas velocidades de transmisión RS232 puede ser limpiamente dividida por nuestra velocidad de reloj. Comunicación serie esté libre de errores!
Vemos que la gente hace un montón de cosas raras cuando la soldadura de PCB prototipo. Antes de continuar, sólo queremos compartir con ustedes el proceso que utilizamos para crear pistas sobre los PCB prototipo con los ojos de la soldadura. Una vez que domines esta técnica, es probable que empezar a usarlo mucho.
1) Llenar cada punto de la pista que quiere hacer con la soldadura. 2) Conecte todos los otros puntos por calentamiento y la adición de una pequeña capa de estaño. 3) Conectar las piezas largas de 2 agujeros que ahora tienen que abarca el tema deseado. 4) Mira qué hermoso es el resultado. Se puede ver en el video de cómo lo hacemos. Tuvimos que tocar algunos de los puntos dos veces a unirse a ellos. Fue un poco difícil tener la cámara en el modo en que se suelda
link: http://www.youtube.com/watch?v=kROaQZOYNIw
El cubo está completo, ahora lo único que queda es un circuito monstruo para controlar el problema. Vamos a empezar con la parte más fácil, la "fuente de alimentación". La fuente de alimentación consta de un terminal de tornillo donde se conecta la tierra de los cables y VCC, algunos condensadores de filtrado, un switch y una de un LED para indicar la alimentación. Inicialmente, se había diseñado un sistema de alimentación de a bordo con un paso por el regulador de voltaje LM7805. Sin embargo, esto result ó ser un gran fracaso. Usamos esto con una verruga de la pared de 12V. Pero como usted ya sabe, la mayoría de las verrugas de la pared voltajes de salid a superiores a las especificadas en la etiqueta. Nuestro outputted algo así como 14 voltios. El LM 7805 no es un regulador de voltaje muy sofisticado, que sólo utiliza la resistencia a reducir el voltaje. Para obtener 5 voltios de salida de 14 voltios de entrada significa que el LM7805 tiene que bajar 9 voltios. El exceso de energía se dispersa en forma de calor. Incluso con el disipador de calor que se ve en la imagen, se hizo muy, muy caliente. Camino a la caliente al tacto! Además de eso, el rendimiento no era grande tampoco. No fue capaz
de suministrar la corriente necesaria para ejecutar el cubo en el brillo completo. El LM7805 se retiró más tarde, y un alambre se suelda entre los pines de entrada y salida. En su lugar, utiliza una fuente externa de alimentación d e 5V, como se explica en un paso anterior. ¿Por qué tan muchos condensadores? El cubo del LED se va a cambiar unos 500mA dentro y fuera de varios cientos de veces por segundo. En el momento en que se enciende la carga de 500 mA, el voltaje se va a caer a través de todo el circuito. Hay muchas cosas que contribuyen a esto. La resistencia en los cables de la fuente de alimentación, la lentitud en el suministro de energía para compensar el aumento de la carga, y probablemente algunas otras cosas que no sabía nada Mediante la adición de condensadores, se crea un buffer entre el circuito y la fuente de alimentación. Cuando la carga 500mA está encendido, la corriente necesaria puede extraerse de los condensadores durante el tiempo que toma la fuente de alimentación para compensar el aumento de la carga. condensadores grandes se pueden suministrar grandes corrientes durante períodos más largos de tiempo, mientras que los condensadores más pequeños pueden suministrar pequeñas ráfagas mas rápido de la energía. Hemos colocado un condensador 1000uF justo después del interruptor principal. Esto funciona como nuestro buffer de alimentación principal. Después de eso, hay un condensador de 100uF. Es una práctica común tener un condensador grande en el pin de entrada de un LM7805 y un condensador más pequeño en él es perno de la salida. El condensador de 100uF probablemente no es necesario, pero creemos que los condensadores que su aspecto más fresco del circuito! El LED está conectado a VCC sólo después de que el interruptor de alimentación principal, a través de una resistencia.
En este paso se suelda en los componentes principales de la matriz de multiplexor. Nuestra consideración de diseño principal aquí era minimizar la soldadura y el cableado. Hemos optado por colocar los conectores tan cerca de la VA como sea posible. En la salida del lado, sólo hay dos puntos de soldadura por colum na cubo LED. IC-resistencia, la resistencia del conector. Las salidas de los cierres están dispuestos en orden 0-7, por lo que este funciona de maravilla. Si no recuerdo, el seguro que está utilizando está disponible en dos versiones, una con las entradas y salidas en orden secuencial, y otra con el de entradas y salidas en orden aparentemente al azar. No se que uno! No te preocupes, que tiene un nombre diferente 74HC-xxx, por lo que será bueno si nos atenemos a nuestra lista de componentes. En la primera foto, se puede ver que hemos puesto todas las tomas de IC, resistencias y conectores. Nos apretó tan fuerte como sea posible, para dejar espacio para cosas imprevistas en el futuro, como botones o LEDs de estado. En la segunda foto, puedes ver las juntas de soldadura entre las resistencias y las tomas de IC y los conectores. Tenga en cuenta que el lado de la entrada del cierre zócalos IC no han sido soldadas sin embargo, en esta imagen.
Recuerde que el truco protoboard soldar le mostró en un paso anterior? Le dije que sería muy útil, y aquí es donde usted lo utiliza. tableros grandes del circuito como éste, con una gran cantidad de cables, puede llegar a ser bastante confuso. Nosotros siempre tratamos de evitar el levantamiento de la GND y VCC líneas
del tablero. Les líneas de soldadura como la soldadura continua. Esto hace que sea muy fácil de identificar lo que es GND / VCC y lo que las líneas de señales. Si las líneas de VCC y GND debe cruzarse en el camino, sólo una ruta de ellos sobre el otro con un pedazo de alambre en la parte superior de la placa. En la primera foto se pueden ver algunos restos de soldadura en su lugar. Las dos trazas horizontales es el "autobús de la energía principal". El menor es VCC y el de arriba es GND. Por cada fila de una tierra de circuitos integrados y la línea se bifurca VCC del bus de alimentación principal. La línea GND se ejecuta bajo la VA, y la línea de VCC se ejecuta bajo las resistencias. Fuimos un poco por la borda al hacer alambre recto para el cubo, y había algunos trozos sobrantes. Se utilizó para que la línea de VCC que se ejecuta en las resistencias. En la esquina inferior derecha, se puede ver que hemos comenzado a soldar el bus de 8 bits una conexión de todos los circuitos del cierre. Mira lo fácil que es ver lo que es cables de señal y lo que es la distribución de energía! En la segunda foto, se puede ver el panel a la derecha de arriba abajo, con algunos componentes adicionales soldado, simplemente los ignoran por el momento. Por cada cierre IC (74HC574), hay una 100nF (0.1uF) condensador de cerámica. Se trata de condensadores de reducción de ruido. Cuando la corriente de los pines de salida se enciende y se apaga, esto puede causar la tensión a caer lo suficiente como para meterse con el funcionamiento interno de los circuitos integrados, por una fracción d e segundo. Esto es poco probable, pero es mejor prevenir que curar. Depuración de un circuito con cuestiones relativas al ruido puede ser muy frustrante. Además, los condensadores que el aspecto del circuito que mucho más fresco y profesional! Los condensadores de 100nF asegurarse de que ex iste algún derecho actual disponible al lado del CI en caso de que haya una caída repentina de la tensión. Hemos leído en alguna parte que es práctica común de ingeniería para colocar un condensador de 100nF al lado de cada IC, "los uso como caramelos". Tenemos la tendencia a seguir ese principio. Debajo de cada fila de resistencias, se puede ver un pequeño trozo de alambre. Esta es la línea VCC hacer un pequeño salto hacia el lado superior de la tarjeta para cruzar la línea de GND principal. También hemos añadido un condensador en el extremo del bus de alimentación principal, por si acaso.
En la imagen, verás que hay una gran cantidad de cables han venido en su lugar. Todos los cables azules pequeños forman el bus de 8 bits 1 que conecta todos los circuitos del cierre. 8 bits de datos, y el bit 1 es la salida permite la línea.
En la parte superior de la tabla, hemos añadido un conector de 16 pines. Esto conecta el cierre consejo a la junta microcontrolador. Junto a esto, ver el 74HC138. Los cables azules diminutos cables Kynar. Esto es un 30 o 32 AWG (American Wire calibre) de alambre. Muy pequeña. Nos encanta trabajar con este tipo de cable. Debido a que es tan delgada, que no ocupa tanto espacio en el circuito. Si se hubiera utilizado alambre más grueso, no sería capaz de ver la tarjeta a través de todos los cables. Alambre de Kynar está recubierto con estaño, para que pueda soldar directamente después de despojarlo. N o hay necesidad de pre -estañado. Los cables azules pequeños están conectados al mismo pin en cada cierre del IC. Desde el conector en la parte superior, se puede ver ocho cables verde conectado con el autobús. Este es el bus de datos de 8 bits. Se utilizaron colores diferentes para funciones diferentes para visualizar mejor la forma en que el circuito está construido. El cable naranja conectado con el autobús es la salida permite (OE) de la línea. En el lado derecho del conector, el primer pin está conectado a tierra.
El 74HC138 es responsable de accionar la palanca del perno del reloj en el 74HC574 cierre VA. A esto lo llamamos un selector de la dirección, ya que selecciona el que uno de los 8 b ytes en la matriz de cierre queremos escribir datos. Los tres cables azules que va desde el conector a la 74HC138 es la entrada de tres bits binarios utilizados para seleccionar cuál de las 8 salidas es puesta a tierra. De cada una de las salidas en el 74HC138, hay un cable (blanco) que se ejecutan con el conector de reloj en el 74HC574 correspondiente cierre del IC. Para empezar, la tierra de soldadura y conexiones VCC. Si se utiliza la soldadura traza método para ejecutar GND / VCC líneas que quieres hacer esto antes de soldar los cables de otros en su
lugar. Un condensador de 100nF cerámica filtrado se coloca cerca de los pines de VCC y GND del 74HC138. A continuación, conecte las líneas de dirección y el 8 líneas de reloj. Si se fijan bien en el conector, se puede ver dos pines que no se utilizan. Estos serán utilizados para un botón y pantalla LED más tarde.
Esta placa es el cerebro del cubo del LED. El componente principal es un Atmel AVR ATmega32. Este es un microcontrolador de 8 bits con 32 KB de memoria del programa y 2 KB de RAM. El ATmega32 tiene 32 GPIO (General Purpose IO) alfileres. Dos de ellos se utilizará para la comunicación serie (TX + RX). Tres pines de E / S se utilizan para la ISP (programación serie en circuito). Esto nos deja con 27 GPIO para conducir el cubo del LED, botones y LEDs de estado. Un grupo de 8 GPIO (8 bits, un byte) se llama un puerto. El ATmega32 tiene 4 puertos. PORTA, PORTB, PORTC y PORTD. En PORTC PORTD y algunos de los pines se utilizan para TX / RX y la ISP. En PORTA y PORTB, todos los pernos están disponibles. Utilizamos estos p uertos para conducir el bus de datos del cierre array y la capa del transistor de selección. PORTA está conectado al bus de datos en el cierre de la matriz. Cada pin de PORTC está conectado a un par de transistores que impulsan una capa de tierra. El selector de dirección en el cierre de matriz (74HC138) está conectado a poco 0-2 en PORTB. De habilitación de salida (OE) se conecta a PORTB bit 3. En la primera imagen, se ve la placa AVR el lado derecho hacia arriba. Los grandes de 40 pines PDIP (línea doble de plástico del paquete) de chips en el centro del tablero es el ATmega32, el Brainz! Justo a la izquierda de la ATmega, verá el oscilador de cristal y los dos condensadores. A ambos lados de la ATmega hay un condensador de 100nF filtrado. Uno de GND / VCC y otro para AVCC / GND.
En la esquina superior izquierda, hay dos conectores de pines y dos condensadores de filtrado. Una 10uF y uno 100nF. El LED es conectado a VCC a través de una resistencia, y indica que está encendido. La gran 16 pines directamente sobre el ATmega se conecta a la placa matriz de cierre a través de un cable plano. El pinout en lo que corresponde a los pines en el otro tablero. Cuanto más pequeño conector de 10 pines a la izquierda, es un estándar de programación AVR encabezado ISP. Tiene GND, VCC, RESET, SCK, MISO y MOSI, que se utilizan para la programación. Junto a ella, hay un puente. Cuando esto esté en su lugar, la junta puede ser alimentado por el programador. Precaución: el poder no la placa del programador, cuando el cubo real LED está conectado al controlador. Esto podría sonar el programador e incluso el puerto USB el programador se c onecta a! La segunda imagen muestra la parte inferior. Una vez más todas las líneas de VCC y GND son soldados como huellas en el protoboard o cable desnudo. Tuvimos un poco más a la izquierda sobre el alambre de metal recta, así que utilizamos esto. Los cables de color naranja conectar RES ET de la ATmega, SCK MOSI, MISO y alfileres a la cabecera de programación ISP. Los cables verde PORTA conectar al bus de datos. Los cables de color azul son las líneas de dirección para seleccionar el 74HC138 y sal ida permite (OE) para el cierre de la matriz. 1) Comience colocando el zócalo de 40 pines del IC, los 10 pines del conector ISP con un puente junto a ella y los 16 pines del bus de datos. 2) la soldadura en el lugar del conector de alimentación, condensadores e indicador LED de encendido. 3) Conecte todas las líneas GND y VCC con huellas de soldadura o alambre. Colocar un condensador de 100nF entre cada par de GND / VCC alfileres en el ATmega. 4) la soldadura en el cristal y los dos condensadores de 22pF. Cada condensador está conectado con un alfiler en el cristal y GND. 5) Ejecutar todo el bus de datos, la dirección de los cables de selección y la OE, y los cables de ISP. Transistores, botones y RS232 se añadirán en fases posteriores. En este momento, el consejo regulador se puede conectar a un programador ISP y el ATmega debe ser reconocida.
El arsenal del transistor es responsable de encendido y apagado GND para cada capa en el cubo del LED. Nuestro primer intento de esto fue una epope ya no. Compramos algunos transistores tasados a más de 500 mA, pensando que sería m ucho jugo. No recuerdo el número de m odelo.
El cubo del LED trabajado, pero no fue muy brillante, y el brillo fue inversamente proporcional al número de los LED encendido en cualquier capa dada. Además de eso, hubo algunos fantasmas. Capas no apagar completamente cuando se suponía que fuera. Huelga decir que estábamos un poco decepcionada, y comenzó la depuración. Lo primero que hicimos fue agregar resistencias para tratar de combatir el efecto fantasma. Esto elimina casi todas las imágenes fantasma, yay! Pero el cubo era todavía m uy débil, ¡bah! No teníamos ninguna transistores MOSFET poderosos o por ahí, así que tuvimos que llegar a otra solución. Hemos publicado un hilo en la sección de electrónica del foro AVRFreaks.net, preguntando si era posible utilizar dos transistores más pequeños en paralelo. Esta es la única opción disponible para nosotros a través de las piezas que tenía en la mano. La respuesta general fu e, esto no funcionara, entonces ni siquiera se moleste en tratar. Incluso tenían teorías válidas y esas cosas, pero eso no nos disuadirá de tratar. Era nuestra única solución que no implicaba la espera de nuevas piezas para llegar en el correo. Acabamos tratando PN2222A, NPN amplificador amplificador de fines generales. Idealmente, usted quiere un transistor de la conmutación de este tipo de aplicaciones, pero necesitábamos 16 transistores del mismo tipo. Este transistor fue clasificado en 1000 mA de corriente, por lo que decidimos darle una oportunidad. Para cada capa, se utilizaron dos PN2222As en paralelo. Los colectores conectados a GND. Los emisores conectados entre sí, luego se conecta a una capa de tierra. La base de cada uno de los transistores se conectó a la propia resistencia, y los dos resistores conectados a un pin de salida en el ATmega. Soldamos en todos los transistores y se volvió la cosa de nuevo, y funcionó perfectamente! Si usted sabe lo que está haciendo, probablemente debería hacer una i nvestigación y encontrar un transistor MOSFET o más adecuado. Sin embargo, nuestra solución es de probada eficacia, y también hace el truco! 1) Comience por colocar las 8 todos los transistores en el CPC y la soldadura de cada una de sus patas. 2) Ejecutar una soldadura de seguimiento entre los emisores de los 16 transistores. Conecte este soldadura seguimiento a GND. 3) la soldadura en una resistencia de cada transistor, la soldadura de las resistencias en parejas de dos. 4) Pase el cable kynar de los pines de salida en el ATmega a cada uno de los 8 pares de resistencia. 5) Soldadura juntos los colectores de los transistores en parejas de dos y ejecutar la soldadura de seguimiento o el alambre de los pares de colector para una cabecera de 8 pines.
Usted puede hacer un cubo LED sin ningún botón en absoluto, pero es bueno tener al menos un botón y algunos LEDs de estado para la depuración. Hemos añadido un botón mirar impresionante con dos construida en LED, y un botón de regular con un LED. El primer botón se monta en el cierre matriz PCB, ya que este se sienta en la parte superior de la placa AVR, y queremos que el botón de fácil acceso. Los cables se enrutan a través del cable de cinta. El segundo botón y el LED se sienta en el consejo regulador y se utiliza sobre todo para la depuración durante la construcción. Los botones están conectados entre GND y el pin de E / S en el ATmega. Un interno de resistencia pull-up en el interior del ATmega se utiliza para tirar de la clavija de alta cuando el botón no está presionado. Cuando se pulsa el botón, el pin de E / S es puesta a tierra. Una lógica 0 indica que un botón se ha presionado. Los LED también están conectados entre GND y el pin de E / S a través de una resistencia de tamaño adecuado. No conecte un LED a un microcontrolador pines de E / S sin tener una resistencia conectadas en serie. La resistencia está ahí para l imitar la corriente, y de su omisión puede soplar el puerto de E / S en el microcontrolador. Para encontrar la resistencia adecuada, sólo tiene q ue enchufar el led en un protoboard y probar diferentes resistencias con una fuente de alimentación de 5 V. Elija las resistencias que hacen que la luz LED se ilumina con el brillo que desee. Si utiliza LEDs de diferentes colores, debe ponerlos a prueba al lado del otro. LEDs de diferentes colores por lo general requieren resistencias diferentes para alcanzar el mismo nivel de brillo.
Vamos a dejar a usted para decidir la ubicación de los LED de su situación, pero se puede ver en las fotos de abajo como lo hicimos:
Para obtener las animaciones realmente sorprendentes, hay que conectar el cubo de LED a un PC. El PC puede hacer cálculos de punto flotante que tiene el regulador de trabajo en cámara lenta. El ATmega ha construido en un interfaz en serie llamado USART (Universal sincrónica y asincrónica de serie del receptor y transmisor). El USART comunica con niveles TTL (0 / 5 voltios). El equipo habla serie RS232 utilizando. Los niveles de señal para RS232 están en cualquier lugar de + / - 5 voltios a + / - 15 voltios. Para convertir las señales de serie del microcontrolador a algo que el puerto RS232 en un PC puede entender, y viceversa, se utiliza el Maxim MAX232 IC. En realidad, el chip que está utilizando no es de Maxim, pero es un clon compatible pin a pin. Hay algunos condensadores de 100nF de cerámica que rodean el MAX232. El MAX232 usos interiores de carga las bombas y los condensadores externos para incrementar el voltaje a niveles apropiados de RS232. Uno de los condensadores de 100nF es un condensador de filtro. El conector RS232 se encuentra en un ángulo de 90 grados para facilitar el acceso cuando el cierre bordo matriz se monta en la parte superior de la placa AVR. Se utilizó un conector de 4 pines y cortar una de las clavijas a hacer un conector polarizado. Esto elimina cualquier confusión en cuanto a qué forma de conectar el cable RS232. En la segunda foto se pueden ver dos cables amarillos que va desde el ATmega al MAX232. Se trata del nivel TTL líneas TX y RX. 1) Conecte los pines GND y VCC uso de soldadura de seguimiento o de alambre. Coloque una
cerca de 100nF condensador a los pines GND y VCC. 2) la soldadura en su lugar el resto de los condensadores de 100nF. Puedes soldar estos con restos de soldadura, así que es mejor hacer esto antes de conectar el tx / rx cables. 3) la soldadura en marcha un pin 4 0.1 "encabezado con un pin quitado. Conecte el pin junto al que fue trasladado a GND. 4) Conecte el tx / rx líneas de entrada al microcontrolador, y el tx / rx líneas de salida a la cabecera de 4 pines. Los cables que van al cabezal de 4 pines se cruzan debido a que el primer cable de serie que había utilizado este pinout.
Para conectar el cubo de LED a un puerto serie del ordenador, es necesario hacer un cable serie con un conector hembra D-Sub 9. Nuestro patrón desplegado 70 conmutadores Ethernet con la gestión del año pasado. Con cada interruptor viene un cable RS232 que nunca se utiliza. Literalmente, había un montón de cable RS232, por lo que decidió modificar uno de ellos. En el cubo de LED, un 0.1 "pin header se utiliza, por lo que el cable RS232 necesita un nuevo conector en el lado del cubo. No teníamos una hembra de 4 pines 0,1 "conector, así que utilizamos un cabezal de 4 pines hembra PCB en su lugar. El conector en el cubo del LED PCB ha eliminado uno de los pines, para visualizar la direccionalidad de la conexión. Los números de pin va de derecha a izquierda. Configuración de pines del conector RS-232: 1) GND (DSUB9 pin 5) 2) No está conectado 3) RX (DSUB9 pin 3) 4) TX (DSUB9 pin 2) Siga estos pasos para hacer su propio cable RS232: 1) Corte del conector en un extremo del cable. Si el cable tiene una hembra y un conector macho,
asegúrese de quitar el conector macho! 2) Pele la envoltura exterior en el e l lado donde se ha h a extraído el conector. 3) en la Franja de todos los cables. 4) Ajuste el multímetro al modo de prueba de continuidad. Esto hace que el sonido multímetro cuando las sondas están conectados. Si el multímetro no tiene esta opción, utilice el modo de resistencia. Debe estar cerca de 0 ohmios cuando conecte las sondas. 5) Conecte una punta de prueba del multímetro a la clavija de la DSUB9 de 5, a continuación, todos los cables de la sonda hasta que el multímetro emite un pitido. Se han identificado el color de GND en el cable. Repita el procedimiento para el pin 2 y 3 (TX y RX). 6) Anote los colores que identifican, id entifican, a continuación, cortar los cables de o tros. 7) Cortar los tres cables a su tamaño, 30 mm debe hacer. 8) Pre-estaño los cables para facilitar la soldadura. Basta con aplicar el calor y la soldadura de los cables pelados. 9) Introducir una contracción del tubo a través del cable. Deslice tres pequeños tubos de contracción en los conductores individuales. 10) Suelde los cables al conector. 11) Reducir el tamaño de los tubos más pequeños primero, y luego el grande. Si usa un encendedor, no tienen la contracción del tubo por encima de la llama, llam a, simplemente póngalo en el lado de la llama. No haga que su cable basado en los colores que utiliza. Pruebe el cable para encontrar los colores correctos.
Las dos tablas están conectadas por dos cables: Un cable plano de los datos y bus de direcciones. Un cable de dos hilos de tierra y VCC.
Después de conectar estos dos cables, la placa se ha completado.
Conecte los cables de cinta de acuerdo a la configuración de pines se muestra en la figura 2 y 3. La capa de tierra del cable de cinta conecta a la cabecera de pasador cerca de la matriz de transistores. Si el cubo está boca abajo, sólo tienes que conectarlo en el otro lado.
El ATmega32 tiene dos bytes fusible. Estos contienen valores que tienen que cargar antes de que la CPU puede comenzar, como fuente de reloj y otras cosas. Usted tiene que programar su ATmega utilizar un oscilador externo de cristal de alta velocidad y JTAG desactivar.
Hemos establecido el byte fusible inferior (lfuse) para 0b11101111, y el byte de fusibles de alta a 0b11001001. (0b significa que todo después de la b es en binario). Se utilizó avrdude y USBtinyISP (http://www.ladyada.net/make/usbtinyisp/) para programar nuestra ATmega. En todos los ejemplos siguientes, vamos a utilizar un equipo con Ubuntu Linux. Los comandos deben ser idénticos si ejecuta avrdude en W indows. avrdude usbtiny-c-p m32-U lfuse w: 0b11101111: m avrdude usbtiny-c-p m32-U hfuse w: 0b11001001: m
Advertencia: Si recibe este error, usted puede fácilmente su ATmega ladrillo! Si, por ejemplo, deshabilitar el botón de reinicio, no podrá volver a programarlo. Si selecciona la fuente de reloj mal, puede que no arranque en absoluto.
Es hora de probar si su marca LED nuevo cubo realmente funciona! Hemos preparado un programa de prueba sencilla para comprobar si todo el trabajo de los LED y si están conectados correctamente. Usted puede descargar el firmware test.hex en este paso, o descargar el código fuente y compilarlo usted mismo. Al igual que en el paso anterior, usamos avrdude para la programación: usbtiny avrdude-c-p m32-B-1 U flash: w: test.hex
-usbtiny c especifica que se está utilizando el USBtinyISP de Ladyada-p m32 especifica que el dispositivo es un ATMEGA32-B 1 dice avrdude a trabajar en una mayor velocidad por defecto. Uflash: w: test.hex especifica que estamos trabajando en la m emoria flash, en modo de escritura, con la test.hex archivo. http://www.instructables.com/files/orig/FQX/H9M5/GICYB93T/FQXH9M5GICYB93T.tmp
El código de prueba que programó en el paso anterior le permitirá confirmar que todo está conectado correctamente. Se comenzará por la elaboración de un plano a lo largo de un eje, para después pasar a lo largo de los 8 puestos de ese eje. (en avión nos referimos a una superficie plana, no un avión: p) El código de prueba recorrerá un plano a través de los tres ejes. Después de eso, se encenderán los LEDs en una sola capa a uno, a partir de la capa inferior. Si cualquiera de las capas o columnas parecen a la luz en el orden equivocado, es probable que haya soldado el cable equivocado a la capa equivocada o columna. Tuvimos un error en nuestro cubo Si encuentra algo que está fuera de orden, sólo de-soldar los cables y soldar de nuevo en el orden correcto. Usted puede por supuesto hacer una solución de software, sino que comen los ciclos de la CPU cada vez que se ejecuta la rutina de interrupción. No te preocupes, que tiene un nombre diferente 74HC-xxx, por lo que será bueno si nos atenemos a nuestra lista de componentes. En la primera foto, se puede ver que hemos puesto todas las tomas de IC, resistencias y conectores. Nos apretó tan fuerte como sea posible, para dejar espacio para cosas imprevistas en el futuro, como botones o LEDs de estado. En la segunda foto, puedes ver las juntas de soldadura entre las resistencias y las tomas de IC y los conectores. Tenga en cuenta que el lado de la entrada del cierre zócalos IC no han sido soldadas sin embargo, en esta imagen.
Recuerde que el truco protoboard soldar le mostró en un paso anterior? Le dije que sería muy útil, y aquí es donde usted lo utiliza. tableros grandes del circuito como éste, con una gran cantidad de cables, puede llegar a ser bastante confuso. Nosotros siempre tratamos de evitar el levantamiento de la GND y VCC líneas
del tablero. Les líneas de soldadura como la soldadura continua. Esto hace que sea muy fácil de identificar lo que es GND / VCC y lo que las líneas de señales. Si las líneas de VCC y GND debe cruzarse en el camino, sólo una ruta de ellos sobre el otro con un pedazo de alambre en la parte superior de la placa. En la primera foto se pueden ver algunos restos de soldadura en su lugar. Las dos trazas horizontales es el "autobús de la energía principal". El menor es VCC y el de arriba es GND. Por cada fila de una tierra de circuitos integrados y la línea se bifurca VCC del bus de alimentación principal. La línea GND se ejecuta bajo la VA, y la línea de VCC se ejecuta bajo las resistencias. Fuimos un poco por la borda al hacer alambre recto para el cubo, y había algunos trozos sobrantes. Se utilizó para que la línea de VCC que se ejecuta en las resistencias. En la esquina inferior derecha, se puede ver que hemos comenzado a soldar el bus de 8 bits una conexión de todos los circuitos del cierre. Mira lo fácil que es ver lo que es cables de señal y lo que es la distribución de energía! En la segunda foto, se puede ver el panel a la derecha de arriba abajo, con algunos componentes adicionales soldado, simplemente los ignoran por el momento. Por cada cierre IC (74HC574), hay una 100nF (0.1uF) condensador de cerámica. Se trata de condensadores de reducción de ruido. Cuando la corriente de los pines de salida se enciende y se apaga, esto puede causar la tensión a caer lo suficiente como para meterse con el funcionamiento interno de los circuitos integrados, por una fracción d e segundo. Esto es poco probable, pero es mejor prevenir que curar. Depuración de un circuito con cuestiones relativas al ruido puede ser mu y frustrante. Además, los condensadores que el aspecto del circuito que mucho más fresco y profesional! Los condensadores de 100nF asegurarse de que ex iste algún derecho actual disponible al lado del CI en caso de que haya una caída repentina de la tensión. Hemos leído en alguna parte que es práctica común de ingeniería para colocar un condensador de 100nF al lado de cada IC, "los uso como caramelos". Tenemos la tendencia a seguir ese principio. Debajo de cada fila de resistencias, se puede ver un pequeño trozo de alambre. Esta es la línea VCC hacer un pequeño salto hacia el lado superior de la tarjeta para cruzar la línea de GND principal. También hemos añadido un condensador en el extremo del bus de alimentación principal, por si acaso.
En la imagen, verás que hay una gran cantidad de cables han venido en su lugar. Todos los cables azules pequeños forman el bus de 8 bits 1 que conecta todos los circuitos del cierre. 8 bits de datos, y el bit 1 es la salida permite la línea.
En la parte superior de la tabla, hemos añadido un conector de 16 pines. Esto conecta el cierre consejo a la junta microcontrolador. Junto a esto, ver el 74HC138. Los cables azules diminutos cables Kynar. Esto es un 30 o 32 AWG (American Wire calibre) de alambre. Muy pequeña. Nos encanta trabajar con este tipo de cable. Debido a que es tan delgada, que no ocupa tanto espacio en el circuito. Si se hubiera utilizado alambre más grueso, no sería capaz de ver la tarjeta a través de todos los cables. Alambre de Kynar está recubierto con estaño, para que pueda soldar directamente después de despojarlo. N o hay necesidad de pre -estañado. Los cables azules pequeños están conectados al mismo pin en cada cierre del IC. Desde el conector en la parte superior, se puede ver ocho cables verde conectado con el autobús. Este es el bus de datos de 8 bits. Se utilizaron colores diferentes para funciones diferentes para visualizar mejor la forma en que el circuito está construido. El cable naranja conectado con el autobús es la salida permite (OE) de la línea. En el lado derecho del conector, el primer pin está conectado a tierra.
El 74HC138 es responsable de accionar la palanca del perno del reloj en el 74HC574 cierre VA. A esto lo llamamos un selector de la dirección, ya que selecciona el que uno de los 8 b ytes en la matriz de cierre queremos escribir datos. Los tres cables azules que va desde el conector a la 74HC138 es la entrada de tres bits binarios utilizados para seleccionar cuál de las 8 salidas es puesta a tierra. De cada una de las salidas en el 74HC138, hay un cable (blanco) que se ejecutan con el conector de reloj en el 74HC574 correspondiente cierre del IC. Para empezar, la tierra de soldadura y conexiones VCC. Si se utiliza la soldadura traza método para ejecutar GND / VCC líneas que quieres hacer esto antes de soldar los cables de otros en su
lugar. Un condensador de 100nF cerámica filtrado se coloca cerca de los pines de VCC y GND del 74HC138. A continuación, conecte las líneas de dirección y el 8 líneas de reloj. Si se fijan bien en el conector, se puede ver dos pines que no se utilizan. Estos serán utilizados para un botón y pantalla LED más tarde.
Esta placa es el cerebro del cubo del LED. El componente principal es un Atmel AVR ATmega32. Este es un microcontrolador de 8 bits con 32 KB de memoria del programa y 2 KB de RAM. El ATmega32 tiene 32 GPIO (General Purpose IO) alfileres. Dos de ellos se utilizará para la comunicación serie (TX + RX). Tres pines de E / S se utilizan para la ISP (programación serie en circuito). Esto nos deja con 27 GPIO para conducir el cubo del LED, botones y LEDs de estado. Un grupo de 8 GPIO (8 bits, un byte) se llama un puerto. El ATmega32 tiene 4 puertos. PORTA, PORTB, PORTC y PORTD. En PORTC PORTD y algunos de los pines se utilizan para TX / RX y la ISP. En PORTA y PORTB, todos los pernos están disponibles. Utilizamos estos p uertos para conducir el bus de datos del cierre array y la capa del transistor de selección. PORTA está conectado al bus de datos en el cierre de la matriz. Cada pin de PORTC está conectado a un par de transistores que impulsan una capa de tierra. El selector de dirección en el cierre de matriz (74HC138) está conectado a poco 0-2 en PORTB. De habilitación de salida (OE) se conecta a PORTB bit 3. En la primera imagen, se ve la placa AVR el lado derecho hacia arriba. Los grandes de 40 pines PDIP (línea doble de plástico del paquete) de chips en el centro del tablero es el ATmega32, el Brainz! Justo a la izquierda de la ATmega, verá el oscilador de cristal y los dos condensadores. A ambos lados de la ATmega hay un condensador de 100nF filtrado. Uno de GND / VCC y otro para AVCC / GND.
En la esquina superior izquierda, hay dos conectores de pines y dos condensadores de filtrado. Una 10uF y uno 100nF. El LED es conectado a VCC a través de una resistencia, y indica que está encendido. La gran 16 pines directamente sobre el ATmega se conecta a la placa matriz de cierre a través de un cable plano. El pinout en lo que corresponde a los pines en el otro tablero. Cuanto más pequeño conector de 10 pines a la izquierda, es un estándar de programación AVR encabezado ISP. Tiene GND, VCC, RESET, SCK, MISO y MOSI, que se utilizan para la programación. Junto a ella, hay un puente. Cuando esto esté en su lugar, la junta puede ser alimentado por el programador. Precaución: el poder no la placa del programador, cuando el cubo real LED está conectado al controlador. Esto podría sonar el programador e incluso el puerto USB el programador se conecta a! La segunda imagen muestra la parte inferior. Una vez más todas las líneas de VCC y GND son soldados como huellas en el protoboard o cable desnudo. Tuvimos un poco más a la izquierda sobre el alambre de metal recta, así que utilizamos esto. Los cables de color naranja conectar RESET de la ATmega, SCK MOSI, MISO y alfileres a la cabecera de programación ISP. Los cables verde PORTA conectar al bus de datos. Los cables de color azul son las líneas de dirección para seleccionar el 74HC138 y salida pe rmite (OE) para el cierre de la matriz. 1) Comience colocando el zócalo de 40 pines del IC, los 10 pines del conector ISP con un puente junto a ella y los 16 pines del bus de datos. 2) la soldadura en el lugar del conector de alimentación, condensadores e indicador LED de encendido. 3) Conecte todas las líneas GND y VCC con huellas de soldadura o alambre. Colocar un condensador de 100nF entre cada par de GND / VCC alfileres en el ATmega. 4) la soldadura en el cristal y los dos condensadores de 22pF. Cada condensador está conectado con un alfiler en el cristal y GND. 5) Ejecutar todo el bus de datos, la dirección de los cables de selección y la OE, y los cables de ISP. Transistores, botones y RS232 se añadirán en fases posteriores. En este momento, el consejo regulador se puede conectar a un programador ISP y el ATmega debe ser reconocida.
El arsenal del transistor es responsable de encendido y apagado GND para cada capa en el cubo del LED. Nuestro primer intento de esto fue una epope ya no. Compramos algunos transistores tasados a más de 500 mA, pensando que sería m ucho jugo. No recuerdo el número de m odelo.
El cubo del LED trabajado, pero no fue muy brillante, y el brillo fue inversamente proporcional al número de los LED encendido en cualquier capa dada. Además de eso, hubo algunos fantasmas. Capas no apagar completamente cuando se suponía que fuera. Huelga decir que estábamos un poco decepcionada, y comenzó la depuración. Lo primero que hicimos fue agregar resistencias para tratar de combatir el efecto fantasma. Esto elimina casi todas las imágenes fantasma, yay! Pero el cubo era todavía m uy débil, ¡bah! No teníamos ninguna transistores MOSFET poderosos o por ahí, así que tuvimos que llegar a otra solución. Hemos publicado un hilo en la sección de electrónica del foro AVRFreaks.net, preguntando si era posible utilizar dos transistores más pequeños en paralelo. Esta es la única opción disponible para nosotros a través de las piezas que tenía en la mano. La respuesta general fue, esto no funcionara, entonces ni siquiera se moleste en tratar. Incluso tenían teorías válidas y esas cosas, pero eso no nos disuadirá de tratar. Era nuestra única solución que no implicaba la espera de nuevas piezas para llegar en el correo. Acabamos tratando PN2222A, NPN amplificador de fines generales. Idealmente, usted quiere un transistor de la conmutación de este tipo de aplicaciones, pero necesitábamos 16 transistores del mismo tipo. Este transistor fue clasificado en 1000 mA de corriente, por lo que decidimos darle una oportunidad. Para cada capa, se utilizaron dos PN2222As en paralelo. Los colectores conectados a GND. Los emisores conectados entre sí, luego se conecta a una capa de tierra. La base de cada uno de los transistores se conectó a la propia resistencia, y los dos resistores conectados a un pin de salida en el ATmega. Soldamos en todos los transistores y se volvió la cosa de nuevo, y funcionó perfectamente! Si usted sabe lo que está haciendo, probablemente debería hacer una investigación y encontrar un transistor MOSFET o más adecuado. Sin embargo, nuestra solución es de probada eficacia, y también hace el truco! 1) Comience por colocar las 8 todos los transistores en el CPC y la soldadura de cada una de sus patas. 2) Ejecutar una soldadura de seguimiento entre los emisores de los 16 transistores. Conecte este soldadura seguimiento a GND. 3) la soldadura en una resistencia de cada transistor, la soldadura de las resistencias en parejas de dos. 4) Pase el cable kynar de los pines de salida en el ATmega a cada uno de los 8 pares de resistencia. 5) Soldadura juntos los colectores de los transistores en parejas de dos y ejecutar la soldadura de seguimiento o el alambre de los pares de colector para una cabecera de 8 pines.
Usted puede hacer un cubo LED sin ningún botón en absoluto, pero es bueno tener al menos un botón y algunos LEDs de estado para la depuración. Hemos añadido un botón mirar impresionante con dos construida en LED, y un botón de regular con un LED. El primer botón se monta en el cierre matriz PCB, ya que este se sienta en la parte superior de la placa AVR, y queremos que el botón de fácil acceso. Los cables se enrutan a través del cable de cinta. El segundo botón y el LED se sienta en el consejo regulador y se utiliza sobre todo para la depuración durante la construcción. Los botones están conectados entre GND y el pin de E / S en el ATmega. Un interno de resistencia pull-up en el interior del ATmega se utiliza para tirar de la clavija de alta cuando el botón no está presionado. Cuando se pulsa el botón, el pin de E / S es puesta a tierra. Una lógica 0 indica que un botón se ha presionado. Los LED también están conectados entre GND y el pin de E / S a través de una resistencia de tamaño adecuado. No conecte un LED a un microcontrolador pines de E / S sin tener una resistencia conectadas en serie. La resistencia está ahí para l imitar la corriente, y de su omisión puede soplar el puerto de E / S en el microcontrolador. Para encontrar la resistencia adecuada, sólo tiene que enchufar el led en un protoboard y probar diferentes resistencias con una fuente de alimentación de 5 V. Elija las resistencias que hacen que la luz LED se ilumina con el brillo que desee. S i utiliza LEDs de diferentes colores, debe ponerlos a prueba al lado del otro. LEDs de diferentes colores por lo general requieren resistencias diferentes para alcanzar el mismo nivel de brillo.
Vamos a dejar a usted para decidir la ubicación de los LED de su situación, pero se puede ver en las fotos de abajo como lo hicimos:
Para obtener las animaciones realmente sorprendentes, hay que conectar el cubo de LED a un PC. El PC puede hacer cálculos de punto flotante que tiene el regulador de trabajo en cámara lenta. El ATmega ha construido en un interfaz en serie llamado USART (Universal sincrónica y asincrónica de serie del receptor y transmisor). El USART comunica con niveles TTL (0 / 5 voltios). El equipo habla serie RS232 utilizando. Los niveles de señal para RS232 están en cualquier lugar de + / - 5 voltios a + / - 15 voltios. Para convertir las señales de serie del microcontrolador a algo que el puerto RS232 en un PC puede entender, y viceversa, se utiliza el Maxim MAX232 IC. En realidad, el chip que está utilizando no es de Maxim, pero es un clon compatible pin a pin. Hay algunos condensadores de 100nF de cerámica que rodean el MAX232. El MAX232 usos interiores de carga las bombas y los condensadores externos para incrementar el voltaje a niveles apropiados de RS232. Uno de los condensadores de 100nF es un condensador de filtro. El conector RS232 se encuentra en un ángulo de 90 grados para facilitar el acceso cuando el cierre bordo matriz se monta en la parte superior de la placa AVR. Se utilizó un conector de 4 pines y cortar una de las clavijas a hacer un conector polarizado. Esto elimina cualquier confusión en cuanto a qué forma de conectar el cable RS232. En la segunda foto se pueden ver dos cables amarillos que va desde el ATmega al MAX232. Se trata del nivel TTL líneas TX y RX. 1) Conecte los pines GND y VCC uso de soldadura de seguimiento o de alambre. Coloque una
cerca de 100nF condensador a los pines GND y VCC. 2) la soldadura en su lugar el resto de los condensadores de 100nF. Puedes soldar estos con restos de soldadura, así que es mejor hacer esto antes de conectar el tx / rx cables. 3) la soldadura en marcha un pin 4 0.1 "encabezado con un pin quitado. Conecte el pin junto al que fue trasladado a GND. 4) Conecte el tx / rx líneas de entrada al microcontrolador, y el tx / rx líneas de salida a la cabecera de 4 pines. Los cables que van al cabezal de 4 pines se cruzan debido a que el primer cable de serie que había utilizado este pinout.
Para conectar el cubo de LED a un puerto serie del ordenador, es necesario hacer un cable serie con un conector hembra D-Sub 9. Nuestro patrón desplegado 70 conmutadores Ethernet con la gestión del año pasado. Con cada interruptor viene un cable RS232 que nunca se utiliza. Literalmente, había un montón de cable RS232, por lo que decidió modificar uno de ellos. En el cubo de LED, un 0.1 "pin header se utiliza, por lo que el cable RS232 necesita un nuevo conector en el lado del cubo. No teníamos una hembra de 4 pines 0,1 "conector, así que utilizamos un cabezal de 4 pines hembra PCB en su lugar. El conector en el cubo del LED PCB ha eliminado uno de los p ines, para visualizar la direccionalidad de la conexión. Los números de pin va de derecha a izquierda. Configuración de pines del conector RS-232: 1) GND (DSUB9 pin 5) 2) No está conectado 3) RX (DSUB9 pin 3) 4) TX (DSUB9 pin 2) Siga estos pasos para hacer su propio cable RS232: 1) Corte del conector en un extremo del cable. Si el cable tiene una hembra y un conector macho,
asegúrese de quitar el conector macho! 2) Pele la envoltura exterior en el lado donde se ha extraído el conector. 3) en la Franja de todos los cables. 4) Ajuste el multímetro al modo de prueba de continuidad. Esto hace que el sonido multímetro cuando las sondas están conectados. Si el multímetro no tiene esta opción, utilice el modo de resistencia. Debe estar cerca de 0 ohmios cuando conecte las sondas. 5) Conecte una punta de prueba del multímetro a la clavija de la DSUB9 de 5, a continuación, todos los cables de la sonda hasta que el multímetro emite un pitido. Se han identificado el color de GND en el cable. Repita el procedimiento para el pin 2 y 3 (TX y RX). 6) Anote los colores que identifican, a continuación, cortar los cables de otros. 7) Cortar los tres cables a su tamaño, 30 mm debe hacer. 8) Pre-estaño los cables para facilitar la soldadura. Basta con aplicar el calor y la soldadura de los cables pelados. 9) Introducir una contracción del tubo a través del cable. Deslice tres pequeños tubos de contracción en los conductores individuales. 10) Suelde los cables al conector. 11) Reducir el tamaño de los tubos más pequeños primero, y luego el grande. Si usa un encendedor, no tienen la contracción del tubo por encima de la llama, simplemente póngalo en el lado de la llama. No haga que su cable basado en los colores que utiliza. Pruebe el cable para encontrar los colores correctos.
Las dos tablas están conectadas por dos cables: Un cable plano de los datos y bus de direcciones. Un cable de dos hilos de tierra y VCC.
Conecte los cables de cinta de acuerdo a la configuración de pines se muestra en la figura 2 y 3. La capa de tierra del cable de cinta conecta a la cabecera de pasador cerca de la matriz de transistores. Si el cubo está boca abajo, sólo tienes que conectarlo en el otro lado.
El ATmega32 tiene dos bytes fusible. Estos contienen valores que tienen que cargar antes de que la CPU puede comenzar, como fuente de reloj y otras cosas. Usted tiene que programar su ATmega utilizar un oscilador externo de cristal de alta velocidad y JTAG desactivar.
Hemos establecido el byte fusible inferior (lfuse) para 0b11101111, y el byte de fusibles de alta a 0b11001001. (0b significa que todo después de la b es en binario). Se utilizó avrdude y USBtinyISP (http://www.ladyada.net/make/usbtinyisp/) para programar nuestra ATmega. En todos los ejemplos siguientes, vamos a utilizar un equipo con Ubuntu Linux. Los comandos deben ser idénticos si ejecuta avrdude en W indows. avrdude usbtiny-c-p m32-U lfuse w: 0b11101111: m avrdude usbtiny-c-p m32-U hfuse w: 0b11001001: m
Advertencia: Si recibe este error, usted puede fácilmente su ATmega ladrillo! Si, por ejemplo, deshabilitar el botón de reinicio, no podrá volver a programarlo. Si selecciona la fuente de reloj mal, puede que no arranque en absoluto.
Es hora de probar si su marca LED nuevo cubo realmente funciona! Hemos preparado un programa de prueba sencilla para comprobar si todo el trabajo de los LED y si están conectados correctamente. Usted puede descargar el firmware test.hex en este paso, o descargar el código fuente y compilarlo usted mismo. Al igual que en el paso anterior, usamos avrdude para la programación: usbtiny avrdude-c-p m32-B-1 U flash: w: test.hex
-usbtiny c especifica que se está utilizando el USBtinyISP de Ladyada-p m32 especifica que el dispositivo es un ATMEGA32-B 1 dice avrdude a trabajar en una mayor velocidad por defecto. Uflash: w: test.hex especifica que estamos trabajando en la m emoria flash, en modo de escritura, con la test.hex archivo. http://www.instructables.com/files/orig/FQX/H9M5/GICYB93T/FQXH9M5GICYB93T.tmp
El código de prueba que programó en el paso anterior le permitirá confirmar que todo está conectado correctamente. Se comenzará por la elaboración de un plano a lo largo de un eje, para después pasar a lo largo de los 8 puestos de ese eje. (en avión nos referimos a una superficie plana, no un avión: p) El código de prueba recorrerá un plano a través de los tres ejes. Después de eso, se encenderán los LEDs en una sola capa a uno, a partir de la capa inferior. Si cualquiera de las capas o columnas parecen a la luz en el orden equ ivocado, es probable que haya soldado el cable equivocado a la capa equivocada o columna. Tuvimos un error en nuestro cu Si encuentra algo que está fuera de orden, sólo de-soldar los cables y soldar de nuevo en el orden correcto. Usted puede por supuesto hacer una solució n de software, sino que comen los ciclos de la CPU cada vez que se ejecuta la rutina de interrupción. En su mayor parte, el proceso es el mismo que en la etapa de programación anterior. Pero además hay que programar la memoria EEPROM. El cubo del LED tiene una fuente de mapa de bits de base almacenados en la EEPROM, junto con algunos otros datos. El firmware es programado utilizando el mismo procedimiento que con el código de prueba. Firmware: usbtiny avrdude-c-p m32-B-1 U flash: w: main.hex
EEPROM: usbtiny avrdude-c-p eeprom 1-U m32-B: w: main.eep
-U eeprom w: main.eep especifica que se está accediendo a la memoria EEPROM, en modo de escritura. Avr-gcc pone todos los datos en la EEPROM main.eep. Si no quieres jugar con el código, el cubo del LED se termina en este punto. Pero le recomendamos que pasar algún tiempo en el lado del software de las cosas tan bien. Eso es al menos tan divertido como el hardware! Si descarga los archivos binarios, usted tiene que cambiar los nombres de archivo en los comandos con el nombre de los archivos descargados. Si compilar el código fuente es el nombre main.hex y main.eep. http://www.instructables.com/files/orig/F53/QFDQ/GICYB944/F53QFDQGICYB944.tmp http://www.instructables.com/files/orig/FVZ/Y8K2/GICYB945/FVZY8K2GICYB945.tmp
El software está escrito en C y compilado con el compilador de código abierto avr-gcc. Esta es la razón principal por la que el uso Atmel AVR micro controladores. La serie de PIC de Microchip es también una buena opción, pero la mayoría de los compiladores de C cuestan dinero, y las versiones gratuitas tienen limitaciones en el tamaño del código. La ruta del AVR se realiza sin problemas mucho más libre. Sólo apt-get install el compilador avrgcc, y estás en el negocio. El software del regulador consiste en dos componentes principales, la rutina del cubo de interrupción y el código de efecto para h acer animaciones de lujo. Cuando finalmente terminó de soldar, pensamos que ésta sería la parte fácil. Pero resulta que
hacer animaciones en blanco y negro a baja resolución es más difícil de lo que parece. Si la pantalla había una mayor resolución y más colores, podríamos haber utilizado el pecado () y cos () y todas las funciones que para hacer los ojos dulces de lujo. Con dos colores (y fuera) y baja resolución, tenemos que usar un montón de si () y () para hacer algo significativo. En los siguientes pasos, que le llevará en un recorrido por algunas de las animaciones que hicimos y cómo funcionan. Nuestro objetivo es brindar una descripción de cómo se puede hacer animaciones, y los inspire a crear su propio! Si lo haces, por favor enviar un vídeo en los comentarios! http://www.instructables.com/files/orig/FJG/AU0K/GICYB94U/FJGAU0KGICYB94U.tmp
Como se mencionó en el paso anterior, el programa consta de dos pares. La rutina de interrupción y el código vigente. La comunicación entre estos dos pasa a través de una amplia voxel. Esta matriz tiene un poco de cada LED en el cubo del LED. Nos referiremos a esto como la matriz de cubo o tampón cubo a partir de ahora. La matriz del cubo es de 8x8 bytes. Dado que cada byte son 8 bits, esto nos da un búfer que es de 8 voxels, el 8 de alto y 8 woxels voxels de profundidad (de 1 byte de profundidad). volátiles cubo unsigned char
;
La rutina de interrupción se lee de la matriz del cubo durante períodos determinados y muestra la información en el cubo del LED. Las funciones de efecto escribe los estados deseados LED a esta matriz. Nosotros no utilizamos ninguna sincronización o búfer doble, ya que sólo hay un productor (o los efectos en ejecución, o la entrada de RS232) y un consumidor (la interrupción de código que actualiza el cubo). Esto significa que a lgunos voxels podría ser de la siguiente o anterior "marco", pero esto no es un problema, ya que la velocidad de fotogramas es tan alto. Cuando se trabaja con micro controladores, el tamaño del código es fundamental. Para guardar el tamaño del código y el trabajo de programación, y para hacer que el código sea más fácil de leer, hemos tratado de escribir código reutilizable tantas veces como sea posible. El código de cubo del LED tiene una base de funciones de bajo nivel de dibujo que se utilizan por el efecto de las funciones de nivel superior. Las funciones de dibujar se pueden encontrar en draw.c. Dibuja funciones incluyen todo, desde establecer o eliminar un voxel único para dibujar líneas y cuadros de alambre.
Lo primero que el ATmega hace después del arranque, es llamar a la ioinit () función. Esta función establece los puertos de E / S, temporizadores, alarmas y comunicaciones de serie. Todos los puertos de E / S en el ATmega son bidireccionales. Se pueden utilizar como una entrada o salida. Configuramos todo como salidas, excepto los pines de E / S, donde los dos botones están conectados. El pin RX de la línea serie se convierte automáticamente en una entrada cuando USART RX está habilitado. 1) DDRX establece la dirección de datos de los pines de E / S. (Registro de dirección de los datos). Un medio de salida, 0 medios de la entrada. 2) Después de direccionalidad se ha configurado, ponemos todas las salidas a 0 para cualquier ávido LED parpadeando, etc antes de la interrupción ha comenzado. 3) Para los pines configurados como entradas, el p oco PORTx cambia su función. El establecimiento de un 1 en el bit de registro PORTx permite un interior resistor. El puerto se detuvo a VCC. Los botones están conectados entre el puerto y GND. Cuando se pulsa un botón correspondiente PINX lee un poco la lógica 0. 4) Temporizador 2 está configurado y activado un temporizador de interrupción. Esto se trata en una etapa distinta. 5) Las comunicaciones serie se ha configurado y habilitado. Esto también es cubierto en una etapa distinta.
Cuando empezamos a escribir y depurar los efectos, nos dimos cuenta de que las funciones utilizando números aleatorios que aparecen las animaciones misma cada vez. Se fue al azar bien, pero la misma secuencia aleatoria cada vez. Resulta que el generador de números aleatorios en el ATmega tiene que ser cabeza de serie con un número aleatorio para crear verdaderos números aleatorios. Se escribió un bootwait pequeña funci ón llamada (). Esta función sirve para dos propósitos. 1) Crear una semilla aleatoria. 2) Escucha al pulsar un botón para seleccionar el modo de operación.
Se hace lo siguiente: 1) Ajuste contraria x 0. 2) Iniciar un bucle infinito, mientras que (1). 3) Incremento de la lucha contra x por un o. 4) Utilice x como una semilla aleatoria. 5) Retardo por un tiempo y el estado establece el led rojo. 6) Controlar al pulsar un botón. Si el botón principal se pulsa, la función devuelve 1. Si el botón PGM se presiona returnes 2. Las declaraciones de retorno sal e de la función terminando así el bucle infinito. 7) Retraso y establecer de nuevo el led verde. 8) Ver al pulsar un botón de nuevo. 9) Loop para siempre hasta que se pulsa un botón. El bucle de bucles muy rápido, por lo que la probabilidad de que usted va a parar en el mismo valor de x dos veces seguidas es muy remota. Esta es una manera muy sencilla pero eficaz para obtener una buena semilla aleatoria. Bootwait () se llama desde la función main () y su valor de retorno asigna a la variable i. Si i == 1, el bucle principal se inicia un ciclo q ue muestra los efectos generados por el ATmega. Si i == 2, entra en el modo RS232 y espera a que los datos de un ordenador.
El corazón del código cubo LED es la rutina de interrupción. Cada vez que esto se ejecuta la interrupción, se elimina el cubo, los datos de la nueva capa se carga en el cierre de matriz, y la nueva capa se enciende. Esto sigue siendo hasta que la próxima vez que se ejecuta la interrupción, en el cubo se borra otra vez, los datos de la capa siguiente se carga en el cierre de matriz, y la siguiente capa está encendido. El ATmega32 tiene 3 temporizadores / contadores. Estos se pueden establecer para contar de manera continua y desencadenar una rutina de interrupción cada vez que alcanzan un número determinado. El contador se pone a cero cuando la rutina de interrupción se llama. Utilizamos Timer2 con un prescaler de 128 y una salida Comparar valor de 10. Esto significa que el contador se incrementa en 1 por cada ciclo de CPU de 128. Cuando Timer2 alcanza el 10, que se pone a 0 y la rutina de interrupción se llama. Con una frecuencia de la CPU 14745600 Hz, 128 prescaler y salida de comparar, de 10, la rutina de interrupción se llama cada ciclo de la CPU 1408a (128 * 11), o 10.472,7 veces por segundo. Se muestra una capa a la vez, por lo que lleva 8 carreras de la interrupción para dibujar todo el cubo una vez. Esto nos da una tasa de refresco de 1309 FPS (10.472,7 / 8). En esta frecuencia de actualización, el cubo del LED es 100% libre de parpadeo. Algunos podrían decir que 1300 FPS es un exceso, pero la rutina de interrupción es bastante eficiente. A este ritmo de actualización alto, sólo utiliza alrededor del 21% del tiempo de CPU. Podemos medir lo anterior al con ectar un osciloscopio a la salida permite la línea (OE). Este se tira de alta al comienzo de cada interrupción y baja al final, lo que da una idea bastante buena de el tiempo dentro de la rutina de interrupción. Antes de cualquier interrupción programada puede comenzar, tenemos que configurar el temporizador 2. Esto se hace en el ioinit () función.
TCCR2 (Contador de registro de control 2) es un registro de 8 bits que contiene la configuración de la fuente de reloj temporizador y modo de operación. Seleccionamos una fuente de reloj con un prescaler 1 / 128. Esto significa que del temporizador / contador 2 es incrementet antes del 1 de todos los ciclos de la CPU 128. Lo establecido en el modo de CTC. (Borrar el temporizador Compare). En este modo, el TCNT2 valor del contador es constantemente comparado con OCR2 (Registro de salida Comparar 2). Cada TCNT2 tiempo alcanza el valor almacenado en OCR2, que se pone a 0 y empieza a contar a partir de 0. Al mismo tiempo, una interrupción se activa y la rutina de interrupción se llama.
Para cada ejecución de la interrupción, el siguiente tiene lugar: 1) Todos los transistores de capa se apagan. 2) habilitación de salida (OE) se eleva a la anulación de la salida de la matriz de cierre. 3) Un bucle se ejecuta a través de i = 0-7. Para cada paso un byte es outputed en el bus de datos y la i +1 es outputed en el bus de direcciones. Añadimos el 1 porque el 74HC138 tiene salidas activas bajas y la línea de reloj 74HC574 se dispara en el flanco de subida (transición de bajo a alto). 4) habilitación de salida es puesta a tierra para permitir la salida lado a otro el cierre matriz de nuevo. 5) El transistor de la capa de corriente está encendido. 6) current_layer se incrementa o se restablece a 0 si se mueve más allá de 7. Eso es todo. La rutina de interrupción es bastante simple. Estoy seguro de que ha y algunas optimizaciones que podría haber usado, pero no sin comprometer la legibilidad del código. A los efectos de este instructivo, pensamos que la legibil idad es un comercio razonable de partida para un ligero aumento en el rendimiento.
Hemos hecho una pequeña biblioteca de funciones de bajo nivel gráfico. Hay tres razones principales para hacer esto. Huellas de memoria La forma más fácil para hacer frente a cada voxel sería a través de una matriz de estabilización de tres dimensiones. De esta manera: sin firmar cubo char [x] ; (. char significa un número de 8 bits, sin signo significa que la gama es 0-255 firmado es de -128 a +127) Dentro de esta matriz de cada voxel estaría representada por un número entero, donde 0 es apagado y 1 es encendido. De hecho, podría utilizar el entero de todo y tiene 256 niveles de brillo diferente. En realidad este tratado en primer lugar, pero resultó que nuestro LED eBay había m uy pocos cambios en el brillo en relación con el ciclo de trabajo. El efecto no se notó lo suficiente como para que valga la pena. Fuimos a una solución blanco y negro. Dentro y fuera. Con un cubo blanco y negro y un buffer de tres dimensiones, estaríamos perdiendo el 7.8 de la memoria utilizada. La menor cantidad de memoria que puede asignar es de un byte (8 bits), y sólo necesita 1 bit para representar dentro y fuera. 7 b its para cada voxel se desperdiciaría. 512 * (07/08) = 448 bytes de memoria desperdiciada. La memoria es escasa en los controladores de las micro, por lo que esta es una solución óptima. En su lugar, creamos un búfer que se parece a esto: sin firmar cubo char
;
En este búfer el eje X está representado en cada uno de los bytes de la matriz de amortiguamiento.