🛠 Faire clignoter la LED 13 d'une Duemilanove (et choisir le bon ATmega)
Objetivos
Familiarizarse con la Arduino Duemilanove (2009), la última gran placa «old-school» antes de la Uno: AVR de 8 bits ATmega168 o ATmega328 a 16 MHz, lógica de 5 V, puente USB-serie FTDI FT232RL, bootloader ATmegaBOOT. El primer programa es un clásico — hacer parpadear el LED en el pin 13 — pero esconde LA trampa histórica de esta placa: existen dos chips diferentes detrás del mismo nombre de placa, y hay que elegir el correcto en el IDE.
Material
- 1 placa Arduino Duemilanove con ATmega328 (o ATmega168 — mire la serigrafía del chip DIP-28)
- 1 cable mini-USB (las Duemilanove utilizan un conector mini, no micro)
- PC: bajo Windows, instalar el controlador FTDI VCP (los controladores modernos de Windows 10/11 suelen incluirlo)
- Arduino IDE con el core «Arduino AVR Boards»
Código completo
// Blink Duemilanove — LED integree broche 13 (HIGH = allumee)
const byte LED = 13;
void setup {
pinMode(LED, OUTPUT);
}
void loop {
digitalWrite(LED, HIGH); // LED allumee
delay(1000);
digitalWrite(LED, LOW); // LED eteinte
delay(1000);
}
En el IDE: Herramientas > Tipo de placa > Arduino Duemilanove or Diecimila, luego Herramientas > Procesador: «ATmega328» si su chip es un 328 (o 328P), «ATmega168» si es un 168. Seleccione el puerto serie (puerto serie USB-serie FTDI, nunca un puerto Bluetooth) y Subir.
Verificación esperada
El LED «L» parpadea una vez por segundo al finalizar la subida. Los LED TX/RX de la placa parpadean durante la subida (tráfico USB a través de la FTDI). El programa continúa sin el USB, con alimentación por jack de 7–12 V o batería en los pines Vin/GND del conector POWER.
Errores frecuentes
- Procesador incorrecto seleccionado: un sketch compilado para el 328 (57600 baudios, 30720 bytes) subido a un 168 (19200 baudios, 14336 bytes) falla por timeout del bootloader — y también al revés. Esta es LA trampa de la Duemilanove: la placa se llama igual pero hay dos chips.
- Controlador FTDI ausente bajo Windows: no aparece ningún puerto COM; instale el controlador VCP FTDI (los clones con FT232R falsificados pueden negarse a enumerarse tras ciertas actualizaciones del controlador).
- Cable USB solo de carga: el LED de alimentación se enciende pero no aparece ningún puerto.
- Confundir el LED de alimentación (ON, fijo) con el LED de usuario «L» (pin 13).
- Alimentación por jack demasiado baja: por debajo de 7 V el 5 V se vuelve inestable, por encima de 12 V el regulador se calienta — la Duemilanove es exigente con el rango recomendado de 7–12 V.
Otros tutoriales para esta placa
- Bouton poussoir et moniteur série sur la Duemilanove (avec ses 0,5 s de silence)
- Potentiomètre et variation LED : l'ADC 10 bits et le PWM 8 bits version AVR
- Ajouter un deuxième port série avec SoftwareSerial (GPS sur broches 10/11)
- Régler la référence de mesure avec AREF et analogReference
- Persister une calibration dans l'EEPROM de l'ATmega (512 octets ou 1 Ko)
- Convertir la Duemilanove en programmateur AVR (ArduinoISP) pour graver des puces nues
Ejemplos de código para esta placa
clignotante.inoArduinobouton-led.inoArduinopwm-respiration.inoArduinopotentiometre-plotter.inoArduinoservo-balayage.inoArduinobuzzer-melodie.inoArduino