Navigation


 



Embedded & Microprocessor Systems

Syllabus Outline

Introduction to C: Basic types, control structures, operators; Data structures in C; Pointers; Scope and functions; Preprocessor; ANSI, POSIX and K&R standards.

Linking C and an assembler: Writing environment initialisation files; Mixed language programming; Passing parameters between HLLs and ALPs; Writing interrupt service routines.

Software tools for cross development: Understanding how compilers work; Using linkers and linker options; Assemblers and compilers; S-record and Intel Hex downloaders;

Compilation control programmes; Writing support code for compilers; How to select tools for cross-development; Make and debuggers.

Interfacing in C: Writing portable code for low level operations; Programming serial ports; Programming parallel ports; Programming serial ports; Programming timers; Introduction to writing device drivers; Writing small schedulers.

 

Teaching and Learning Methods

The course will include lectures but a large emphasis of the course will be practical, with students in practical labs and tutorials. Individual worksheet and group-oriented practical exercises are central to the students\' experience in order to reinforce and extend the lectures and associated readings. The laboratory work includes both hardware and software, at basic unit and higher system level. An extended case-study, supported by focussed tutorials and practicals, will allow the students to follow through an example application from design to implementation, and appreciate the relevance of all the component parts of the module syllabus. Some example subjects would be: a web cam pan and tilt control system based on the Infineon 80C164 for motor control, developing a microprocessor based home security system with swipe card access and various input and output controls and sensors, designing, developing and downloading a small protocol for data communications for use between standalone single board computers.