embedded and real time systems training and consultancy

Microchip 8 bit Microcontroller Assembly Language Programming

Duration: 5 Days

Course Background

A knowledge of assembly language programming is a key skill for small embedded systems application developers. Not only does an understanding of the microcontroller instruction set help with debugging, it can be used to optimise code in resource constrained systems. It is also an important skill to have when implementing applications that are a mix of assembler and C code and when implementing low level device drivers. The Microchip 8 bit Microcontroller family is characterised by the fact that as one moves from the low end microcontrollers such as the PIC10, PIC12 on to the PIC16 and PIC18 families so more instructions are added to the instruction set. Also the details of the memory architecture and interrupt handling change. Thus the PIC18 has two interrupt priority levels whereas the PIC16 has just one level of interrupt.

This course will cover the entire range of 8 bit microcontrollers. It will also cover techniques for modular programming in assembler and the structured use of macros. It should also be of use to those teaching or developing computer science courses who will be delivering a module on microprocessor architectures, instruction sets and basic programming at the level of instruction sets.

Laboratory Workshops

Course Prerequisites and Target Audience

Basic knowledge of programming and working with PC tools is assumed. Attendees are also expected to have a working knowledge of number systems decimal, octal, hexadecimal and binary and basic logic operations such as AND, OR, Exclusive OR and NOT. An appreciation of basic approaches to structured programming would also be helpful.

Course Outline

  • Microchip Overview
  • Overview of Development Tools
  • The PIC16 and PIC18 Architectures and Instruction Sets
  • The PIC10 and PIC12 Architectures and Instruction Sets
  • The PIC 8 bit processor architecture and Instruction Set Details