Todo sobre interrupciones con AVR

Publicado por en Programación el 29/09/2010

imagen: electronics-lab

La interrupciones en el mundo de los microcontroladores son extremadamente útiles y comunmente utilizadas en todo tipo de proyectos. Hacen que el chip esté atento a un particular evento y una vez detectado, detiene su ejecución actual para ejecutar un trozo de código específico llamado ISR (Interrupt Service Routine). Que se puede hacer con interrupciones? Pueden ser utilizadas para un amplio abanico de cosas como para despertar el microcontrolador del modo Sleep al pulsar un botón (y así ahorrar energía), monitorizar un temporizador para que cuando llegue a un determinado valor se ejecute un código específico y todo esto sin preocuparnos por nuestro programa principal.

Os dejo dos estupendo enlaces, que aunque estén en inglés, serán de gran ayuda para conocer los secretos de la interrupciones con AVR y cómo utilizarlas en casos prácticos.


Leer más

Tetrapuzz: Tetris con ATmega168 y pantalla LCD

Publicado por en Electrónica el 15/01/2010

No es la primera vez que mostramos por aqui el ya clásico juego Tetris en acción en varios dispositivos. Os dejo por aqui un interesante proyecto que utiliza un ATmega168 junto con un LCD KS0108 (viejo conocido y maldito) y unos pulsadores que funciona impecablemente. El autor pretendía realizar el juego de forma que sea lo más portable posible y ha publicado un repositorio de código en Google code donde pronto se podrá descargar el código fuente.

Video y enlace a continuación...

Leer más

AVGA: Mario Bros en un AVR Atmega168

Publicado por en Electrónica el 16/11/2008

AVGA es una pequeña librería desarrollada por Jaromir Dvorak capaz de emitir una señal de video PAL de 192x144 con 16 colores en un microcontrolador ATMega168 y pensada para el desarrollo de juegos. Como se puede ver en su página web, podemos ver varios ejemplos, entre ellos el mítico Mario Bros o incluso PacMan. Lo interesante de dicha librería es que desde el punto de vista del hardware, no necesita de ningún componente externo, por lo que el AVR se encarga de todo.

Dispone de una API con la cual podremos desarrollar nuestros juegos usando tileados, scrolls, letras y sonido.

Video y enlace altisimamente recomendado a continuación...

Relacionado:
- (Video) Juego Mario Bros Mecánico
- (Video) Cómo se hace: Un Candado
- (Video) Contador mecánico para contar visitas de tu web

via hackedgadgets

Leer más

Arduino: Reproducir audio PCM de 8bits en AVR ATMega168

Publicado por en Electrónica el 05/01/2008

En la página de Arduino Playground podemos ver un estupendo código de ejemplo para reproducir un sample de audio PCM de 8bits usando una salida PWM y dos timers internos.

La cantidad de memoria disponible para alojar una sample obiamente es limitada y ronda los 13000 bytes de máximo. En [utl=http://www.uchobby.com/index.php/2008/01/01/pwm-sound-generation/#comments]uchobby[/url], donde también se han hecho eco de este código, hablan sobre la posibilidad de utilizar una memoria I2C EEPROM para almacenar un sample más grande, pero hay dudas sobre si la memoria sería capaz de leer los datos internos tan rápido.

Esto hay que probarlo!!! Enlace a continuación...

Relacionado:
- (HOWTO) Guía rápida para empezar con Arduino
- (Video) Arduino Wireless POV funcionando en la Arroutada 07
- (Video) Control DC y Temperatura con Arduino
- (Video DIY) BricoGeek Arduino Wireless POV (Parte 1)

Leer más