I got into AVR chips because they are easy to program, and that has become more and more true over the years with the ever-falling cost of programmers. But it’s pretty easy to make a mistake when burning the fuses on the chips and if you don’t have a proper programmer (my first programmer was a horrifyingly slow self-built DAPA cable) you’ll have a brick on your hands. This little board may be able to help in that situation. I gave the USB µISP a try this week. The half-stick-of-gum-sized board flashes firmware like a champ and includes a rescue pin for when you have clock source problems.
What can you do with ten buttons and ten lights? A lot.
[Andrew] and [Nathan] found a collection of Hale Research keypads being thrown out, and decided to host the Keypad Contest. The goal of the contest was to create something nifty using the ten buttons and ten lights on the keypad, and an ATtiny2313 that replaced the original 8051-compatible microcontroller in the device.
[Andrew] wanted to try making PCBs with his home-built CNC machine, so he milled out USBtinyISP programmers for the ATtiny2313. Then he gave out eleven development kits to a group, and explained how to develop on the hardware.
After a month of hacking, seven people completed projects. The winner was an internet radio controller, which had the keypad sending serial data to a TP-Link WR703N router. The router used a USB sound card and OpenWRT firmware to stream music. The runner up was a timing game called “Capture”.
The contest write up has details on all seven projects. [Andrew] and [Nathan] were successful in getting software engineers to try hardware with this contest, resulting in some neat hacks. After the break, check out a video demo of the internet radio controller.
You may be able to write the most eloquent code in the history of embedded systems but without a way to run it on the hardware it will be worthless. In this installment of the tutorial series we will:
- Look at some of the available AVR programmer options
- Place the microcontroller on a breadboard and connect it to a power supply and a programmer.
- Use programming software to send some example code to the microcontroller
If you missed Part 1 take a few minutes to review that portion of the tutorial and then join us after the break.
- AVR Programming 01: Introduction
- AVR Programming 02: The Hardware
- AVR Programming 03: Reading and compiling code
- AVR Programming 04: Writing code
[Ladyada] takes some time out of her day to explain the common options available for connecting projects through USB. You may be thinking that you already do this with an Arduino. Well, yes and no. The Arduino uses one of these options, an FTDI chip that handles the USB on one side and spits out microcontroller-friendly voltage signals on the other. This chip can be used with your projects, a topic that [Phil Burgess] covered in great detail.
In the video after the break you’ll also hear about USB to serial converters which connect to the Universal Serial Bus and output the traditional 12-20V serial signals (with the exception of cheap knockoff cables like the one from last week). These need to be stepped down to 5 volts or less using a MAX232 chip to work with your project.