Print
Code
IT-ESW1
Version
4.0
Offered by
ICT Engineering
ECTS
5
Prerequisites
IT-SDJ2 (especially thread programming) and IT-CAO1 or similar courses.
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.
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
Teaching methods and study activities
4 lessons per week in 12 weeks.
Activities change between theory, tasks, practical exercises.
Required workload for students is estimated to 137.5 hours where approximately 2/3 is self-study including exercises and examination preparation.
Resources
The C Programming Language (2nd Edition) by Brian W. Kernighan, Dennis M. Ritchie
Evaluation
Examination
Exam prerequisites:
• Mandatory course activities completed
• The student must have an attendance of at least 75% in order to qualify for the exam. Students who do not have at least 75% attendance will automatically fail the ordinary exam.
Exam type:
Individual written exam, 3 hours.
Internal assessment.
Tools allowed:
Course literature according to the course description
Personal notes on paper
Access to local pdf-files
Laptop (no access to general internet)
Re-exam:
Same as ordinary exam
Grading criteria
Grading based on the Danish 7-point scale.
Additional information
Responsible
Lars Bech Sørensen (LBS)
Valid from
2/1/2023 12:00:00 AM
Course type
Keywords
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