You've tried out a great project using an Arduino, and you want to give it as a gift to someone, or install it somewhere permanently. But it's hard to say goodbye to your faithful 'duino, and even harder to justify 25 cents worth of LED's connected to a $40 board as a good final product. This class will teach you how to take your prototype from the Arduino and simplify it down to the bare minimum of parts required, so you can build smaller, more cost-effective projects and even gift them or integrate them into something permanently, without buying an entire Arduino each time. This class will also focus on porting Arduino code over to an ATMega168 and an ATTiny45. Code will be posted along with schematics and notes after class.
What you will learn?
- What is an Arduino (revisited)?
- Simplifying the Arduino down to basic parts.
- Introduction to ICSP programming
- Installing appropriate software for ICSP programming
- Assembling the ATMega168 Essentials
- Programming .hex for the first time
- Understanding C code a little deeper
- Porting code to ATTiny45
Environment: Basic breadboarding skills, basic Arduino skills, basic C skills (If you can program an Arduino, you're solid). This will be 85% hands-on lab, 15% lecture, so bring your enthusiasm for making! I will be walking the class through each step, so that no one is left behind.
What to bring with you: Laptop with Arduino environment installed, Arduino and USB cable (I cannot verify if the spinoffs (Freeduino, Arduweenie) work, so please bring an official board, as the usb capability is required), a small notebook to jot down notes.
Students will get a lab kit including a ATMega168 Microcontroller, a ATTiny45 Microcontroller, a 16 Mhz crystal, 2x 22pF capacitors, 2x 100nF capacitors, 4x LED's with resistors, 1x push-button switches (the kind that can be pressed into a breadboard), LM7805, 100uF capacitor, 10uF capacitor, 9V Battery Clip, 9V Battery, assorted breadboard wires, and a solderless breadboard.
Pre-requisites: Please familiarize yourself with this Arduino sketch: http://www.arduino.cc/playground/Code/MegaISP. If you get stuck anywhere along the way, email me at jlupinsk~at~stevens~dot~edu and I'll help you out with getting started. USBTiny's will also work for programming the chips, but I will be focusing on the MegaISP route in class.
Taught by Jarek Lupinski