clignotante.ino
Un primer programa para comprobar que la placa funciona: el LED integrado del pin 13 parpadea una vez por segundo. El código usa millis() en lugar de delay() para seguir siendo receptivo e imprime cada cambio de estado en el monitor serie a 9600 baudios.
Hardware
Un Arduino Pro Mini (ATmega328P, existe en 5 V/16 MHz y 3,3 V/8 MHz) conectado a un convertidor USB-serie (FTDI) o un programador ICSP. No se necesita ningún componente externo, basta con el LED de la placa.
Cableado
Nada que cablear: el LED de usuario ya está conectado al pin 13 (con resistencia interna).
Funcionamiento
El bucle compara millis() (ms desde el arranque) con el último cambio. Cada segundo el estado del pin se invierte con digitalWrite y se envía un mensaje al puerto serie.
Ejecución
Elige « Arduino Pro Mini » en el IDE (5 V/16 MHz o 3,3 V/8 MHz según tu modelo), el procesador ATmega328P, el puerto correcto y Subir. El convertidor debe estar cableado DTR-DTR, RX-TX, TX-RX, VCC-VCC, GND-GND.
Variantes
Sustituye millis() por delay(500) para una versión más simple, o conecta un LED externo con resistencia de 330 Ω a otro pin.
clignotante.ino
// Clignotement de la LED intégrée (broche 13 sur la plupart des cartes Arduino).
const int LED = 13; // LED_BUILTIN est aussi définie par le core
const long PERIODE = 1000; // ms entre deux changements d'état
bool etat = false;
unsigned long dernierChangement = 0;
void setup() {
pinMode(LED, OUTPUT);
Serial.begin(9600);
Serial.println(F("Clignotement demarre"));
}
void loop() {
unsigned long maintenant = millis();
if (maintenant - dernierChangement >= PERIODE) {
dernierChangement = maintenant;
etat = !etat;
digitalWrite(LED, etat ? HIGH : LOW);
Serial.println(etat ? F("LED ON") : F("LED OFF"));
}
// millis() et non delay() : la boucle reste libre pour d'autres taches.
}