Projet de fin d`études - Bienvenue sur Catalogue des mémoires de

Projet de fin d’études
Technology & Strategy Engineering
Sujet : Plateforme Linux & Combi Instrument.
1 Février 2010 - 3 Juillet 2010
Société :
Technology & Strategy Engineering
4 avenue de la Paix
67000 Strasbourg
Établissement :
INSA Strasbourg
24 Boulevard de la Victoire
67000 Strasbourg
Professeur référent : M. Boyer Bertrand
Responsable : M. Roth Matthieu
Étudiant : M. Heinrich Yannick
1. CAHIERS DES CHARGES
1Cahiers des charges
Recherche et étude des différentes plate-formes Linux existantes sur le marché.
Connexion d’un écran tactile à la plate-forme Linux choisie.
Ajout d’une connexion CAN à la plate-forme.
Réalisation éventuelle d’une carte regroupant l’ensemble des composants.
Développement du software nécessaire en langage C.
Connexion de la plate-forme au système lève-vitres rétroviseurs de T&S.
Archivage des différentes versions de SW dans un logiciel de gestion de configuration de type SVN.
Possibilité d’ajout d’un chip GPS ou d’autres fonctionnalités si le temps restant le permet.
1
Résumé
Le stage s’est déroulé au sein du laboratoire de recherche et développement de la société Technology & Strategy Enginee-
ring. Le sujet portait sur la réalisation d’une plate-forme d’instrumentation à l’aide d’une carte embarquée GNU/Linux et
un écran AMOLED tactile. Le développement incluait la réalisation du pilote pour le noyau Linux et le développement
d’un PCB pouvant accueillir l’écran et son alimentation. La carte principale provient de la société ARMADEUS Systems
et est articulée autour d’un processeur Freescale iMX27 avec une architecture ARM9. L’intégration d’un noyau Linux de
génération 2.6 et d’un shell BusyBox s’est réalisé avec la suite Buildroot et les sources fournies. La conception du PCB a
été réalisé sous le logiciel KICAD. Le développement des applicatifs s’est basé sur la librairie SDL et a été programmer en C.
My training session took place in the research & development laboratory of the Technology & Strategy Engineering society.
The subject dealed with the conception of an instrumentation platform with an GNU/Linux embedded board and an AMO-
LED touchscreen. The development covered the software part by the conception of a Linux driver and the hardware part by
the design of an PCB hosting the screen and its power supply. The main board was bought to the ARMADEUS Systems
society and is based on a iMX27 Freescale processor with an ARM9 architecture. The integration of a 2.6 Linux kernel and
a Busybox shell was made with the Buildroot toolchain and the source codes provided by the supplyer. The PCB design was
made with KICAD. The applications was developed using the SDL library in the C language.
1. CAHIERS DES CHARGES
Table des matières
1 Cahiers des charges 1
2 Introduction 3
3 Remerciements 4
4 Présentation de l’entreprise 5
4.1 Historique.................................................... 5
4.2 LegroupeTechnology&Strategy ....................................... 5
4.3 Quelqueschiffres ................................................ 6
4.3.1 Particularité de la division Engineering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
5 Présentation du sujet 7
5.1 LelaboratoiredeR&D ............................................ 7
5.2 Projet Combi instrument & plateforme linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
5.2.1 Cahiersdescharges........................................... 7
5.3 Cycle de développement et organisation dans le temps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
5.4 Outilsmisàdisposition ............................................ 8
6 Du processeur au noyau 11
6.1 Rôledunsystèmedexploitation........................................ 11
6.2 Adressagemémoire............................................... 13
6.2.1 Représentation ............................................. 13
6.2.2 Moderéel................................................ 13
6.2.3 Modeprotégéetsegmentation..................................... 13
6.2.4 Pagination ............................................... 15
6.2.5 Le mode noyau et le mode utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
6.3 Lancementdunsystème ............................................ 16
6.4 PrésentationdeGNU .............................................. 17
6.5 PrésentationdeLinux.............................................. 18
6.5.1 Développement............................................. 18
6.6 Uncouplegagnant ............................................... 19
6.7 Linuxetlamémoire............................................... 19
6.8 Naviguer dans les sources du Noyau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
6.9 LespilotessousLinux2.6 ........................................... 22
6.10Leframebuffer ................................................. 22
7 Réalisation 23
7.1 ChoixdelaplateformeGNU/Linux ...................................... 23
7.1.1 Carteretenue .............................................. 23
7.2 Présentation de l’architecture ARM (32 bits) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
7.3 Composantslogiciels.............................................. 26
7.3.1 Surlordinateur............................................. 26
1
1. CAHIERS DES CHARGES
7.3.2 Buildroot ................................................ 27
7.3.3 Surlacarte ............................................... 27
7.4 Interfacesaveclacarte ............................................. 28
7.5 ÉcranAMOLEDTactile ............................................ 28
7.5.1 InterfaceRGBParallèle ........................................ 30
7.5.2 InterfaceSPI"3-wire" ......................................... 31
7.5.3 Écrituredupilote............................................ 31
7.5.4 Alimentation .............................................. 39
7.6 Conceptiondelacarte ............................................. 40
7.6.1 Contraintesderoutage ......................................... 40
7.6.2 Schéma................................................. 41
7.6.3 Routage................................................. 41
7.6.4 Soudure................................................. 41
8 Conclusion 45
A The GNU General Public Licence 51
A.1 Preamble .................................................... 51
A.2 Terms and conditions for copying, distribution and modification . . . . . . . . . . . . . . . . . . . . . . . 51
A.3 Appendix : How to Apply These Terms to Your New Programs . . . . . . . . . . . . . . . . . . . . . . . . 54
B Code sources 56
B.1 ModuleNoyau ................................................. 56
B.2 Code d’essai SDL - Fractale de MandelBrot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
B.3 Ajout de la librairie CWIID dans buildroot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
B.3.1 libcwiid.mk............................................... 60
B.3.2 congure_.patch ............................................ 61
B.3.3 makele_in.patch............................................ 61
2
1 / 64 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !