Arduino and Microcontrollers Next Steps Class

So you’ve played around with an Arduino board and maybe a couple of other microprocessors.

You’ve downloaded the examples, compiled the code and watched the blinking lights. So now what... While not quite an “Advanced Arduino” course but definitely not an “Introduction to Arduino” either,

this course is somewhere in between. We’ll look at other flavors of the Arduino boards, and several other popular microcontrollers. We’ll explore the tools used to start experimenting with these chips, then move into examples that demonstrate how they

are different and ways they are alike.

You’ll learn how to go from a device datasheet to working interface code and how some of the Arduino supplied libraries were

created. Later we’ll focus on using the peripheral devices within most popular microcontrollers. Bring your projects and

questions as the final class segment will be dedicated to whatever topics the class is most interested in.

Day 1: Introductions

Microcontroller review.

What Is Arduino?

Other Devices – Demo of other devices and the tools required.

Programming Tools, Programmer’s Editors

Day 2: Software Libraries

Review datasheets of several devices and create interface code without downloading any libraries.

later I'll demonstrate how to put your code into an Arduino library.

Day 3: Interrupts

Timers, USART/UART, TWI, SPI, ADC and DMA

Day 4: Students Choice:

Robot Motion Control, PWM speed control, Object Avoidance.

ZigBee, Bluetooth & WiFi communications

MEMS Devices Accelerometers, Compass, Gyro

Notes:

1. Some students needed the drivers for the Uno Clone provided with the class (find them attached below CH341SER.zip)

(Check device manager COM ports. You should have an entry for USB-SERIAL CH340)

2. Some students had problems compiling with the WinAVR compiler due to a bad .dll in the install package.

download msys-1.0.zip (below) unzip it and copy it to C:\WinAvr\utils\bin replacing the existing file.

(*you may have installed WinAVR in a different location than described above.)

Here's the steps to test compiling with WinAVR:

1. open the \ATMega\328\UART_PB folder that came with the class file distribution

(available below Arduino_Micro_Next_Steps.zip)

2. double click on cmd_here.cmd

3. In the command window that appears enter MAKE and check the output for ERRORS

(If the output ends with a listing of AVR Memory Usage there were no errors)