Shopping Cart :Check Out

ARM7 TDMI Programming Workshop

Course Objectives:

ARM7 TDMI is one of the most successful processor architecture in the recent times. 32 bit processing power, lots of on chip peripherals, higher code density coupled with power economy, makes ARM7 an ideal choice for variety of Embedded Systems from Process Control, Consumer Electronics to Medical Equipments. This course starts with ARM 7 Core architecture, which is the back bone of several popular microcontroller families such as NXP LPC, Coretx etc. The course then immediately focuses on practical implementation of ARM7 core viz. NXP LPC21XX family of microcontrollers. System block, Timings, ports, Vectored Interrupt controller with Interrupt nesting are dealt with finer details. Participants will then be introduced to variety of on-chip peripherals such as Timers, UART, ADC, and PWM etc. with step-by-step procedures to configure and use these peripherals. Towards the end of the course, the participants will learn some debugging and optimization techniques, as well as how to write safer ‘C’ code.

• Through understanding of ‘ARM7 TDMI’ architecture.
• Get familiar with NXP 21XX family of microcontrollers.
• Creating Embedded Applications using this powerful microcontroller family.
• Creating tight yet safe ‘C’ code for the chosen microcontroller.

Who Should Attend?

Programmers and Embedded System Designers who are already familiar with some 8/16 bit microcontrollers and now wish to gain a solid understanding of 32 bit ARM7 architecture and its practical implantation such as NXP 21XX series


Basic knowledge of ‘C' language and exposure to any popular 8 bit Microprocessor .


• 5 days

Course Contents

Module 1: An Interlocution to ARM7 TDMI Architecture Module 2:NXP LPC21XX family of processors
Why 32 bit processor? Basic concept, building block
Difference between RISC and CISC processors System block: Reset, PLL, Memory Maps, Port configuration
ARM7 Design philosophy Vectored Interrupt Controller
ARM7 Family of microcontrollers GPIO
ARM7 Core: Building blocks UART
ARM7 Core: Programmer’s model Timer-Counter
ARM7 Core: Register set and Operating modes PWM
ARM7 Exceptions: Types and handling procedure ADC and DAC
ARM7 Instruction set and Assembly language programming Real Time Clock
Watch Dog Timer
A quick overview of USB2.0 features on LPC21XX
Call Back functions
Defining Function Pointers
Problems with Dynamic Memory allocation
Module 03: Start up code Module 04: Interrupts handling
Concepts Interrupt structure, Enabling and disabling Interrupts
Requirements Nested Interrupts
Contains Efficient Interrupt Service Routines
Design issues
Module 05: Optimization and debugging Techniques Module 06: Writing safer ‘C’
What is optimization Writing efficient and safe ‘C’ code
Strategies for Optimization A quick overview of MISRA C coding rules
Debugging basics
Tools for Optimization and Debugging
Module 07: Overview of some popular Development Tool chains for ARM7 processors

Training Programs