ARM 7/9 - On chip and off chip peripheral device programming in C

Course

Inhouse

Price on request

Description

  • Type

    Course

  • Methodology

    Inhouse

  • Duration

    5 Days

On completion of the course attendees will understand. how the various on chip and off chip peripherals are attached to the ARM7/ARM9 cores. interrupt configuration and memory configuration in C. the process of configuring and driving a wide range of peripherals using the APIs in a well designed library for these peripherals. implementing interrupt and. Suitable for: This course is aimed at experienced embedded system C programmers who need an intensive course covering peripheral programming of ARM7/ARM9 microcontrollers

Questions & Answers

Add your question

Our advisors and other users will be able to reply to you

Who would you like to address this question to?

Fill in your details to get a reply

We will only publish your name and question

Reviews

Course programme

Overview
It is a 5 days hands on course that will review the ARM7/ARM9 architecture from the perspective of the embedded systems application developer and the various peripheral combinations to be found on ARM7/ARM9 based micro-controllers. The course assumes that attendees are, by and large, familiar with the various protocols underlying the common peripherals. The relevant protocols will be described briefly, but there will not be time to go into any of them in great depth. Rather the course will proceed via a collection of case studies and exercises aimed at making the best use of available libraries and chip vendor libraries and application notes for the target processors used on the course and their various peripherals. These will be represenatative ARM7 / ARM9 processors. The course will also consider how peripheral libraries might be interfaced with a small embedded RTOS such as PowerPac. The main examples will be based on the NXP LPC Common Driver Library for the LPC32xx family or ARM9 micro-controllers and will use an LPC3250 board as the target board.
Note: this course can be tailored to specific micro-controllers and specific subsets of peripherals if required. Please contact FTT for further details.
This is a taught course with labs, with a split of about 60% teaching and 40% labs.

Course Benefits
On completion of the course attendees will understand
  • how the various on chip and off chip peripherals are attached to the ARM7/ARM9 cores
  • interrupt configuration and memory configuration in C
  • the process of configuring and driving a wide range of peripherals using the APIs in a well designed library for these peripherals
  • implementing interrupt and exception handlers in C
  • memory maps, memory protection unit, and priviledged operation
  • implementing device drivers for both on chip and off chip peripherals, and making use of Direct Memory Access (DMA)

Course Contents
Designing a device driver and system library
  • Rationale for using a standardised library
  • The layered architecture approach
  • Core layers
    • Core Peripheral Access Layer
    • Middleware Access Layer
  • Components of a standardised library design
    • specifications for functionality for accessing peripheral registers and defining exception vectors
    • specifications for naming register names of the core peripherals and the core exception vectors
    • specification of a device independent interface for RTOS Kernels including a debug channel
    • specification of interfaces for middleware components (TCP/IP Stack, Flash File System)
  • Functionality provided by target specific library code
    • device peripheral access layer functionality
    • Helper access functions for peripherals
Survey of the NXP LPC Common Driver Library
  • Overview of the LPC Common Driver Library
  • How to use the library from within the EWARM IDE
Examples and Case Studies of Programming ARM7/ARM9 Peripherals
  • GPIO - button presses and LED flashing ( polling, interrupt and timer driven variations )
  • RS232 - Polling oriented USART application
  • RS232 - Interrupt driven UART I/O application development
  • A/D and D/A
  • Watchdog
  • Nested interrupts
  • PWM
  • Realtime clock
  • SVC - Software Interrupts
  • Tamper
  • USB - HID example
  • USB - Mass storage example
  • Memory allocation
  • Interfacing peripheral drivers with a small RTOS (Powerpac)
  • Debugging Peripheral applications

ARM 7/9 - On chip and off chip peripheral device programming in C

Price on request