Module Title: | Embedded Systems 2 |
Language of Instruction: | English |
Teaching & Learning Strategies: |
A combination of lectures, class discussion, tutorial, projects, laboratory exercises and demonstrations will be used. Emphasis will be placed on active learning including problem / project bases learning |
Module Aim: |
To enable the learner to have knowledge and understanding of the architecture & operation of a contemporary microcontrollers and to enable the learner to design embedded systems using the appropriate programming language to interface a microcontroller to peripheral hardware such as ADCs, DACs LCDs etc.. |
Learning Outcomes |
On successful completion of this module the learner should be able to: |
LO1 |
Compare contemporary microcontrollers and select the appropriate device for a particular application. |
LO2 |
Describe the architecture and operation of a specific contemporary microcontroller. |
LO3 |
Interface a microcontroller to other hardware and peripherals to form an embedded system. |
LO4 |
Develop and debug software/firmware for an embedded system using the appropriate programming language and industry standard development tools. |
Pre-requisite learning |
Module Recommendations
This is prior learning (or a practical skill) that is recommended before enrolment in this module.
|
No recommendations listed |
Incompatible Modules
These are modules which have learning outcomes that are too similar to the learning outcomes of this module. |
No incompatible modules listed |
Co-requisite Modules
|
No Co-requisite modules listed |
Requirements
This is prior learning (or a practical skill) that is mandatory before enrolment in this module is allowed. |
Embedded systems 1 |
Module Content & Assessment
Indicative Content |
Computer architecture:
Architecture of a specific microcontroller based contemporary CPU core (MIPS, Risc-V, ARM etc.) Harvard, Von Neumann, registers, flags, pipeline, datapath etc.
|
Instruction set:
Overview of the instruction set of the chosen microcontroller, RISC, ISA, load and store, branch & conditional execution etc.
|
Memory configuration:
Memory configuration, little / big endian, memory maps, heap, stack etc.
|
I/O :
Memory mapped I/O, bitwise operators, pointers and pointers to structures. GPIO, ADC, Timers, serial I/O, DMA etc.
|
Interrupts & multitasking :
Interrupts and exceptions, interrupt controller, interrupt priority, exception handling. Event-triggered and time-triggered systems. Multitasking. Introduce the concepts of a real time operating system (RTOS), e.g. kernel, scheduler, threads, etc.
|
Software development :
Use of an industry standard IDE (Integrated Development Environment) Review of C. Mixing C and Assembly.
Software debugging, JTAG, source level, single step mode, breakpoints, trace system, disassembly, variable watching, etc.
Data structures (arrays, structures, linked lists), Sorting and searching techniques. Use of an API (CMSIS, HAL).
File i/o, data-logging to SD card.
|
Coding standards :
Introduction to coding standards for embedded systems, e.g., MISRA C, DO-178B.
|
Assessment Breakdown | % |
Continuous Assessment | 40.00% |
Project | 20.00% |
Practical | 40.00% |
Continuous Assessment |
Assessment Type |
Assessment Description |
Outcome addressed |
% of total |
Assessment Date |
Examination |
n/a |
1,2,3,4 |
40.00 |
n/a |
Project |
Assessment Type |
Assessment Description |
Outcome addressed |
% of total |
Assessment Date |
Project |
n/a |
1,3,4 |
20.00 |
n/a |
Practical |
Assessment Type |
Assessment Description |
Outcome addressed |
% of total |
Assessment Date |
Practical/Skills Evaluation |
n/a |
1,2,3,4 |
40.00 |
n/a |
No End of Module Formal Examination |
SETU Carlow Campus reserves the right to alter the nature and timings of assessment
Module Workload
Workload: Full Time |
Workload Type |
Frequency |
Average Weekly Learner Workload |
Lecture |
Every Week |
3.00 |
Practicals |
Every Week |
2.00 |
Independent Learning |
Every Week |
3.00 |
Total Hours |
8.00 |
Module Delivered In
|