====== Débuter avec un processeur ARM ====== ===== Description ===== Ce qui suit est un tutoriel afin de compiler et installer dans un processeur ARM un programme de base en C. Le projet est d'installer le minimum de logiciel pour avoir le contrôle des outils. ===== Matériel ===== Le choix du processeur s'est porté sur un NXP LPC1769. Celui-ci offre de nombreuses possibilités (USB, Ethernet, I2C …) et ce qui a fait la différence dans le choix est la clarté de la feuille de caractéristique (Datasheet). La plaque LPCXpresso 1769 de chez Embedded Artists correspondait à mes attentes. Elle est composée de deux parties sécables, un programmateur et le processeur avec très peu d'électronique autour. ^Qtt^Nom ^Valeur ^Référence Fabricant ^Fabricant ^Réf. Fournisseur^Fournisseur^ |1 |LPC1769 LPCXpresso | |EAX00242 |Embedded Artists |924-EAX00242 |Mouser | |1 |Émulateurs / Simulateurs J-LINK EDU | |J-LINK EDU |Segger Microcontroller |943-8.08.90 |Mouser | |1 |Connecteur de nappe|20 cts |1658621-4 |TE Connectivity |571-1658621-4 |Mouser | |1 |Nappe |20 cts | | | |Récupération| |1 |Connecteur mâle |16 cts |929400-01-16-RK |3M |517-929400-01-16-RK|Mouser | |1 |Embase femelle |16 cts |929850-01-16-RA |3M |517-929850-01-16-RA|Mouser | J'ai suivi ce tutoriel très bien fait pour connecter le programmateur à l'extension de la plaque : [[https://uwe-arzt.de/2013/lpcxpresso-lpc1769-mac-os-x/|LPCXpresso LPC1769 commandline Development on Mac OS X]] ===== Marche à suivre pour MacOSX ===== Avant d'installer quoique ce soit, nous allons créer un répertoire de travail. Dans un terminal taper : mkdir ~/ARM ==== Installation du compilateur ==== Télécharger la dernière version du [[https://launchpad.net/gcc-arm-embedded/+download|compilateur]] Déplacer le dossier une fois décompressé dans le dossier ~/ARM Renommer le dossier en gcc-arm pour plus de simplicité. Pour vérifier que tout est en place, taper : ~/ARM/gcc-arm/bin/arm-none-eabi-gcc --version Un message de réponse est de la forme : arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 4.8.4 20140526 (release) [ARM/embedded-4_8-branch revision 211358] Copyright (C) 2013 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Indiquer le chemin pour trouver le compilateur : export ARM_GCC_LOCATION=$HOME/ARM/gcc-arm/bin/ export PATH=$ARM_GCC_LOCATION:$PATH ==== Installation du pilote du J-Link ==== Il faut télécharger le logiciel et la documentation sur le site [[https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack|SEGGER]] Installer le paquet en double-cliquant dessus. Les éléments sont dans le dossier Applications. Pour démarrer le serveur GDB. Dans un terminal taper : /Applications/SEGGER/JLink/JLinkGDBServer ==== Compilation du projet ==== Ouvrir une autre fenêtre de terminal, taper : cd ~/ARM mkdir Projets Télécharger l'{{ :testarm.zip |archive}}. Et copier le fichier décompressé dans le répertoire ARM/Projets qui vient d'être créé Dans un terminal : cd ~/ARM/Projets/TestARM make Le projet est maintenant compilé, pour le transférer dans le micro-contrôleur taper : make gdb La LED2 doit être allumée et elle doit s'éteindre quand on relie le PIN 7 de la plaque à la masse. ==== Remarques ==== Pour quitter gdb : quit Pour arrêter le serveur : Ctrl - C Pour comprendre les commandes GDB avec la version de SEGGER du déboggueur : [[http://www.segger.com/admin/uploads/productDocs/UM08005_JLinkGDBServer.pdf|J-Link / J-Trace Guide d'utilisation]] ===== Références ===== [[http://haseebsohail.files.wordpress.com/2013/02/definitive-guide-to-arm-cortex-m3-2nd-edition.pdf|Definitive guide to arm cortex m3 2nd edition]] {{tag> micro_controleur sylvain }}