Site affiché en Français Voir le site en English (USA) Voir le site en English (GB)
Vous êtes ici: ac6 > ac6-formation > Windows > BSPs et drivers CE 6.0

W4 BSPs et drivers CE 6.0

Ecriture de BSP et de drivers pour Windows CE 6.0

Windows Embedded CE est une marque déposée de Microsoft
Objectifs
bullet_jaune_1 Maîtriser les outils de développement croisé
bullet_jaune_1 Porter le système sur la cible
bullet_jaune_1 Accéder aux E/S
bullet_jaune_1 Installer des routines d'interruptions kernel et applicatifs
bullet_jaune_1 Développer des drivers et des Board Support Packages
Matériel
bullet_jaune_2 Un PC Windows et une carte cible Atmel par binôme.
bullet_jaune_2 Platform Builder for CE 6.0
bullet_jaune_2 Visual Studio 2005
bullet_jaune_2 Sonde Lauterbach et module "kernel awareness" Windows CE
bullet_jaune_2 Un support de cours ainsi que le corrigé des exercices.
Pré-requis
bullet_jaune_2 Connaissance du langage C/C++.
bullet_jaune_2 Programmation utilisateur sous Windows CE 6.0 (niveau cours W3 impératif).
bullet_jaune_2 Développement de drivers.

Plan
Présentation et historique de WindowsCE
bullet_jaune_2 Architecture et versions de CE
bullet_jaune_2 Nouveautés de la version 6.0
bullet_jaune_2 Technologies et µP supportées
bullet_jaune_2 Configurations pour l'embarqué
bullet_jaune_2 Code source partagé et système de licences
bullet_jaune_2 Comparatif avec Windows XP Embedded.
bullet_jaune_2 Comparatif avec Windows Mobile
bullet_jaune_2 Les outils de développement pour l'embarqué
Architecture de Windows CE
bullet_jaune_2 Le Noyau
bullet_jaune_2 Device Manager
bullet_jaune_2 GWES (Graphical Windowing and Events System)
bullet_jaune_2 Les services de communications
bullet_jaune_2 Timers, Watchdog timers.
bullet_jaune_2 Les interruptions,
bullet_jaune_3 IRQs (Interrupt ReQuest)
bullet_jaune_3 ISR (Interrupt Service Routine)
bullet_jaune_3 les IST (Interrupt Service Thread)
bullet_jaune_3 API des interruption
bullet_jaune_2 Architecture mémoire.
Rappels sur Platform Builder
bullet_jaune_2 Etapes de construction d'une plateforme CE
bullet_jaune_2 Création de projets Sources et Workspace
bullet_jaune_2 Les modules et composant de l'OS
bullet_jaune_2 Les fichiers de configuration du code source
bullet_jaune_3 DIRS
bullet_jaune_3 SOURCES
bullet_jaune_3 Makefile
bullet_jaune_3 module definition
bullet_jaune_2 Les phases du build
bullet_jaune_3 compile
bullet_jaune_3 sysgen
bullet_jaune_3 release copy
bullet_jaune_3 make image
bullet_jaune_2 Configuration Debug et configuration Release
Le test et le debug
bullet_jaune_2 Debug du noyau
bullet_jaune_2 Les zones de debug
bullet_jaune_2 Le debugging JIT (Just In Time)
bullet_jaune_2 Kernel Profiler, Remote Kernel Tracker, Remote Call Profiler.
bullet_jaune_2 Gestion des exceptions
bullet_jaune_2 Les Tests CETK
bullet_jaune_2 Utilisation des remote tools
Développement d'un Board Support Package (BSP)
bullet_jaune_2 Développer le bootloader
bullet_jaune_2 Développer l'OEM Abstraction Layer (OAL)
bullet_jaune_2 Les fichiers de configuration
Exercice : Développement de la KITL au-dessus du port série
Exercice : Débug à l'aide d'une sonde Lauterbach
Développement d'un pilote de périphérique
bullet_jaune_2 Architecture du système d'E/S
bullet_jaune_2 L'interface d'E/S standard (synchrones, simultanées, directes)
bullet_jaune_2 L'interface stream des drivers
bullet_jaune_2 Les native device drivers
bullet_jaune_2 Structure des drivers
bullet_jaune_2 Les drivers bus agnostic
bullet_jaune_2 Les drivers bus
bullet_jaune_2 L'énumérateur de Bus
bullet_jaune_2 Les classes d'interface de driver
bullet_jaune_2 Les clés de registre utilisés par les drivers
bullet_jaune_2 Installation dynamique des drivers
bullet_jaune_2 Gestion des interruptions au niveau drivers (IST)
bullet_jaune_2 Fonctions et structures de notifications
bullet_jaune_2 Le DMA
bullet_jaune_2 Communication par IOCTL
bullet_jaune_2 La librairie CEDDK
bullet_jaune_2 La gestion d'énergie
bullet_jaune_2 Rôle du gestionnaire de périphérique
bullet_jaune_2 Test de drivers avec CE Test KIT (CETK)
Exercice : Driver de boutons
  • installation de driver
  • accès à la mémoire physique
  • gestion des interruptions
  • accès asynchrone au buffer utilisateur
  • réinitialisation du timer d'activité de l'utilisateur et enregistrement d'un bouton comme source de réveil
  • écriture d'un test CETK
Exercice : Drivers gérant des leds
  • gestion des états d'énergie
Exercice : Démonstration de l'utilisation de sonde JTAG pour la détection et la correction d'erreurs (sonde Lauterbach)
Migration de Windows CE 5.0 vers Windows CE 6.0
bullet_jaune_2 Migration du Bootloader
bullet_jaune_2 Migration des pilotes de périphériques
bullet_jaune_2 Migration de l'OAL
bullet_jaune_2 Migration d'une configuration