Okay! This is a little guide intended for those just getting started out in the weird, wild world of The Ultimate In Geek: Programming your own microcontrollers. After you outgrow your Arduino, and find out that it’s really too much for a lot of applications, programming your own AVR microcontrollers is the way to go. This is not intended to teach you how to do everything- There’s plenty of documentation on each part of the process out there. I merely intend to compile what has worked for me in one central place.
Tools and supplies, software and a lot of links, after the jump!
Okay! I assume you already have a few things already, if you’ve read this far. I assume you have a soldering iron with some practice with it, a good mini-vise (That bad boy was worth every penny!), your usual assortment of wires, sockets and protoboard, a computer with an USB outlet, and some C for microcontrollers skills- What you’ve learned with your Arduino will help you with this.
Got a cup of coffee ready? Time for some reading.
1. Firstly, You will need an AVR programmer. I use Lady Ada’s USBtinyISP. Limor makes great products, and you’re supporting the community, too. You get the kit for 22 bucks, and it’s a steal at that price. It’s easily the cheapest and best In System Programmer you can get. Buy it, build it. Love it. Make it a special bed out of a cigar box to sleep in. I did!
2. Get to know your AVR microcontrollers, and order a little sampler from Mouser, Digikey, where ever. I ordered these to start, five of each. *don’t forget crystals and sockets! read the white pages for each chip to learn more* The list went: ATtiny13, ATtiny2313, ATmega168, and ATmega48. The ATtiny13 and ATmega48’s have been replaced by newer designs, so you might get lucky and find old stock somewhere, at a really good price. Basically, I went for a variety of chips, with different capacities and pins. I would have a look at the google ads on this page, perhaps you can find a good deal on hardware.
3. Software! You need software, of course, to make it all go. I use a mac, so I installed Crosspack, formerly known as AVR macpack. It includes AVRdude (AVR Downloader/UploaDEr – Kind of a stretch, if you ask me!) good ol’ GCC, and basically everything you will need in one package. Once again, Limor has provided an excellent tutorial on using AVRdude and her programmer in general. Read, learn, love. If you’ve got a windows box, you can use Atmel’s AVRStudio software, but please read Limor’s tutorial in order to learn how to use her programmer with it. I don’t have windows, so I don’t have the experience!
4. Lastly, You’ll need to wire up target boards, to hold your microprocessors while you throw code on them. EvilMadScientist Labs makes a great target board – get the development model with the ZIF socket and don’t forget the crystals for extra fanciness! This is only for a few MCU’s that you may find yourself using often. It’s not needed, really, but hey! It really looks cool, and is very tidy and professional, and ZIF sockets are just sweet! For your target board needs, though, I would like to refer you to this article I wrote not too long ago. They work nicely for me. And at about two bucks per, very inexpensive! I’ve labeled and attached all of my target boards inside small tins for tidiness, and longevities sake.
So, there you are! You now have what you need to start throwing code on AVR microcontrollers, on the cheap.
PS. Here’s something to get you started on using GCC for AVR’s. You’ll need it! GCC Tutorial for AVR
May 23rd, 2009 at 1:46 pm
[...] Read the original here: My DIY home AVR programming studio | Christopher's Internet Affliction [...]
April 13th, 2010 at 1:53 am
This is a superb piece of content, I discovered your webpage searching bing for a similar topic and arrived to this. I couldnt discover to much additional material on this piece of writing, so it was awesome to locate this one. I definitely will end up being returning to look at some other articles that you have another time.
April 19th, 2010 at 6:18 pm
I don’t agree with everything in this post, but you do make some very good points. Im very interested in this subject matter and I myself do alot of research as well. Either way it was a well thoughtout and nice read so I figured I would leave you a comment. Feel free to check out my website sometime and let me know what you think.
April 21st, 2010 at 12:28 pm
This is a very important post, I was looking for this information. Just so you know I located your webpage when I was browsing for blogs like mine, so please check out my site sometime and leave me a comment to let me know what you think.
April 22nd, 2010 at 1:18 pm
Exceptional site, where did you come up with the knowledge in this piece? I’m glad I found it though, ill be checking back soon to see what other articles you have.
April 22nd, 2010 at 6:38 pm
This is a very interesting post, I was looking for this knowledge. Just so you know I found your site when I was searching for blogs like mine, so please check out my site sometime and leave me a comment to let me know what you think.
April 26th, 2010 at 12:09 pm
I don’t agree with everything in this blog, but you do make some very good points. I’m very interested in this topic and I myself do alot of research as well. Either way it was a well thoughtout and nice read so I figured I would leave you a comment. Feel free to check out my website sometime and let me know what you think.