The aim of this project is to explore the use of Objective Development's V-USB.
V-USB is a software-only implementation of a low-speed USB device for Atmel’s AVR® microcontrollers
In order to do this I will be implementing one of the code examples from the V-USB package. Although not new to microcontrollers (I started by writing machine code for the Intel 8080 in the late 1970s!), I am quite new to the C language and the open source packages; WinAVR™ (pronounced "whenever") C / C++ compiler for AVR® micros and MinGW Minimalist GNU for Windows. This was indeed a difficult journey!
What I hope to do here is to lead you through to the point I reached (see video below) where I managed to turn an LED on and off from my PC using a USB connection.
In order to get this working I had to trawl all over the internet and, I am sorry, but I can't possibly give a name check to all those sites where I picked up snippets of information.
I have to say though, without Code and Life's AVR ATtiny USB Tutorial I would never have made it. I hope my effort will enable you to sail through to that end result without having to look elsewhere!
NOTE: If you are reading this, you have found this page before I have finished! Pop back from time to time and you will find that the information will grow!
Step 1 - The Breadboard
Step 2 - Install WinAVR
I decided, for my sins, to make this a Windows-based project. Two reasons:
- I have practically zero experience with Linux
- I am guessing that a lot of newbies reading this will be in the same boat, and I don't want to make them think you have to lean Linux before you can enjoy AVR programming.
If you already use and understand WinAVR then you can skip this bit, otherwise go to my tutorial page WinAVR to install and practice using it. This will get you to the point where you can write C programs and get them running on an AVR Micro.
Here is what success looks like!