Estimados, este es mi primer Tema, no soy de los que escriben mucho, pero esta página me ha servido en más de una ocasión, por lo que quisiera devolver el favor.
He estado el último tiempo trabajando en mi proyecto de Título que trata de un sistema de control de luces para espectáculos mediante un computador con un cable cruzado UTP y de forma inalámbrica por Xbee (se puede elegir el enlace). Para ello utilizé como corazón de procesamiento el famoso AVR Atmega168 (Famoso por plataforma Arduino, entre otras) de la compañía ATMEL. Este microcontrolador es de su Familia de uC de 8 bits y tiene varias versiones como el Atmega48, Atmega88, Atmega168, Atmega328, que prácticamente cambia el tamaño de la memoria Flash nada más.
Antes utilizaba el Atmel 89S52 que se encontraba dentro de la arquitectura 8052 para mis proyectos. Nunca me fui a los pic como la mayoría y tampoco quiero discutir cual es mejor o peor. Para mí el mejor es el que se adecúa a las necesidades y las realidades de cada uno, ya que a veces es más fácil encontrar uno que otro, o simplemente uno aprende a utilizar una línea de microcontroladores y con esa se queda porque acomoda y aprender a manejar todos es una pérdida de tiempo (Muchos se parecen y no es difícil cambiarse si uno quisiera, pero el tiempo muchas veces no es lo que sobra).
La cosa es que decidí cambiarme de la arquitectura 8052 a la línea de los AVR (Arquitectura RISC), que sin dudas es tremendamente poderosa.
Para ello mi intención era seguir utilizando el lenguaje C para la programación y mediante el AVRGCC es totalmente posible, a parte que el IDE AVR Studio 4 (Ahora ya está el 5) es muy bueno y lo entregan totalmente gratis!
Tuve que estudiar mucho, sobre todo de la "hoja" de datos (parece una biblia), y de diversos foros, donde por lo general la información está en inglés (a veces encontré en alemán, idioma que también domino, pero en español muy muy poco), para aprender a utilizar este bichito. Esto terminó en una buena cantidad de circuitos y ejemplos de códigos que decidí reunir, explicar y desarrollar para transformar en lo que fue el Proyecto de Licenciatura (Necesario para titularme, entregado junto con el proyecto de Título, pero que nadie pezca) y aprovechar de aportar con ello a la comunidad de electrónicos hispano-parlantes, así no se pierde el esfuerzo en un rincón de la biblioteca de la universidad.
Es el archivo que adjunto (PDF), está bastante completo (Entradas y salidas (I/O), utilización del ADC, del Comparador Analógico, Timers (Temporizadores), Counters(Contadores), USART(con chip FTDI para comunicación con USB y el Computador), memoria EEPROM, Interrupciones, Power Management (Manejo del consumo de energía), bus I2C, bus SPI, Programación ICSP, Watchdog) sin embargo no alcanzé a desarrollar todo por tiempo.
Aún así espero que le sirva a todo interesado en el tema del uso de los AVR ya que en mi opinión son muy buenos y potentes, a aparte de poder reutilizar el código en diversos otros micros de la familia. ATMEL es una muy buena compañía que está tirando para arriba bastante, ahora con sus micros de 32 bits, tienen harta info disponible (en inglés), trabajan mucho con el sector automotriz entre otros, sus hojas de datos están bien hechas y completas (por lo general) y tienen una buena comunidad (AVRFreaks).
En el trabajo se cubre el desarrollo de código con el Lenguaje C, como había mencionado, mediante GCC, y se muestra cómo adjuntar el AVRGCC al AVR Studio 4 y cómo utilizar este entorno de trabajo, cómo cargar los archivos al micro, están los circuitos para los ejemplos y todos los códigos.
Éstos micros también se pueden programas con Assembly (ASM), pero eso yo no lo cubro.
Eso sería, nuevamente espero que le ayude a la mayor cantidad de interesados posibles y agradezco a todos los que han aportado y me han ayudad a mí en mi desarrollo como Ingeniero Electrónico (Que fascinante mundo!).
Respecto a los derechos de autor del documento simplemente no lo utilizen de mala forma, cualquier uso de código/circuito (aunque la mayoría son muy básicos) se agradecería el correspondiente agradecimiento/nombramiento del autor original. Aparte de eso, pueden hacer lo que les parezca con él, ojalá difundirlo a todos los que les dificulta el inglés.
Sin embargo agrego que si quieren avanzar en este mundo es necesario que incluyan el aprender inglés como parte de sus proyectos, ya que ahí es donde se encuentra el 90% de la info.
El Proyecto de Título lo subiré pronto también, ya que muestra cómo comunicarse con el micro mediante una aplicación en el PC (Visual basic 2008 Express, que es gratis) y manejar la potencia de las luces (TRIAC y optotriac) con los deslizadores del computador. La comunicación es mediante RS485 (cableada) y Xbee (inalámbrica).
También se ve cierto desarrollo en torno a programas de modelado (Pro Engineer, Rhino, 3Ds Max) y de diseño (Illustrator, Photoshop) para la carcasa del prototipo y diseño de tarjetas impresas (PCB) mediante el Eagle y sus vistas con Eagle 3D.
Incluye el código del micro y de toda la aplicación (Cómo se realizó el protocolo de comunicación, cambio de enlace, recepción y transmisión de datos en VB2008E, creación de archivos con extensión propia, etc.).
Se viene pronto!
Sin más, les mando un saludo a todos.
PD: Se me hizo largo el tema!
He estado el último tiempo trabajando en mi proyecto de Título que trata de un sistema de control de luces para espectáculos mediante un computador con un cable cruzado UTP y de forma inalámbrica por Xbee (se puede elegir el enlace). Para ello utilizé como corazón de procesamiento el famoso AVR Atmega168 (Famoso por plataforma Arduino, entre otras) de la compañía ATMEL. Este microcontrolador es de su Familia de uC de 8 bits y tiene varias versiones como el Atmega48, Atmega88, Atmega168, Atmega328, que prácticamente cambia el tamaño de la memoria Flash nada más.
Antes utilizaba el Atmel 89S52 que se encontraba dentro de la arquitectura 8052 para mis proyectos. Nunca me fui a los pic como la mayoría y tampoco quiero discutir cual es mejor o peor. Para mí el mejor es el que se adecúa a las necesidades y las realidades de cada uno, ya que a veces es más fácil encontrar uno que otro, o simplemente uno aprende a utilizar una línea de microcontroladores y con esa se queda porque acomoda y aprender a manejar todos es una pérdida de tiempo (Muchos se parecen y no es difícil cambiarse si uno quisiera, pero el tiempo muchas veces no es lo que sobra).
La cosa es que decidí cambiarme de la arquitectura 8052 a la línea de los AVR (Arquitectura RISC), que sin dudas es tremendamente poderosa.
Para ello mi intención era seguir utilizando el lenguaje C para la programación y mediante el AVRGCC es totalmente posible, a parte que el IDE AVR Studio 4 (Ahora ya está el 5) es muy bueno y lo entregan totalmente gratis!
Tuve que estudiar mucho, sobre todo de la "hoja" de datos (parece una biblia), y de diversos foros, donde por lo general la información está en inglés (a veces encontré en alemán, idioma que también domino, pero en español muy muy poco), para aprender a utilizar este bichito. Esto terminó en una buena cantidad de circuitos y ejemplos de códigos que decidí reunir, explicar y desarrollar para transformar en lo que fue el Proyecto de Licenciatura (Necesario para titularme, entregado junto con el proyecto de Título, pero que nadie pezca) y aprovechar de aportar con ello a la comunidad de electrónicos hispano-parlantes, así no se pierde el esfuerzo en un rincón de la biblioteca de la universidad.
Es el archivo que adjunto (PDF), está bastante completo (Entradas y salidas (I/O), utilización del ADC, del Comparador Analógico, Timers (Temporizadores), Counters(Contadores), USART(con chip FTDI para comunicación con USB y el Computador), memoria EEPROM, Interrupciones, Power Management (Manejo del consumo de energía), bus I2C, bus SPI, Programación ICSP, Watchdog) sin embargo no alcanzé a desarrollar todo por tiempo.
Aún así espero que le sirva a todo interesado en el tema del uso de los AVR ya que en mi opinión son muy buenos y potentes, a aparte de poder reutilizar el código en diversos otros micros de la familia. ATMEL es una muy buena compañía que está tirando para arriba bastante, ahora con sus micros de 32 bits, tienen harta info disponible (en inglés), trabajan mucho con el sector automotriz entre otros, sus hojas de datos están bien hechas y completas (por lo general) y tienen una buena comunidad (AVRFreaks).
En el trabajo se cubre el desarrollo de código con el Lenguaje C, como había mencionado, mediante GCC, y se muestra cómo adjuntar el AVRGCC al AVR Studio 4 y cómo utilizar este entorno de trabajo, cómo cargar los archivos al micro, están los circuitos para los ejemplos y todos los códigos.
Éstos micros también se pueden programas con Assembly (ASM), pero eso yo no lo cubro.
Eso sería, nuevamente espero que le ayude a la mayor cantidad de interesados posibles y agradezco a todos los que han aportado y me han ayudad a mí en mi desarrollo como Ingeniero Electrónico (Que fascinante mundo!).
Respecto a los derechos de autor del documento simplemente no lo utilizen de mala forma, cualquier uso de código/circuito (aunque la mayoría son muy básicos) se agradecería el correspondiente agradecimiento/nombramiento del autor original. Aparte de eso, pueden hacer lo que les parezca con él, ojalá difundirlo a todos los que les dificulta el inglés.
Sin embargo agrego que si quieren avanzar en este mundo es necesario que incluyan el aprender inglés como parte de sus proyectos, ya que ahí es donde se encuentra el 90% de la info.
El Proyecto de Título lo subiré pronto también, ya que muestra cómo comunicarse con el micro mediante una aplicación en el PC (Visual basic 2008 Express, que es gratis) y manejar la potencia de las luces (TRIAC y optotriac) con los deslizadores del computador. La comunicación es mediante RS485 (cableada) y Xbee (inalámbrica).
También se ve cierto desarrollo en torno a programas de modelado (Pro Engineer, Rhino, 3Ds Max) y de diseño (Illustrator, Photoshop) para la carcasa del prototipo y diseño de tarjetas impresas (PCB) mediante el Eagle y sus vistas con Eagle 3D.
Incluye el código del micro y de toda la aplicación (Cómo se realizó el protocolo de comunicación, cambio de enlace, recepción y transmisión de datos en VB2008E, creación de archivos con extensión propia, etc.).
Se viene pronto!
Sin más, les mando un saludo a todos.
PD: Se me hizo largo el tema!