MCUInterfaceDesign
Microcontrollers and Physical Interface Design
A course on how to build physical interfaces, concentrating on the use & programming of microcontrollers, and how to connect input-devices (i.e. sensors) and output-devices (i.e. actuators) to a simple microcontroller-board like the Arduino or the Teensy.
Some of the topics covered in this course
- Microcomputer system architecture
- Basic electronics
- Programming in C / C++
- Serial communication protocols
- Multi-threaded & interrupt-driven programs
- Physical interface design
Preparation
I ordered some new Arduino & Teensy boards. But if you have an Arduino or an Arduino-based project already, bring it along.
- Bring your laptop
- Download & install the Arduino IDE
- Linux users can add the Puredyne PPA to their /etc/apt/sources.list, then install arduino using your favourite package-manager
- Download & install the Teensyduino extensions for the Arduino IDE
- If you are feeling adventurous, download and install the stuff needed for AVR-development in C
Course Schedule
Day 1; Tuesday April 20
I will be joined by Michael today, and we'll be taking turns explaining & demonstrating the important fundamental concepts involved in using microcontrollers
- What is an interface?
- What is a microcontroller? (Differences & similarities between microcontrollers and microcomputers)
- How to connect an Arduino / Teensy to your laptop & start programming
- The Arduino IDE vs. programming in C with avr-libc
Day 1 Wiki-page
Then i will probably demonstrate & explain one or two interfaces i have built recently. (if there still is time)
Day 1b; Thursday April 22
Because the students from Lens-Based Media have lectures on tuesday (and the Networked Media students have their Thematic Project day on thursday), i decided to do the important First Day again for the Lens-Based Media students.
Day 1 Wiki-page
Day 2; Wednesday April 28
- Basic electronics theory
- Electronic Components
- Reading electronic symbols & circuit diagrams
- Soldering lessons
- Building Electronic circuits
- How to connect Interesting Stuff™ to an Arduino / Teensy board
Day 2b; Wednesday May 5
Day 2 Wiki-page
Day 3; Wednesday May 19
- Brainstorming for projects
I would like each of you to come up with an idea (or two) for a physical interface or other electronic project you would like to build. We will discuss the plans for the projects you have come up with, exchange ideas, and get to work. I will order components & pieces needed to build the projects.
Day 3b; Thursday May 20
Day 3 again, with the Lens-Based Media students
Day 4; Friday May 21
Working on the projects
Day 5; Friday June 4
Working on the projects
Day 6; Friday June 18 ???
Working on the projects
- special** **presentation and discussion** moderated by Barbie, the computer engineer witha phd in FUN:: http://gizmodo.com/5470587/computer-engineer-barbie-has-a-phd-in-fun-and-breaking-down-stereotypes