Microcontroller Programming

10 credits

Syllabus, Master's level, 1TE663

A revised version of the syllabus is available.
Code
1TE663
Education cycle
Second cycle
Main field(s) of study and in-depth level
Computer Science A1N, Embedded Systems A1N, Technology A1N
Grading system
Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
Finalised by
The Faculty Board of Science and Technology, 20 June 2012
Responsible department
Department of Materials Science and Engineering

Entry requirements

120 credits in science/engineering, of which 60 credits in computer science, including courses in Computer Architecture and Imperative Programming. Alternative: 120 credits in science/engineering, of which 60 credits within electrical engineering, including courses in analogue and digital electronics, and imperative programming

Learning outcomes

After passing the course the student should be able to

  • design and implement an embedded system based on an eight bit microcontroller, taking into account energy conservation and possible software errors,
  • program a microcontroller using C, including hardware configuration and interrupt service routines,
  • manage parallel processes with different priority and real time constraints without the aid of an operating system,
  • select data types and algorithms suitable for the architecture and instruction set of a given microcontroller,
  • give a detailed description of limitations of the chosen system design,
  • debug a microcontroller application using different tools.

Content

Typical architecture and internal units of a microcontroller, different types of memory. Interfacing of analogue and digital signals, including basics of electronics. Serial communications. Low level programming in C, drivers, interrupts service routines. Management of parallel processes without the aid of an operating system, process priority, timing analysis, finite state machines. Instruction and register sets and addressing modes for a given microcontroller family. Efficiency aspects on different data types and code snippets in C. Development tools.

Instruction

Lectures, laboratory work and project supervision.

Assessment

Written and oral presentation together with demonstration of project work.

FOLLOW UPPSALA UNIVERSITY ON

facebook
instagram
twitter
youtube
linkedin