Home

Développement d`une carte à processeur linux

image

Contents

1. rovove n M E TOULOUSE III Le PAUL SABATIER is UPSSIT EN 118 route de Narbonne 31077 Toulouse Cedex 4 D veloppement d une carte processeur linux L EI Rapport de TER M1 SME Auteurs KERVELLA Guillaume BENAKCHA Samir Intervenant BERTHOU Pascal Master1 SMI Promotion 2013 2014 Introduction Dans le cadre du Master 1 SME nous avons eu l opportunit de r aliser un Projet TER travaux d tudes et de recherche dans le but de d couvrir des nouvelles technologies dont nous devons par le biais de la recherche assimiler le fonctionnement pour ensuite se lancer dans la r alisation proprement dites Ce projet d tude et de recherche est effectu en bin me afin d tre aiguill dans notre tude l enseignant qui propose le sujet est r guli rement en contact avec le bin me Le projet est non seulement un travail th orique mais celui ci devra comporter en plus d une partie simulation Dans un premier temps nous avons d se mettre en bin me apr s avoir pris connaissances des diff rents sujets propos s par les enseignements pour ensuite choisir un projet qui ce d roulera sous la responsabilit de M Pascal Berthou l intitul de notre projet est le suivant e Manipulation des E S de la carte et d veloppement d exemples tr s simples d utilisation e Cross compilation et Installation de Linux sur la carte R daction d un cook book destination des futurs tudiants Cette carte de d
2. include lt stdlib h gt int main int argc char argv printf APF28 Hello World n exit 0 Etape 2 Compiler le ficher Sur la machine de d veloppement armadeus 5 2 buildroot output host usr bin arm linux gcc o hello hello c Cette commande va cr er l ex cutable hello destin un microprocesseur arm si vous essayer de l ex cuter sur votre machine il est probable que rien de se passe Dans le dossier armadeus 5 2 buildroot host usr bin il y a un grand nombre de compilateurs diff rents certain destin d autres langages C et d autres architectures Etape 3 Mettre disposition l ex cutable sur le serveur FTP Sur la machine de d veloppement copier l ex cutable dans le dossier srv ftp S cp hello srv ftp Etape 4 R cup rer l ex cutable sur la carte Sur la carte Apf28 ftpget adresselpSrvFtp hello Etape 5 Ex cuter le code Sur la carte Apf28 rendre les droits d ex cution l ex cutable t l charg chmod x hello Et enfin lancez l ex cution hello la carte doit vous affichez AA GtkTerm dev ttyACMO 115200 8 N 1 Fichier Edit Log Configuration Signaux de contr le Vue dev ttyACMO 115200 8 N 1 DTR RTS CTS Pour tous vos programmes respectez ces 5 tapes 6 si on compte la gestion de l ip de la carte 2 Gestion GPIO On souhait un programme simple lorsque l on appuie sur le bouton USER de la carte la LED s allume led_bou
3. veloppement sera l objet d tudes pour les futurs tudiants cette tude se pr sentera sous forme de travaux pratiques Afin de r aliser ces travaux pratiques les tudiants devront avoir leurs dispositions un PC quip d un noyau linux d un r seau FTP ainsi que d un cook book dont nous avons la responsabilit de concevoir Durant notre projet il nous a t confi la responsabilit de faire l tude la conception la r alisation de programme permettant la mise en uvre des diff rentes entr es et sorties de notre carte Pour l tude de la carte il a t n cessaire au pr alable de se familiariser avec les syst mes embarqu s sous Linux Pour cela nous avions r alis une recherche bibliographique qui par la suite a contribu la cr ation d un tat de l art au sujet des syst mes embarqu s Un noyau Linux a d j t install sur la carte de d veloppement Pour rendre la communication possible avec notre carte nous avons proc d l installation d une chaine d outils contribuant au d veloppement de celle ci Pour construire tous ces outils il a fallu un syst me de construction et pour cela nous avons utilis Buildroot N ayant jamais utilis ce syst me de construction au cours de notre formation nous avons d abord fait un apprentissage afin d utiliser au mieux les diff rentes fonctionnalit s propos es par cet outil Buildroot nous a permis par la suite de construire une chaine de
4. Edit Log Configuration Signaux de contr le Vue VUUUUUUUUUUUY dev ttyACMO 115200 8 N 1 DTR RTS CTS ou 2 GtkTerm dev ttyACMO 115200 8 N 1 Fichier Edit Log Configuration Signaux de contr le Vue dev ttyACMO 115200 8 N 1 DTR RTS CTS Dans le premier cas vous tes sur la BIOS de la carte et dans le second cas vous tes sur le linux de la carte si on vous demande un code d acc s mettez root Comment passez du Linux au BIOS et inversement Lorsque vous tes sur le BIOS pour vous connecter au Linux de la carte tapez simplement la commande suivante BIOS gt boot Pour aller dans le BIOS partir de la carte il y a deux chemins possible Connecter la carte votre ordinateur en USB sans brancher la carte au secteur Lorsque vous tes sur le Linux de la carte restez appuy le bouton Reset de la carte 2 Installation du kit de d veloppement Afin de pouvoir crire des programmes pour la carte ou de changer les param tres du syst me on a besoin des outils qui vont g rer la compilation crois ou le cross compilation Pour cela Armadeus fournit un kit de d veloppement Le kit contient les logiciels suivant Binutils plusieurs utilitaires GNU utilis s pour g n rer les fichiers ex cutables Buildroot ensemble de fichiers Makefile permettant de d velopper totalement un syst me embarqu sous Linux Busybox couteau suisse de Linux embarqu regroupant un bon nombre de programmes courants
5. Internet http www armadeus com wiki index php title Main Page 11 juin 2013 15 d cembre 2013 11 Buildroot making Embedded Linux easy Internet http buildroot uclibc org 15 d cembre 2013 15 d cembre 2013 Probl matique Pourquoi utiliser une carte microprocesseur dans un syst me embarqu Une carte embarqu e est un syst me autonome capable d effectuer des taches tr s pr cises dans son environnement imm diat L utilisation de ce genre de carte n a rien d une nouveaut en soi ceux ci sont utilis s depuis longtemps dans des domaines comme l a ronautique ou l industrie Un noyau linux a t pr install dans notre carte microprocesseur Le fait d avoir choisit linux comme syst me d exploitation se traduit par des raisons technologiques qui sont les disponibilit s des sources tant le premier crit re de choix d un OS sur un syst me embarqu ainsi que sa fiabilit et sa robustesse Et dans un second temps linux a t choisit pour des raisons conomiques car celui ci est gratuit simple et rapide lors de sa mise en uvre mais ce qui s duit particuli rement les utilisateurs de ce type de OS est son ind pendance envers les fournisseurs Bien souvent dans l industrie nous avons tendances utiliser des PC trop gros et trop lourds avec une consommation trop lev s et pour ne pas arranger les choses leurs prix sont exorbitants Une solution ce probl me semble tre les cartes embarq
6. Massachusetts Institute of Technology 3 Au d but du projet le PC d Apollo tait consid r comme l l ment le moins robuste du projet Par contre gr ce l utilisation de nouveaux composants qu taient l poque les circuits int gr s des gains particuli rement importants sur la place utile et la charge utile ont t accomplies avec une diminution cons quente des risques d j nombreux lors des missions 4 La demande des syst mes embarqu s est souvent beaucoup plus importante que les ordinateurs de bureau En 1999 il s est vendu 1 4 milliard de processeurs 8 bits pour syst mes embarqu s contre 104 millions de processeurs pour PC Pour limiter les co ts on contraint donc la quantit de m moire disponible les fonctionnalit s mat rielles et la consommation d nergie D finition Un Syst me embarqu est un syst me lectronique ou informatique con u pour r aliser une ou plusieurs t ches pr cises Quelle que soit la nature et la complexit du syst me on d compose un syst me embarqu en 2 parties e le syst me contr l e le syst me de contr le Le syst me contr l est un environnement quip d une batterie d instrument qui r alise l interactivit avec le syst me de contr le Le syst me de contr le est constitu par des l ments mat riels tels qu un microcontr leur et logiciels dont le but est d agir sur le proc d travers les actionneurs en fonction de l tat de ce proc
7. d indiqu par les capteurs de mani re maintenir ou conduire le proc d dans un tat donn Interface Syst me informatique Interface Le Environnement Un syst me lectronique embarqu est un l ment qui est inclus dans un syst me plus complexe pour lequel il rend des services bien pr cis Celui ci est constitu de parties mat rielles et logicielles qui sont con ues sp cialement pour r aliser une fonction d di e 5 Description des syst mes embarqu s On parlera d un syst me embarqu lorsqu un ensemble de logiciels et de mat riels est con u pour une application pr cise contrairement un syst me ordinaire qui peut effectuer toutes sortes de t ches tel qu un PC On parle alors de codesign o le mat riel et le logiciel sont parfaitement adapt s la t che pour lequel le syst me embarqu est destin Exemples de syst mes embarqu s e Ordinateurs de bord d une automobile d un avion d une navette spatiale e Radars les sonars les satellites e Smartphones les routeurs e Robots les automates programmables les contr leurs d usine de p riph riques industriels e Appareils m dicaux e Syst mes d alarmes les contr leurs de climatisation les ascenseurs e les distributeurs automatiques les t l visions les photocopieurs les cam scopes e les autos radio calculateur d airbag distributeur de boissons t l phone mobile console de jeux Les s
8. en un seul ex cutable GCC compilateur C GNU GDB d bogueur GNU Rootfs root filesystem image du syst me de fichier qui sera install sur la cible et utilis par Linux comme point de montge de la racine U Boot bootloader ou BIOS de votre syst me embarqu Pr Installation Ubuntu Pour installer le kit fournit par Armadeus il peut tre n cessaire de faire cette pr installation Pour Ubuntu dans notre cas sudo apt get install y build essential gcc g autoconf automake libtool bison flex gettext sudo apt get install y patch subversion texinfo wget git core sudo apt get install y libncurses5 libncurses5 dev sudo apt get install y zlib1g dev liblzo2 2 liblzo2 dev sudo apt get install y libacl1 libacl1 dev gawk cvs curl Izma sudo apt get install y uuid dev mercurial sudo apt get install y python serial python usb sudo apt get y install libglib2 0 dev sudo apt get y install libnetpbm10 dev sudo apt get y install python xcbgen sudo apt get y install xutils dev V rifiez que votre syst me d exploitation est en anglais sinon il peut y avoir des erreurs de compilation extra locale locale_mmap h 46 error _ LOCALE DATA WCctype_Il_LEN undeclared here not in a function pour passer votre syst me d exploitation en anglais sudo dpkg reconfigure locales T l charger le kit l adresse suivante http sourceforge net projects armadeus files D zippez le tar xj
9. les fichiers fournit par Armadeus armadeus 5 2 buildroot output host usr bin arm linux gcc c as_gpio c armadeus 5 2 buildroot output host usr bin arm linux gcc c as_helper c armadeus 5 2 buildroot output host usr bin arm linux gcc c led_bouton c armadeus 5 2 buildroot output host usr bin arm linux gcc o led_ bouton as_gpio o as_helpers o led_bouton o ou faire un makefile qui fera ces commandes 3 PWM Maintenant on va g rer le PWM tr s simplement en allumant la LED lorsque que le signal carr du PWM est l tat haut mon_pwm c include lt stdio h gt include lt stdlib h gt include as_gpio h include as_pwm h include as_helpers h define LED_GPIO 21 struct as_gpio_ device led struct as_gpio_ device swit struct as_pwm_device my_pwm int P int main int argc char argv led as gpio open LED GPIO if led NULL printf Error can t open gpio n exit 1 my_pwm as _pwm_open O if Imy_pwm printf Erreur ouverture pwm exit 1 500HZ as pwm set _frequency my_pwm 500 50 as pwm set _duty my_pwm 500 as_gpio_set_pin _ direction led out while 1 if as_pwm_get_state my_ pwm 1 as gpio set pin valuelled 1 else as gpio set_ pin value led 0 return 0 Avec les fonctions dans le fichier as pwm h r cup r dans le dossier armadeus 5 2 target packages as_devices c on a diff ren
10. EHRETIE apf51 Board name imx51 CPU name 1 Number of RAM chips on your board 256 Size of a single RAM chip in MB lt Exit gt lt Help gt Sauvegardez et quittez Buildroot Si vous voulez retourner au menu de configuration de buildroot faites dans le dossier armadeus 5 2 make menuconfig Lancez la compilation make Si c est la premi re fois que vous lancez la compilation cela peu durer un peu plus d une heure 3 Installation du serveur FTP Pour pouvoir envoyer des programmes sur la carte nous devons utiliser le port Ethernet pour cela on peux utiliser diff rentes technologies de communication Dans notre cas nous avons installer un serveur FTP Installation d un serveur FTP apt get install vsftpd xinetd Nous allons configurer le serveur pour qu il autorise les connections anonymes sudo mkdir srv ftp sudo usermod d srv ftp ftp sudo etc init d vsftpd restart Pour mettre dispositions des fichiers il faut les mettre dans le dossier srv ftp Il Cr er des programmes 1 Premi re manipulation Hello World Avant toute chose connectez vous sur le Linux de la carte branchez la carte au r seau et v rifiez qu elle peut communiquer avec votre serveur FTP si il n y a pas de communication utilisez la commande ifconfig pour y rem dier Etape 1 Ecrire le programme en C Sur la machine de d veloppement Dans un fichier hello c mettez le code suivant include lt stdio h gt
11. Linux R cup rez l images sur la carte Apr s que l image du noyau a t t l charg e en m moire vous pouvez la flasher l aide de la commande suivante Installation du rootfs R cup rez l image du rootfs sur la carte Et flashez l image du rootfs sur la carte Maintenant vous pouvez tester votre Linux embarqu Conclusion La r alisation de ce projet a t tr s enrichissante Tout d abord nous avons eu l opportunit de mettre en uvre un syst me embaqu sous linux ce qui est une premi re en termes d exp rience Nous avons pu revoir les bases en programmation ainsi qu en parall lisme que nous avons acquises au cours de cette ann e Nous avons galement d couvert des nouveaux logiciels pour la conception et la simulation de carte embarqu e La r alisation de ce projet nous a galement donn l opportunit de travailler sur plusieurs domaines la fois notamment la programmation l lectronique et l informatique industrielle Nous avons beaucoup appris sur la gestion de projets aussi en effet on n est jamais l abri d un probl me qu il soit mat riel ou logiciel Il faut en permanence anticiper et ne pas n gliger le temps pass la recherche de documentations Mais la solution que nous avons apport e r pond en partie la probl matique Le projet que l on nous a confi n est pas termin cependant nous avons des id es afin d exploiter au mieux les fonctionnalit s de notr
12. Un FPGA est un circuit reprogrammable il est constitu de blocs logiques pr construits et de ressources de routage programmables Autrement dit les FPGA sont totalement reconfigurables il suffit de charger une nouvelle configuration de circuits Avantages Bon march Architecture flexible Ip sur mesure D fauts Peu intelligents Processeurs softcore Un processeur softcore est un processeur impl ment sur un syst me reprogrammable comme un FPGA On parle alors de syst me sur puce programmable Avantages Choix du processeur Une puce Portable D fauts Peu performant Linux Linux est un syst me d exploitation libre de type UNIX lanc par le finlandais Linus Torvalds en 1991 D velopp sous licence GPL ce qui donne une disponibilit des codes source gratuitement a permis d avoir l aide au d veloppement du syst me de d veloppeur dans le monde et a fait le succ s de ce syst me d exploitation 8 Linux embarqu D finition Linux embarqu est un syst me d exploitation bas sur Linux et adapt aux syst mes embarqu s Contrairement aux syst mes Linux classiques Linux embarqu est con u pour des syst mes limit s en ressources Il utilise g n ralement peu de RAM et favorise l utilisation de m moire flash plut t que de disques durs 8 Historique 1969 Ken Thompson des laboratoires Bell crit un syst me d exploitation sur un mini ordinateur PDP7 en langage assembl
13. compilation crois e GCC afin de g n rer sur le PC des logiciels qui pourront tre ex cut s sur la carte Ensuite nous avons con ues des programmes simples mettant en uvre les diff rentes entr es et sorties de la carte Ces programmes ont t con us partir de fonctions et biblioth ques fourni par le constructeur Armadeus Quand les r sultats obtenus lors des diff rentes simulations ont t jug s satisfaisantes il est d cid de valider le programme Bibliographie Les syst mes embarqu s Histoire Les premiers syst mes embarqu s sont apparus en 1971 avec l arriv e sur le march de l Intel 4004 1 L Intel 4004 est le premier microprocesseur incorporant toutes les parties d un ordinateur dans un seul et m me coffret rassemblant unit de calcul UAL m moire contr le des entr es et sorties 2 Avant la cr ation des microprocesseurs il fallait plusieurs circuits int gr s diff rents chacun d di une t che particuli re alors qu aujourd hui un seul microprocesseur peut assurer autant de t ches diff rentes que sa m moire lui permet Ceci a t une innovation majeure puisque des objets du quotidiens tels que fours micro ondes t l visions ne tard rent pas tre quip s de microprocesseurs Le premier syst me moderne embarqu reconnaissable a t le Apollo Guidance Computer le syst me de guidage de la mission lunaire Apollo d velopp par Charles Stark Draper du
14. copier des fichiers vers un autre ordinateur du r seau ou encore de supprimer ou de modifier des fichiers sur cet ordinateur Bibliographie 1 Intel 4004 Internet http fr wikipedia org wiki Intel_ 4004 26 Octobre 2013 01 Decembre 2013 2 R Litwak Cours d initiation au microprocesseurs http rlitwak plil fr Cours MuP sc00a htm 7 Mai 2001 01 D cembre 2013 3 The apollo guidance computer Internet http fr wikipedia org wiki Apollo Guidance Computer 26 Novembre 01 D cembre 2013 4 Circuit int gr Internet http fr wikipedia org wiki Circuit_intXC3 A9gr C3 A9 13 Octobre 01 Decembre 2013 5 M Passenaud Les syst mes embarqu s dans l automobile Internet http synergeek fr les systemes embarques dans automobile 15 janvier 2010 05 D cembre 2013 6 C Bonnet Demeure Introduction aux syst mes temps r el Paris Herm s Lavoisier 1999 pp14 32 7 J Oudry Qu est ce qu un microcontr leur Internet http www igm univ mlv fr dr XPOSE2002 robotique chapitres MicrocontroleurWhat htm 26 juillet 2006 08 D cembre 2013 8 G Blanc Linux embarqu Paris Pearson France 2011 pp 3 7 9 G Blanc Linux embarqu Paris Pearson France 2011 pp 257 260 10 APF28 Internet http www armadeus com francais produits cartes_ microprocesseur apf28 html 15 d cembre 2013 15 d cembre 2013 Armadeus Project
15. e carte Les r sultats obtenus en simulations nous permettent d esp rer une am lioration significative La prochaine tape du projet consistera concevoir des programmes mettant en uvre des entr es et sorties dont nous n avons pas eu le temps d utiliser par manque de temps et de moyens Nous avons eu l id e de mettre en uvre un CAN dont dispose la carte pour mettre en uvre l acquisition des mesures effectu es par un capteur capteur de temp rature par exemple pour ensuite afficher le r sultat sur un cran LCD Vendu par le constructeur Armadeus Et pour cela nous avons r alis au pr alable une recherche documentaire nous permettant de mettre en uvre ces diff rentes fonctions Gr ce l appui de notre tuteur ainsi que la documentation mis notre disposition nous avons pu r aliser une partie de notre projet dans d excellentes conditions
16. e composant Equip e d un microprocesseur ARM9 454MHz de 128 Mo RAM DDR2 de 256 Mo de FLASH d un port Ethernet 10 100Mbits 2 CAN d un USB 2 0 High Speed et d un USB OTG elle est facilement int grable dans un syst me embarqu gr ce notamment ses r gulateurs et ses convertisseurs de niveau USB Ethernet Aucun debugger externe BDI JTAG n est requis Nous avons utilis e avec la carte APF28 un simple c ble USB lors du d veloppement Carte de d veloppement La carte lectronique APF28 devest une plateforme de d veloppement id ale pour l exp rimentation et la r alisation d applications Linux embarqu es low cost Elle permet d acc der facilement aux fonctionnalit s de l APF28 carte processeur L ensemble des drivers permettant d utiliser les p riph riques pr sents sur la carte sont disponibles dans le BSP Armadeus Sp cificit s H e 1 port Ethernet i ED e 1 USB OTG 2 0 e 1 USB Host 2 0 High Speed e 1 USB Device console Linux e 1LED utilisateur e 1 bouton poussoir utilisateur e 1 bouton de reset e 1 bouton de On Off e Controleur de backlight pour TMO35KBHO2 TFT 3 5 320 x 240 avec dalle tactile Cook book Apf 28 Ce manuel d utilisation est destin prendre en mains simplement et facilement l Apf28 de Armadeus Ce manuel se compose en trois parties l installation des outils n cessaire une gestion simple des Entr es Sorties et pour finir une r installation d un noyau linux
17. eur Propos par Brian Khernighan ils nomm rent le syst me UNICS puis plus tard UNIX 1971 Ecriture de UNIX en langage C afin de facilit sa portabilit A partir de 1975 Distribution de UNIX dans les universit s 1979 UNIX atteint sa version 7 Fin des ann e 1980 Deux versions principales de UNIX cohabitent 1990 Le langage C est normalis par l ANSI American National Standards Institute et l ISO International Standards Organisation 1991 Linus Torvalds d veloppe un syst me d exploitation sur les bases de UNIX Epoque d un internet naissant son projet suscite beaucoup d int r t dans le monde entier et les contributions affluent notamment gr ce au libre acc s au code source d pos sous licence publique GNU 1992 Le projet nomm LINUX a une version consid r comme pleinement op rationnel 1996 Linux est utilis en production industrielle 2001 D but des projet embarqu avec Linux et sa version 2 4 d di l embarqu 2008 les version 2 4 et 2 6 se rencontre quitablement dans les syst mes 2011 majorit de projet en version 2 6 on commence a parler d une version 3 0 Domaine d application Linux embarqu touche divers segment de march Les march s les plus anciens sont celui de la t l communication et le militaire sous divers aspects Mais le march le plus prometteur et en tr s forte croissance est l lectronique grand publique On retrouve le syst me d exploitation dans les rout
18. eurs modems lecteurs DVD DivX les disques durs multim dia la t l phonie via l av nement des Smartphones Mais aussi dans l automobile avec les divers services que peuvent fournir l lectronique dans un v hicule Les projets utilisant Linux sont tr s diversifi et parfois l o on ne les attend pas Linux embarqu devient la principale plateforme de l embarqu m Past 2 years a Next 2 years Cross Compiling Lorsque l on veut installer un Syst me d exploitation sur notre cible syst me embarqu carte etc il se peut que notre ordinateur de d veloppement et notre syst me embarqu n aient pas les m me architectures et ceci entrainera des probl mes lors des compilations Pour rem dier ce probl me on utilise la compilation crois e ce qui consiste la construction d ex cutables pour une architecture cible diff rente de l architecture sur laquelle fonctionne le compilateur Les ex cutables cr s ne pourront qu tre ex cut sur le syst me cible et non sur la plateforme de d veloppement 9 APF28 de Armadeus Systems Armadeus Systems Armadeus systems d veloppe et produit des syst mes embarqu s Linux open source faible co t alliant petite taille basse consommation et connectivit tendue ar mMadeus systems Ils d veloppent aussi l association Armadeus Project qui a pour but d aider toute personne voulant d velopper des syst mes Linux embarqu s libres Descriptio
19. n de la carte L APF28 est une carte microprocesseur de taille r duite qui ne dispose pas de FPGA Wir Caract ristiques de la carte La carte est quit de un microprocesseur i MX28x ARM9 454MHZ 128 Mo RAM DDR2 256 Mo de FLASH SLC NAND un ou deux port Ethernet 10 100Mbits 2 CAN un port USB 2 0 High Speed et d un USB OTG Elle est facilement int grable dans un syst me embarqu gr ce notamment ses r gulateurs et ses convertisseurs de niveau USB Ethernet 10 Outils n cessaires Buildroot Buildroot est un logiciel qui permet de g n rer des syst mes linux embarqu s complets Nous pouvons utiliser facilement la compilation crois e et cr er le syst me de fichier racine n cessaire Linux embarqu Buildroot est surtout utile pour les personnes travaillant avec des syst mes embarqu s en utilisant diff rentes architectures de processeur 11 Kermit Kermit est un Protocol de transfert et de gestion de fichiers Dans notre tude Kermit nous servira a nous connecter et a contr ler la carte ARMADEUS APF28 Serveur FTP Pour envoyer des fichiers sur notre carte embarqu e on ne peux pas utiliser le protocol Kermit Pour transf rer des fichiers nous devons utiliser le port Ethernet de la carte et donc un serveur FTP FTP File Transfer Protocol est un protocole de communication destin l change informatique de fichiers sur un r seau TCP IP Il permet depuis un ordinateur de
20. st un bus de donn es s rie synchrone Les circuits communiquent suivant un sh ma ma tre esclaves o le ma tres s occupe totalement de la communication Plusieurs esclaves peuvent coexister sur le m me bus Dans le fichier as_spi c nous avons des fonctions simplifiant l utilisation de ce bus comme as_spi_set_mode as_spi_set_speed as_spi_set_bits_per_word Il Installation de Linux sur la carte Un syst me embarqu sous Linux est tr s similaire un syst me Linux classique il se compose d un bootloader c est dire les premiers bits de code ex cut s lorsque le processeur d marre il se comporte comme la combinaison du BIOS et de Grub sur les PC de bureau Dans notre cas le bootloader est U boot d un syst me d exploitation le noyaux Linux de nombreux programmes et biblioth que organis s en syst me de fichiers le rootfs Ayant eu des probl mes avec VSFTP dans cette partie nous avons install un autre serveur FTP TFTP Installation de TFTP sudo apt get install tftpd xinetd Cr ez le r pertoire tftpboot sudo mkdir tftpboot Ssudo chmode 777 tftpboot Ce r pertoire contiendra tous les fichiers que le serveur exportera Configuration du serveur V rifier que le fichier etc xinetd d tftp ait les configurations suivantes default off description The tftp server serves files using the trivial file transfer protocol The tftp protocol is often used to boot diskless
21. sur la carte Ce manuel a t test sur la version de Ubuntu 13 04 l Installation des outils Pour utiliser l Apf28 il est n cessaire d installer certain logiciel 1 logiciel de communication avec la carte Pour pouvoir communiquer et contr ler la carte Armadeus APF28 nous avons besoin d un logiciel de connections Armadeus nous propose trois logiciel possible Kermit MiniCom GTKTerm Dans notre cas nous avons choisit GTKTerm GTKTerm est un mulateur de terminal s rie qui vous permet de communiquer avec votre carte travers d une liaison s rie Cet outil vous donne acc s la console U Boot en quelque sorte le BIOS ou au Linux de la carte Installation sudo apt get install gtkterm lancer GTKTerm gtkterm Configuration Dans le menu Configuration puis dans Ports mettez la configuration suivante Port dev ttyACMO Spped 115200 Parity None Bits 8 Stop bit 1 Flow control None Dans notre cas nous avons mis dev ttyACMO dans notre port mais il se peut suivant les machines que la commande soit dev ttyS0 ou dev ttyUSBO Vous pouvez sauvegarder cette configuration afin de simplement le chargement de la configuration chaque fois que vous d sirez communiquer avec la carte Armadeus Apf28 Connectez votre carte en USB votre ordinateur lancer GTKTerm chargez la configuration et vous devriez avoir cette fen tre qui s affiche SA GtkTerm dev ttyACMO 115200 8 N 1 Fichier
22. tes fonctions qui nous permet de cr er un signal pwm de g rer sa fr quence as pwm_set_frequency et son ratio as pwm_set_duty Cela nous permet de simplifier le code et de pouvoir utiliser un signal PWM sans utiliser de timers Comme avec le code pour les gpio n oubliez pas de faire de la compilation partiels avec les fichiers fournit 4 Autres entrees sorties Comme pour le pwm ou les gpio armadeus fournit de multiples fichiers afin de simplifier les l ments de la carte 12c Le bus i2c est un bus de donn es s rie synchrone bidirectionnel Plusieurs quipements ma tre ou esclaves peuvent tre connect s au bus Les changes ont toujours lieu entre un seul ma tre et un esclave toujours l initiative du ma tre Cependant rien n emp che un composant de passer du statut ma tre esclave et r ciproquement Dans le fichier as_i2c c on a toutes les fonctions de base pour utiliser l I2c as_i2c_read as_i2c_write as_i2c_read_bytes as_i2c_write_bytes as_i2c_read_msg Mais aussi des fonction pour g rer les esclaves sur le bus as_i2c_set_slave_addr as_i2c_get_slave_addr Convertisseurs Analogiques Num riques et Convertisseurs Num riques Analogique Des fonctions sont fournit pour utiliser les convertisseurs dans les fichiers as_adc c et as dac c comme par exemple la fonction as_adc set_ value in millivolts SPI Une liaison SPI Serial Peripheral Interface e
23. ton c include lt stdio h gt include lt stdlib h gt include as_gpio h define LED_GPIO 21 define SWITCH_GPIO 17 int main int argc char argv struct as gpio_ device led struct as gpio device swit led as gpio open LED GPIO if led NULL printf Error can t open gpio n exit 1 swit as gpio_open SWITCH_GPIO if swit NULL printf Error SWITCH can t open gpio n exit 2 on place la LED en sortie et le switch en entrer as gpio set_pin_direction led out as gpio set_pin_direction swit in while 1 si la valeur du switch est 1 alors allumer la LED LED 0 iflas gpio get_pin_value swit 1 as gpio set_ pin _valuelled 0 else as gpio set_pin_valuelled 1 as_gpio _close led exit O Les GPIO s utilise tr s facilement Armadeus fournit des fichiers c avec toutes les fonctions pour utiliser les composants Le fichier as_gpio h fournit toutes les fonctions pour ouvrir choisir la direction de la pin et sa valeur Avec les fonctions as_gpio_open as_gpio_get_pin_direction as_gpio_pin_value Le fichier as_gpio c utilise des fonctions de as_helpers c donc allez cherchez les fichiers dans le dossier armadeus5 2 target packages as_devices c as gpio c as_gpio h as_helpers c as_helpers h et copiez les dans un dossier avec le fichier led_bouton c Refaites la techniques des 5 tapes sauf que au moment de la compilation n oubliez pas de compiler
24. u es Linux de type APF 28 de ARMADEUS dont nous avons eu l occasion de d velopp lors du projet Celle ci pr sente une palette de fonctionnalit s tr s int ressante pour les utilisateurs de syst mes embarqu s tels que mises jour partage de fichiers contr le ou configuration s curis s par internet et bien d autres encore afin d viter toute encombrement avec notre syst me embarqu le fournisseur ARMADEUS propose de fusionner notre lectronique avec la carte de d veloppement dans le but de former une seule et unique entit ceci pour des raisons esth tiques ou autres crit res techniques et conomiques De plus lors du d veloppement de notre carte Linux il est possible d avoir une assistance du fournisseur afin de mettre en place des solutions pertinente pour un gain consid rable en termes de temps Etat actuel Dans notre sujet un syst me d exploitation est d j install sur notre carte de d veloppement Notre objectif suivant est de mettre en place des programmes simple d utilisation afin de manipuler les diff rentes entr es sorties pr sentes sur la carte Ensuite vient l tape o nous devons r installer un noyau linux ainsi que tout les outils des fichiers syst mes Pr sentation du mat riel Carte processeur L APF28 est une carte microprocesseur de taille r duite qui ne dispose pas de FPGA Cette configuration permet d obtenir un co t optimal pour les applications ne n cessitant pas c
25. vf armadeus 5 2 tar bz2 cela vous cr un dossier armadeus ou armadeus 5 2 Lancez Buildroot Scd armadeus5 2 make apf28_defconfig Cette commande charge les configurations par d faut pour l Apf28 et lance le menu de configuration de Buildroot Buildroot 2011 05 Configuration Arrow keys navigate the menu lt Enter gt selects submenus gt Highlighted letters are hotkeys Pressing lt Y gt selectes a feature while lt N gt will exclude a feature Press lt Esc gt lt Esc gt to exit lt gt for Help lt gt for Search Legend feature is selected feature is excluded Target Architecture arm gt Target Architecture Variant arm926ej s arm926t gt Target ABI EABI gt Build options gt Toolchain gt System configuration gt Package Selection for the target gt Bootloaders gt Kernel gt Load an Alternate Configuration File Save an Alternate Configuration File lt EXI gt lt Help gt Dans System Configuration gt Armadeus Device Support V rifiez la configuration suivante Armadeus Device Support Arrow keys navigate the menu lt Enter gt selects submenus gt Highlighted letters are hotkeys Pressing lt Y gt selectes a feature while lt N gt will exclude a feature Press lt Esc gt lt Esc gt to exit lt gt for Help lt gt for Search Legend feature is selected feature is excluded JUEFECASL
26. will exclude a feature Press lt Esc gt lt Esc gt to exit lt gt for Help lt gt for Search Legend feature is selected feature is excluded rmadeus systen hostnanel Welcome to the Armadeus development environment System banner Jdev management Dynamic using devtmpfs only gt SCARMADEUS_PATH rootfs device_table txt Path to the permission tables Root FS skeleton custom target skeleton gt SCARMADEUS_PATH rootfs target_skeleton custom target skeleton path ttyAMG Port to run a getty login prompt on Baudrate to use 115200 gt remount root filesystem read write during boot S SCARMADEUS_PATH rootfs post_build sh Custom script to run before creating filesystem images Armadeus Device Support gt lt Exit gt lt Help gt Vous pouvez configurer le rootfs le bootloader gr ce buildroot make Dans le dossier armadeus 5 2 va compiler Buildroot et cr er dans le dossier armadeus 5 2 buildroot output images les fichiers suivants apf28 linux bin fichier image du noyau Linux apf28 rootf tar ici on a l arborescence des fichiers g r par le rootfs apf28 rootfs ubi image du syst me de fichier rootfs apf28 rootfs ubifs apf28 u boot bin fichier image de U boot apf28 u boot sb copiez ces fichiers dans le dossier tftpboot Sur la carte Apf28 passez en mode BIOS et d finissez une dresse ip la carte BIOS gt setenv ipaddre adresseip Installation du noyau
27. workstations download configuration files to network aware printers and to start the installation process for some operating systems service tftp socket_type dgram protocol udp wait yes user root server usr sbin in tftpd server_args s tftpboot disable yes puis relancer le xinetd sudo killall HUP xinetd Pour cr er les images du noyau du rootfs et du bootloader il faut aller dans le dossier armadeus 5 2 make apf28_deconfig Buildroot 2012 02 Configuration Arrow keys navigate the menu lt Enter gt selects submenus gt Highlighted Letters are hotkeys Pressing lt Y gt selectes a feature while lt N gt will exclude a feature Press lt Esc gt lt Esc gt to exit lt gt for Help lt gt for Search Legend feature is selected feature is excluded AR Target architecture arm gt Target Architecture Variant a 2ce 1 s arm926t Target ABI EABI gt Build options gt Toolchain gt System configuration gt Package Selection for the target Host utilities gt Filesystem images gt Bootloaders gt Kernel gt Load an Alternate Configuration File Save an Alternate Configuration File lt Exit gt lt Help gt System configuration gt Systen configuration Arrow keys navigate the menu lt Enter gt selects submenus gt Highlighted letters are hotkeys Pressing lt Y gt selectes a feature while lt N gt
28. yst mes embarqu s utilisent g n ralement des microcontr leurs pas n cessairement tr s puissants mais bien adapt s la t che demand e G n ralement le temps d ex cution de la t che doit tre connu de fa on qu elle soit born e et le syst me doit tre fiable et robuste Les syst mes embarqu s sont tr s souvent des syst mes temps r el Un syst me temps r el est un syst me qui interagit avec un environnement externe qui lui m me volue dans le temps Le comportement correct d un syst me temps r el d pend des r sultats attendus mais aussi du temps auquel les r sultats sont produits 6 Les diff rentes technologies de syst mes embarqu s Microcontr leurs Le microcontr leur correspond auc ur du syst me embarqu Il ex cute les instructions embarqu es dans la m moire qui va contenir les instructions du programme pilotant l application laquelle le microcontr leur est d di II g re les ports d entr es sorties les convertisseurs A N les Timers et dispose de m moires programmable ou non 7 Le microprocesseur est une parie du microcontr leur qui prend en charge la partie traitement des informations et envoie des ordres C est donc lui qui va ex cuter le programme embarqu dans le microcontr leur Avantages Tr s bon march Apprentissage rapide D veloppement rapide D fauts Structure fixe Extensibilit difficile Code non r utilisable FPGA

Download Pdf Manuals

image

Related Search

Related Contents

FSE-050-DE-5.0 Benutzerhandbuch für Fuse 1C  TABLE TOP WATEr COOLEr  電力用変圧器 (PDF:10.5MB)  Piloti tipo PRX/120, PRX/125, PRX-AP/120, PRX  Computer Fundamentals and Troubleshooting  ASUS P751JA User's Manual  Desa BLP35ES User's Manual  MOEN TS214BN Installation Guide  KOMA Elektronik FT201 Analog State Variable Filter / 10 Step  

Copyright © All rights reserved.
Failed to retrieve file