Print

Hardware Oriented programming

Code

IT-HWP1

Version

2.0

Offered by

ICT Engineering

ECTS

5

Prerequisites

Students must have basic competences in computer architecture, C programming and electronics, comparable to the courses, IT-CAO1, IT-ESW1 and I-BEL1.
BEL1 can be followed during the same semester.

Main purpose

​The purpose of the course is:

- To provide the student with knowledge about the technical details of an industrial microcon-troller used for embedded systems from a programmer’s point of view.
- To qualify the student to implement simple low-level drivers for various hardware devices.
- To qualify the student to implement low-level software for an embedded system in C.
- To qualify the student to do Unit testing of embedded C.​

Knowledge

​Having completed this course, students should be able ​​to:

- Seek information in datasheets for electronic components
- Describe the difference between polling and interrupt-based  drivers
- Describe layered software design and Hardware Abstraction Layer
- Explain the Interrupt system in a microcontroller
- Explain the concept of Pulse Width Modulation
- Explain Timer/Counters and give examples of their use
- Explain how analogue signals are sampled and quantified.​

Skills

​Having completed this course, students should be able to

- Implement low-level drivers for digital I/O-Ports
- Implement low-level drivers for analogue sensors
- Implement low-level drivers for analogue actuators.

Competences

​Having completed this course, students should be able to

- Design a Hardware abstraction Layer
- Implement low-level drivers for 8-bit microcontrollers.

Topics

Teaching methods and study activities

The required workload for students is estimated to 137 hours where approximately 3/4 is self-study including exercises and examination preparation. Activities change between theory, laboratory work, self-study, and exercises.

Approximately 33 hours of tuition and supervised laboratory work.​

Resources

Litterature:
Muhammad Ali Mazidi, Sarmad Naimi & Sepehr Naimi: The AVR microcontroller and embedded system.
Additional resources will be made available during the course.

​Hardware:
Arduino MEGA 2560 kit.
Expansion board and debugger borrowed from VIA. There will be a deposit for borrowed equipment.

Evaluation

Examination

​Exam prerequisites
None

Type of exam:

Individual oral exam, 20 minutes, based upon a subject found by draw and without preparation. 
Internal assessment

Tools allowed: 
Laptop
Course hardware kit

​Re-exam:
Same as the ordinary exam.

Grading criteria

Grading based on the Danish 7-point scale.

Additional information

Responsible

Erland Ketil Larsen (erl)

Valid from

2/1/2024 12:00:00 AM

Course type

Keywords