NG1S901 - Introduction to C programming and Embedded Systems 01 Sep 2020 - 31 Aug 2022 | Version 3
Associated Module Information
| Module Code: | NG1S901 | ||
|---|---|---|---|
| Module Title: | Introduction to C programming and Embedded Systems | ||
| Faculty: | Faculty of Computing, Engineering and Science | ||
| Faculty Group: | Information and Electronics | ||
| Faculty Sub Group: | Electronics | ||
| Module Leader: | Ben Mehenni | ||
| Module Team: | Jurgen Richter, Ali Roula, Sivagunalan Sivanathan, Eurfyl Davies, Alexandre Oleon | ||
| First Intended Intake: | SEP 2015 | Final Year of Intake: | |
| Date Closed: | |||
| Credit Value: | 20 | Credit Level: | 4 |
| Language: | English | ||
| Percentage of Module Taught in Welsh: | 0 | ||
| Equivalent Module: | |||
| HECOS codes: | 100163 - electrical and electronic engineering | ||
| HECOS Code Weighting: | 100 | ||
Document Version Information
| Version | 3 |
|---|---|
| Valid From | 01 Sep 2020 |
| Valid To | 31 Aug 2022 |
Module Aims
To use the C programming language as a tool in developing embedded hardware solutions for intelligent measurement and control applications. This will require students to understand the mechanics of programming with high level languages along with the constructs and syntax of the programming language. The focus will be on the development of embedded solutions using the Microchip microcontrollers and the Proteus VSM schematic entry and simulation environment.
Content Summary
The course content will develop the students understanding of designing with simulation tools and developing firmware for microcontrollers using the C programming Language and industry standard cross compilers and debuggers.
The course content will include:-
Introduction to the VSM development environment for both hardware and software simulation
Introduction to Microcontroller Architectures along with essential circuits
- Oscillator circuits
- Reset Circuits
Data Representation
Linking Hardware and Software
- Memory mapped peripherals
- SFR configurations
Introduction to the C programming language for embedded software solutions
- Basic Program Structure
- Superloop software architectures for Embedded Applications
- Elements of a Program
- Declarations and Expressions
- Assignment Statements
- Decision and Control Statements
- Arrays, Strings and Pointers
- User Defined functions
Software control of interfaced components to demonstrate I/O capabilities of microcontroller
- LEDs
- Switches
Development of software application requiring user interfaces
- 4x4 keypads
- LCD Displays
Introduction to interrupts and available interrupt sources
- External interrupt pins
- Timers?
Learning and Teaching Methods
| Activity Type | Hours |
|---|---|
| Lecture | 24 |
| Practical classes and workshops | 48 |
| Independent Study | 98 |
| Directed Study | 30 |
| Total Hours Selected | 200 |
Learning Outcomes
| # | Learning Outcome |
|---|---|
| LO1 | Will be able to understand the constructs and concepts of the 'C' programming language |
| LO2 | Will understand the organisation of Microcontroller's architecture, peripheral sets and special function register configurations in the deign of simple embedded solutions |
Module Requisites
N/A
Assessment Criteria
| Assessment Category | Assessment Type | Description | Duration | Word Count | Weight (%) | Best of? | Pass Mark |
|---|---|---|---|---|---|---|---|
| Written Examination | Written Examination - Open Book (Unseen) 1 | End of year examination | 120 | N/A | 50 | No | 40 |
| Practical | _Practical Assessment 1 | Schematic circuit design and Embedded C code simulated in the Proteus VSM environment | 720 | N/A | 50 | No | 40 |
Assessment Matrix
| Assessment Type | Learning Outcomes | ||
|---|---|---|---|
| LO1 | LO2 | ||
| Written Examination - Open Book (Unseen) 1 | ✔ | ✔ | |
| _Practical Assessment 1 | ✔ | ✔ | |