Site affiché en Français Voir le site en English (USA) Voir le site en English (GB)
Vous êtes ici: ac6 > ac6-formation > Atmel processors > AT91SAM9 microcontroller implementation
Télécharger le catalogue
Télécharger le catalogue
Télécharger la page
Télécharger la page
Ecrivez nous
Ecrivez nous
Version imprimable
Version imprimable
 

AT2 AT91SAM9 microcontroller implementation

This course covers AT91SAM9 ARM-based MCU family


formateur
Objectives
bullet_jaune_1 The course details the hardware implementation of the AT91SAM9 MCUS.
bullet_jaune_1 The ARM926EJ-S operation is detailed, particularly cache and MMU.
bullet_jaune_1 The boot sequence and the clocking are explained.
bullet_jaune_1 Practical labs on integrated peripherals are based on I/O functions provided by Atmel.
bullet_jaune_1 The course provides examples of internal peripheral software drivers.

bullet_jaune_1 Note that ACSYS does not sell emulation probes and IDEs. Consequently this course has not been designed to convince attendees to buy a particular IDE. The unique objective consists in providing sufficient knowledge to attendees so that they can successfully design a system based on AT91SAM9.

bullet_jaune_1 This course has been delivered several times to companies developing embedded systems, such as medical equipments.

bullet_jaune_1 Note that an additional day on Linux porting onto an AT91SAM9 board may be appended.
A lot of programming examples have been developed by ACSYS to explain the boot sequence, the vector table and the operation of embedded peripherals.

  •They have been developed with 2 different IDEs : Keil and IAR.

  •Consequently for on site course, it is up to the customer to select the IDE under which labs will be run.
A more detailed course description is available on request at info@ac6-training.com
Prerequisites and related courses
bullet_jaune_2 This course provides an overview of the ARM926 core. Our course reference R1 details the operation of this core.
bullet_jaune_2 The following courses could be of interest:
bullet_jaune_3 USB Full Speed High Speed and USB On-The-Go, reference IP2
bullet_jaune_3 Ethernet and switching, reference N1
bullet_jaune_3 CAN bus, reference IA1

Plan
INTRODUCTION TO AT91SAM9 MCUs
Overview
bullet_jaune_2 ARM core based architecture, AMBA buses
bullet_jaune_2 Multi-layer AHB bus matrix
bullet_jaune_2 The main three blocks : platform, core and input / output peripherals
THE PROCESSOR CORE
THE ARM926EJ-S CORE
bullet_jaune_2 Operating modes : user, system, super, IRQ, FIQ, undef and abort
bullet_jaune_2 ALU data path
bullet_jaune_2 ARM vs Thumb instruction sets, interworking
bullet_jaune_2 Access to memory-mapped locations, addressing modes
bullet_jaune_2 Stack management
bullet_jaune_2 Benefits of condition set capability in ARM state
bullet_jaune_2 C-to-Assembly interface
bullet_jaune_2 Exception mechanism, handler table
bullet_jaune_2 MMU
bullet_jaune_2 Cache operation
bullet_jaune_2 JTAG interface
bullet_jaune_2 Debug facilities
PLATFORM
INFRASTRUCTURE
bullet_jaune_2 Power supplies, internal regulator
bullet_jaune_2 Power-on sequence
bullet_jaune_2 Clock generator, on-chip oscillator, PLL
bullet_jaune_2 Reset controller
bullet_jaune_2 Boot program
bullet_jaune_2 Memory controller
bullet_jaune_2 Internal high-speed flash
bullet_jaune_2 External Bus Interface, SDRAM controller, NAND flash controller
bullet_jaune_2 Power management controller
bullet_jaune_2 Advanced interrupt controller
bullet_jaune_2 External interrupt sources and fast interrupt source
bullet_jaune_2 Parallel input / output controller
bullet_jaune_2 Peripheral DMA controller
INTEGRATED I/Os
TIMERS
bullet_jaune_2 Periodic Interval Timer
bullet_jaune_2 Windowed Watchdog
bullet_jaune_2 Real-time timer
bullet_jaune_2 3-channel timer / counter
ANALOG-TO-DIGITAL CONVERTER
bullet_jaune_2 Successive Approximation Register 10-bit ADC
bullet_jaune_2 Detail of the analog part, timings
bullet_jaune_2 Conversion triggers
COMMUNICATION CONTROLLERS
bullet_jaune_2 2-wire interface
bullet_jaune_3 I2C protocol basics
bullet_jaune_3 Slave mode vs master mode
bullet_jaune_3 Transmit and receive sequences
bullet_jaune_2 SPI
bullet_jaune_3 SPI protocol basics
bullet_jaune_3 Master / slave operation
bullet_jaune_3 Transfer sequence
bullet_jaune_2 USART
bullet_jaune_3 Individual baud rate generators
bullet_jaune_3 RS485 support
bullet_jaune_3 Flow control
bullet_jaune_2 Synchronous Serial Controller
bullet_jaune_3 Independent clock and frame sync signals for each receiver and transmitter
bullet_jaune_3 I2S analog interface support
bullet_jaune_3 Time Division Multiplexed support
bullet_jaune_2 Ethernet MAC
bullet_jaune_3 Accessing PHY registers, auto-negotiation
bullet_jaune_3 Receive and Transmit buffer management, buffer descriptors
bullet_jaune_3 Incoming frame filtering
bullet_jaune_3 Error management
bullet_jaune_2 USB device
bullet_jaune_3 Full speed operation
bullet_jaune_3 High Speed device port on AT91SAM9RL64
bullet_jaune_3 Connection of an external PHY using UTMI+
bullet_jaune_3 Endpoint configuration
bullet_jaune_2 USB host
bullet_jaune_3 Overview of the OHCI specification
bullet_jaune_3 Clarifying the boundary between software and hardware
bullet_jaune_2 Multimedia Card Interface (on demand)
bullet_jaune_3 MMC and SD card basics
bullet_jaune_3 Command / response protocol
bullet_jaune_3 Read sequence
bullet_jaune_3 Write sequence
bullet_jaune_2 AC97 controller (Specific to AT91SAM9RL64, on demand)
bullet_jaune_3 Sound encoding
bullet_jaune_3 Connecting an external audio codec
bullet_jaune_3 Time slot assigner operation
IMAGE SENSOR INTERFACE
bullet_jaune_2 Connecting an external image sensor
bullet_jaune_2 CCIR656 specification
bullet_jaune_2 Scaling, decimation
bullet_jaune_2 Color space conversion
bullet_jaune_2 FIFO and DMA transfer
LCD CONTROLLER
bullet_jaune_2 Single and Dual scan color and monochrome passive STN LCD panels
bullet_jaune_2 Single scan active TFT LCD panels
bullet_jaune_2 Pixel encoding
bullet_jaune_2 Supported resolution
TOUCH SCREEN ANALOG-TO-DIGITAL CONVERTER
bullet_jaune_2 6-channel ADC
bullet_jaune_2 Multiple trigger sources
bullet_jaune_2 Conversion sequencer