Use an attiny13a, two LEDs and a greeting card speaker to create a blinking Marioman that plays the Super Mario Brothers theme song.
This can be an easy low-cost project for anyone who is looking for a fun way to break into AVR programming!
The notes of the songs are generated by a square wave outputted on a single pin of the AVR microcontroller. The LEDs that alternate on each note are connected to 2 pins each of the same chip.
Step: 1 Materials and Contruction
- 1 attiny13a
- 2 LEDs – any LEDs will do
- 1 lithium coin cell battery
- 1 coin cell holder
- 1 small speaker from a musical greeting card
Total cost of materials ~ $5
The two LEDs were attached directly to two pins each of the attiny13A.
Two pins are used for each LED, the second pin is set low to use as a ground connection.
The current limit of the I/O pins on the AVR will prevent the LEDs from drawing too much so a resistor is not necessary to connect in series.
The speaker used is typical of one found in a musical greeting card, any small speaker will do, given that this is outputting a square wave tone, it’s not too important to worry about driving the speaker or sound quality.
Step: 2 Soldering the AVR to the LEDs and Speaker
For the LEDs to go reach out like arms one pin is bent over the AVR each side.
Orienting the AVR this way makes it easy to connect to the speaker (second image) since the connections are on the two bottom pins.
For aesthetics you want to the front of the chip facing out so be sure the speaker is facing the same way when it is attached.
Step: 3 Programming the attiny13a
There are plenty of different options for programming AVRs.
for this project the USBtiny was used which is available as a kit from ladyada’s site
To connect the AVR to the programmer you can either attach wires to the female socket and plug them into a breadboard or better yet get a cheap AVR programming adaptor like this
along with 3×2 male headers to connect the plug.
For more detail: Blinking, Singing, Marioman using Attiny microcontrollers