KD4008 - Computer Programming

APPLY NOW BOOK AN OPEN DAY Add to My Courses Register your interest / Course PDF

What will I learn on this module?

Within this module you will cover the design and development of C based code for both a standard PC and an embedded system (typically the Arduino).

The module syllabus us based but not exclusively on the following:
• Introduction of computer systems, the architecture and types from standard PCs to embedded systems,
• Code development from specifications through Pseudo code to a top-down or bottom-up based design,
• Language operators for example, if-then-else, switch-case, do-while, for,
• Data types for systems including bit length, and data pointer structures and use,
• Use of information hiding in functions, with strongly typed designs,
• File system access for a PC and for an embedded system where files may be more abstract handles,
• Controlling hardware on an embedded system for example and ADC or DAC on a microcontroller,
• The use of IO lines and interrupt structures in low level programming.

Typically the learning in the module will be based on simple case studies and example such that the above knowledge can be applied to solve a real world problem within a defined engineering context. An example of such a real world problem would be a Traffic Light controller, or Home Burglar Alarm system.

How will I learn on this module?

This module is taught primarily using lectures, with workshop sessions designed to help you (the student) understand the C programming language and how to write good programs. The module will provide support material available via blackboard, therefore all students can learn at the individuals pace with access to online content in the lectures and lab work.
The lectures provide Tutor led learning in the module, and the Workshops provide the opportunity to practice this learning in a supportive and feedback rich environment.
The skills acquired throughout the labs will enhance your experience to deal with practical work in writing C programs to solve Engineering problems. Case Study examples will be provided in the module lectures and workshops.

How will I be supported academically on this module?

Academic staff will be available in the Lectures and Workshop sessions to answer questions each week, this forms a primary source of feedback on the performance of you (the student) in the workshop context. Also there may be a number of formative Multi Choice Question sessions (MCQs) to help you determine how well you are coping and understanding the work, these will be delivered mainly in the lecture slots again as a form of formative feedback. Topic areas that are noted as areas where the group is struggling can then be rectified at an earlier stage. Assessment feedback will be in the form of written comments in the returned assignment work to you. In addition to this there is an open door policy for students to come and see the Lecturer if they have a problem.

Blackboard will be used extensively for lecture and workshop content as noted before to allow individual paced learning for all students.

In addition the lecturers can be visited in their rooms as we operate an open door policy.

What will I be expected to read on this module?

All modules at Northumbria include a range of reading materials that students are expected to engage with. The reading list for this module can be found at: http://readinglists.northumbria.ac.uk
(Reading List service online guide for academic staff this containing contact details for the Reading List team – http://library.northumbria.ac.uk/readinglists)

What will I be expected to achieve?

Knowledge & Understanding:
1. Knowledge and understanding of scientific principles underpinning the program design for Pseudo and State Machine formats (UK-Spec, 3rd Ed. SM1m, EA1m).
2. Understanding the mathematic principle applied in the programming as well as the appropriate codes of practice and industry standards in programming (UK-Spec, 3rd Ed. EP6m, SM2m).
Intellectual / Professional skills & abilities:
3. Development of C program skills from a specification to solve an engineering problem using system model, computer and also a microcontroller (UK-Spec, 3rd Ed. EA1m, EA2m, EA3m, EA4m).
4. Manufacture and debug programs that include algorithmic sections and/or hardware control and prove that they meet the required specification (program debugging) for C programs designed to run on a PC and a Microcontroller (UK-Spec, 3rd Ed. EP3m).

How will I be assessed?

This module is assessed by two Assignments representing one, programming in C on a PC or MAC computer (a program executing under windows or OS X.) The other a C Program executing on the Arduino. For example the first assignment might be to add, subtract, multiply and divide two complex numbers. The second assignment might be to control the operation of water levels in a Tank, or control the speed of an electric motor. Each assignment is worth half the module total marks (50%). LO1, LO2, LO3 and LO4 will be accessed through the assignments.

Formative assessment will be via weekly Workshops that cover aspects of computer programming using the C Programming Language.

Feedback will be via weekly contact with the Workshop Tutor and via comments by the Tutor marking the assignments in the students returned assignment work.

Pre-requisite(s)

N/A

Co-requisite(s)

N/A

Module abstract

This Computer Programming Module is designed to teach you how to program a computer.
It teaches you the computer programming language C that is the most common language (and one that almost every computer in the world can be programmed to use).

The first semester teaches you how to program a PC or MAC computer. The second semester shows you how to use C to program a microcontroller called the Arduino. With the Arduino you can control hardware directly and write C programs to do thinks like read switches and Temperature Sensors. You can also control Motors and LED indicators. You can even control a Drone with the Arduino.

The C language is a very good one and executes on most computers very efficiently.
Being able to program in C is highly favoured by Employers and allows you to be able to learn other languages like C# and Java.

Course info

UCAS Code H602

Credits 20

Level of Study Undergraduate

Mode of Study 4 years full-time or 5 years with a placement (sandwich)/study abroad

Department Mathematics, Physics and Electrical Engineering

Location Coach Lane Campus, Northumbria University

City Newcastle

Start September 2020

Fee Information

Module Information

Current, Relevant and Inspiring

We continuously review and improve course content in consultation with our students and employers. To make sure we can inform you of any changes to your course register for updates on the course page.

Your Learning Experience find out about our distinctive approach at 
www.northumbria.ac.uk/exp

Admissions Terms and Conditions - northumbria.ac.uk/terms
Fees and Funding - northumbria.ac.uk/fees
Admissions Policy - northumbria.ac.uk/adpolicy
Admissions Complaints Policy - northumbria.ac.uk/complaints