EE 351 - Fall 2021

EE 351: Microcontrollers - Fall 2021

Instructor: Kevin Wedeward (Workman Center 221, 835-5708, kevin.wedeward@nmt.edu, https://sites.google.com/nmt.edu/kevin-wedeward/)

Class Day, Time and Place: TR 12:15pm-01:30pm in Workman Center 109

Office Hours: TWR 02:30pm-04:00pm, by appointment, and any time office door is open

Textbook (Required):

  • The AVR Microcontroller and Embedded Systems Using Assembly and C: Using Arduino Uno and Atmel Studio, 2nd Edition, by Sepehr Naimi, Sarmad Naimi and Muhammad Ali Mazidi, MicroDigitalEd, November 2017, ISBN-10: 0997925965, ISBN-13: 978-0997925968

  • Online-only parts of the book, tutorials and other material can be found on the publisher's website: http://www.microdigitaled.com/AVR/AVR_book_v2.htm

Integrated Development Environment (One of the Following is Required):

Prerequisite: EE 271 (Mathematical Engineering)

Course Description: Introduction to microcontrollers. Topics include: programming in assembly and C, bus structures, interrupts, timing, real-time control, parallel and serial interfaces, support devices, disassemblers, and related topics.

Topics:

  • Digital logic, terminology and numbering systems (binary, decimal, hexadecimal)

  • Fundamentals of microcontrollers and microprocessors

  • Architecture of AVR microcontrollers, and specifically the ATmega328 family

  • Instruction set, assembly programming and the hex file

  • Programming a chip and/or evaluation board

  • C programming

  • Digital Input/Output

  • Timers

  • Interrupts

  • Input capture, wave generation and Pulse Width Modulation (PWM)

  • Analog-to-digital converters (ADC)

  • Serial Peripheral Interface (SPI)

  • Inter-Integrated Circuit (IIC or I2C)

Course Outcomes: Students will be able to

  • read, interpret and use the AVR Instruction Set Manual and data sheets for the ATmega328 family of microcontrollers;

  • develop, debug and simulate assembly and C programs for the AVR microcontroller in an Integrated Development Environment (IDE);

  • program an evaluation board based upon the ATmega328 family of microcontrollers; and

  • interface with a variety of peripherals.

Grading:

  • Homework - 33%

  • Projects - 33%

  • Exams - 34%