Print

Embedded Software

Code

IT-ESW1

Version

2.0

Offered by

ICT Engineering

ECTS

5

Prerequisites

Similar courses to SDJ2 (especially thread programming) at your home institution. Similar courses to CAO1 (Computer Architecture and Organisation) at your home institution.

Main purpose

The purpose is to qualify the student to apply basic concepts in real-time programming, and to implement real-time programs using the C-programming language on embedded micro-controllers and using interfaces (APIs) to a number of sensors and actuators.

Knowledge

The student should be able to account for:
  • Analysis of an embedded problem and documentation of the analyse- and design- process in UML
  • Basic concepts of programming with a Real-time Operating System (RTOS)
  • Issues like deadlocks etc.
  • Real-time C-programs for embedded Micro Controller Units
  • Dynamic memory management in C
  • Unit test of C-programs

Skills

The student should be able to exemplify:
  • Analyse and design of an embedded software solution
  • Implement functioning real-time programs in C using FreeRTOS
  • Implement programs in C using different C API’s and libraries for hardware drivers etc.
  • Document C source code with Doxygen 

Competences

The student should be able to:
  • Design and construct real-time systems using FreeRTOS and C-programming
  • Construct real-time programs
  • Apply FreeRTOS timers in real-time programs in C
  • Apply synchronization and avoid dead-locks
  • Apply memory management, resource sharing and control

Topics

  • C Programming
  • Analyse and design Real-time systems using UML
  • FreeRTOS
  • Tasks
  • Queues
  • Timers
  • Memory management
  • Resource sharing
  • Semaphores and mutexes
  • Synchronization
  • Unit test in C
  • Simple integration test

Teaching methods and study activities

Activities change between theory, tasks, practical exercises
 
CATEGORY 1
Participation of lecturer and students
Initiated by the lecturer
30 hours-  22%
  • Lessons, scheduled
  • Project guidance
  • Exams and tests
CATEGORY 2
Participation of students
Initiated by the lecturer
25 hours - 18%
  • Assignments, self-study
  • Project and group work
  • Homework and preparation for exams
  • Evaluation of the teaching
CATEGORY 3
Participation of students
Initiated by students
68 hours - 50 % 
  • Homework and preparation for exams
  • Self-study
  • Project work
  • Study groups
  • Literature search
CATEGORY 4
Participation of lecturer and students 
initiated by students
15 hours -10 %
  • Hands-on
  • Group debates

Resources

Notes and on-line books

Evaluation

Permit criteria’s for attending examination:
  • Mandatory course activities completed

Examination

Three hour written exam.
Allowed tools: Laptop
External examiner.
 
The course must be passed before graduation. 

Grading criteria

Examinations account for  100 % of final grade

Additional information

Expected workload 11 weeks of 4 lessons per week.
 
Required workload for students is estimated to 137.5 hours where approximately 2/3 is self-study including exercises and examination preparation.

Responsible

Lars Bech Sørensen (LBS)

Valid from

9/1/2019 12:00:00 AM

Course type

Compulsory Course for all ICT Engineering
4. semester

Keywords