Changes between Version 3 and Version 4 of IOC20_T01
- Timestamp:
- Jan 29, 2020, 6:31:04 PM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
IOC20_T01
v3 v4 77 77 de type "Hello World!" qui affiche une phrase sur la sortie standard 78 78 grâce à un printf. 79 80 Pour compiler votre programme, suivez les instructions suivantes. 79 Pour compiler votre programme, suivez les instructions suivantes : 81 80 82 81 * Tout d'abord, configurez votre terminal pour utiliser le compilateur croisé. Ajoutez dans votre $HOME/.bashrc (sur le PC de développement) la ligne suivante et ouvrez un nouveau terminal. … … 85 84 }}} 86 85 87 * Une fois le terminal configuré, vérifiez que le compilateur est accessible :86 * Une fois le terminal configuré, vérifiez que le compilateur est accessible, si cette commande ne retourne rien, la configuration n'a pas fonctionné. 88 87 {{{#!sh 89 88 $ which bcm2708hardfp-gcc 90 89 }}} 91 Si cette commande ne retourne rien, la configuration n'a pas fonctionné.92 93 Votre suite d'outils (toolchain) contient tous les outils nécessaires pour la compilation, l'édition des liens et la manipulation de binaires pour la carte RaspberryPi. Et tous ces outils sont préfixés par la même chaîne de caractères: `bcm2708hardfp-`. Il s'agit donc d'un compilateur pour un SoC BCM2708 avec l'option hardfp activée (calcul flottant matériel). Il s'agit bien du SoC de la carte RaspberryPi.90 91 92 Votre suite d'outils (toolchain) contient tous les outils nécessaires pour la compilation, l'édition des liens et la manipulation de binaires pour la carte !RaspberryPi. Et tous ces outils sont préfixés par la même chaîne de caractères: `bcm2708hardfp-`. Il s'agit donc d'un compilateur pour un SoC BCM2708 avec l'option hardfp activée (calcul flottant matériel). Il s'agit bien du SoC de la carte RaspberryPi. 94 93 95 94 Maintenant, pour compiler un programme C vers un binaire qui puisse s'exécuter sur la carte RaspberryPi, il vous faut écrire un Makefile pour plus de facilité. Pour cela, suivez la syntaxe de base des Makefile: … … 112 111 CFLAGS=-O2 -static 113 112 CARD=20 114 NAME= binome113 NAME=nom1-nom2 115 114 CFLAGS=-W -Wall -Wextra -Wfatal-errors -O2 116 115 APP=helloworld 117 116 118 117 all: $(APP) 119 scp -P 50$(CARD) $^ pi@peri:$(NAME)118 scp -P 622$(CARD) $^ pi@peri:$(NAME) 120 119 121 120 clean: … … 123 122 }}} 124 123 125 **__Attention __**::124 **__Attention aux tabulations__**:: 126 125 Devant les commandes (scp et rm) vous devez mettre une tabulation. Si vous n'êtes pas familier avec les makefiles, consultez l'article 127 126 de [https://fr.wikipedia.org/wiki/Make Wikipedia] ou de [http://gl.developpez.com/tutoriel/outil/makefile/ Developpez.com]. 128 127 129 128 **__0ption -static__**:: 130 L'option "-static" est utilisée par l'éditeur de lien. Elle est importante ici, car la librairie C du compilateur croisé n'est pas tout à fait identique à la librairie C sur la carte RaspberryPi. Ajouter "-static" à la ligne de compilation permet de créer un binaire qui contient en plus les fonctions de la librairie C utilisée par votre programme. Ceci permettra à celui-ci de ne pas essayer d'utiliser des fonctions de la librairie C installée sur la carte qui, sinon, aurait été chargée dynamiquement.129 L'option "-static" est utilisée par l'éditeur de lien. Elle est importante ici, car la librairie C du compilateur croisé n'est pas tout à fait identique à la librairie C sur la carte !RaspberryPi. Ajouter "-static" à la ligne de compilation permet de créer un binaire qui contient en plus les fonctions de la librairie C utilisée par votre programme. Ceci permettra à celui-ci de ne pas essayer d'utiliser des fonctions de la librairie C installée sur la carte qui, sinon, aurait été chargée dynamiquement. 131 130 132 131 == 2.2. Contrôle de GPIO en sortie == … … 142 141 }}} 143 142 * Éditez le fichier lab1.c et ajoutez le code que vous pensez nécessaire à la réalisation de cet exercice.\\ 144 ATTENTION: ne changez pas les valeurs de GPIO_LED0, car vous risqueriez d'endommager la carte RaspberryPi.143 ATTENTION: ne changez pas les valeurs de GPIO_LED0, car vous risqueriez d'endommager la carte !RaspberryPi. 145 144 * Ensuite, compilez-le grâce au Makefile (**Vous devez l'adapter**) qui vous est fourni. 146 145 Qu'observez-vous ? Essayez de changer la fréquence de clignotement.