Blinky LPC1343
Voici donc notre premier programme sous LPCXpresso: Blinky_1 !
/*
Plateforme : LPCXpresso LPC1343
Name : Blinky
Author : FredS Microcontroller.Robotics
Description : Premier programme CortexM3
Date : 10 Fevrier 2012
*/
// Code_Read Protect
#include <NXP/crp.h>
__CRP const unsigned int CRP_WORD = CRP_NO_CRP ;
#include "LPC13xx.h"
#define LED_PORT 0 // Port où est la Led
#define LED_BIT 7 // Bit correspondant à la Led sur le Port
#define LED_ON 1 // Led ON
#define LED_OFF 0 // Led OFF
long i;
int main(void) {
// Enable AHB pour les GPIO
LPC_SYSCON->SYSAHBCLKCTRL |= 1<<6;
// Met le port de la Led en sortie
LPC_GPIO0->DIR |= 1<<LED_BIT;
while (1)
{
LPC_GPIO0->MASKED_ACCESS[1<<LED_BIT] = LED_ON << LED_BIT; // Led ON
for (i=0; i<400000; i++);
LPC_GPIO0->MASKED_ACCESS[1<<LED_BIT] = LED_OFF << LED_BIT; // Led OFF
for (i=0; i<1600000; i++);
}
return 0 ;
}
Pas mal, non ??
On va le détailler dans quelques temps.
Pour l'instant, nous allons le compiler en cliquant sur Build 'Blinky_1' [Debug] dans la fenêtre Quick, à gauche de l'écran.
On le télécharge ensuite sur la carte en cliquant sur Debug'Blinky_1' [Debug] dans la fenêtre Quick (ou bien en cliquant sur le bouton avec le petit insecte Debug sous la barre de menus).
Remarque: Le fait de lancer Debug invoque automatiquement le compilateur Build.
Le programme est alors téléchargé sur la carte, et le Debugger attendant que l'on clique sur le bouton Resume en haut à droite de l'écran, ou que l'on appuie sur F8 pour le lancer.
La Led sur la carte se met alors à Clignoter !!!
Plutôt pas mal pour un début, non ???