Primeros pasos con Arduino

anuncio_arduino

Ejemplos

Visita la página de conceptos básicos para una descripción en profundidad de los conceptos centrales del hardware y software Arduino; la página de hacking para información en cómo ampliar y modificar el hardware y software Arduino; y la página de enlaces para otro tipo de documentación.

También hay una guía de estilo útil al esribir ejemplos para principiantes.

Es muy importante conocer el entorno de desarrollo, es lo que vas a utilizar para programar tu Arduino.

Conceptos Básicos

Pequeños programas que demuestran los comandos básicos de Arduino. Estos vienen por defecto con el entorno de desarrollo Arduino; para abrirlos en tu ordenador, haz click en el botón Open de la barra de herramientas y la carpetaexamples o en el menú File -> Examples dónde los encontrarás agrupados por temáticas.

Entradas/Salidas Digitales

  • Blinkparpadeo, enciende y apaga un LED.
  • Blink Without Delayparpadeo sin delay, enciende y apaga el LED sin usar la función delay().
  • Buttonbotón, control de un LED usando un pulsador.
  • Button State Changecambio de estado del botón, cuenta del número de veces que se presiona un botón.
  • Debounce: lee un pulsador, filtrando el ruido.
  • Tonetono, toca una melodía usando un Piezo.
  • Pitch followerseguidor de pitch, cambia el pitch de un tono usando una entrada analógica.
  • Simple Keyboardteclado simple, un teclado musical de sólo tres teclas usando sensores de fuerza y un Piezo.
  • Tone4: toca tonos en varios altavoces secuencialmente usando el comando tone().

Entradas/Salidas Analógicas

  • Analog Inputentrada analógica, usa un potenciometro para controlar la frecuencia de parpadeo de un LED.
  • Calibrationcalibración, para lecturas de sensores analógicos.
  • Fading: emplea una salida analógica (por modulación de ancho de pulso – PWM) para cambiar la intensidad lumnínica de un LED de forma gradual.
  • Smoothingsuavizado, suaviza multiples lecturas de una entrada analógica.

Estructuras de Control

  • Proposición If (estrucutura condicional): cómo usar la proposición if para cambiar las condiciones de salida en función de las condiciones de entrada.
  • Bucle For: controlar múltiples LEDs usando un búcle.
  • Array: una variación del ejemplo anterior demostrando cómo usar un array.
  • Bucle While: uso de un bucle while para calibrar un sensor mientras se aprieta un botón.
  • Switch Case: cómo discriminar entre distintos valores numéricos. Equivalente a una serie de proposiciones ifencadenadas. Este ejemplo muestra como dividir el rango de un sensor de entrada en cuatro bandas y cómo tomar diferentes acciones en función de la banda en la que caiga el valor del sensor.
  • Switch Case 2: un segungo ejemplo con switch-case, muestra como tomar diferentes acciones basado en los caracteres recibidos por el puerto serie.

Sensores

  • ADXL3xx: Lee un sensor acelerómetro tipo ADXL3xx.
  • Knock: usa un piezo para detectar vibraciones.
  • Memsic2125 : acelerómetro de doble eje.
  • Ping: detecta objetos con un sensor de ultrasonidos.

Comunicación

Estos ejemplos incluyen código que permite a Arduino comunicar con sketches de Processing corriendo en el ordenador. Para más información o para descargar Processing, visita processing.org. Hay también patchespara Max/MSP que pueden comunicar con Arduino. Para más información acerca de Max/MSP, visita la web deCycling 74

  • ASCII TableTabla ASCII, demostración de las funciones avanzadas de comunicación serie de Arduino.
  • Dimmer: mueve el ratón para cambiar la intensidad de un LED.
  • Graph: envía datos al ordenador y crea gráficos con Processing.
  • Physical Pixelpixel físico, enciende y apaga un LED en la placa al enviar datos desde Processing.
  • Virtual Color Mixermezclador de colores virtual, envía una serie de variables desde Arduino al ordenador y leelas en Processing.
  • Serial Call Responserespuesta a llamadas serie, envía variables en respuesta a una petición (handshake).
  • Serial Call Response ASCIIrespuesta ASCII a llamadas serie, envía variables en respuesta a una petición (handshake), codifica los valores usando el código ASCII antes de enviarlos.
  • Serial inputentrada serie, toma diferentes acciones en función de los datos que llegan por el puerto serie.
  • MIDI: envía notas MIDI por el puerto serie.

Mostrando Información (Display)

Ejemplos básicos para mostrar información.

  • Bar Graph: cómo hacer un gráfico de barras con LEDs.
  • Row Column Scanningescanéo en filas y columnas, control de una matriz de 8×8 LEDs

Librerías

Ejemplos de las librerías que vienen incluidas con el software Arduino.

Librería EEPROM

  • EEPROM Clear: borra los bytes de la EEPROM.
  • EEPROM Read: lee los valores de la EEPROM y envía los datos a un ordenador.
  • EEPROM Write: almacena en la EEPROM los valores leídos de un sensor analógico.

Librería Cristal Líquido (LiquidCrystal)

  • Hello World: muestra “hello world!” y el tiempo -en segundos- desde el último reset.
  • Blink: controla el cursor en modo bloque.
  • Cursor: controla el cursor en modo subrayado.
  • Display: borra el display sin perder lo que esté en él.
  • TextDirection: controla en que dirección fluye el texto desde el cursor.
  • Scroll: haz scroll del texto a derecha e izquierda.
  • Serial input: toma datos del puerto serie y muestralos.
  • SetCursor: fija la posición del cursor.
  • Autoscroll: mueve el texto a derecha e izquierda.

Librería Servo

  • Knob: controla el ángulo de un servo motor al girar un potenciómetro.
  • Sweep: hace girar un servo motor alante y atrás.

Librería Paso-a-Paso Stepper

  • Motor Knob: controla un motor paso-a-paso con un potenciómetro.

Arduino como Programador ISP

ISP programmer: transforma tu Arduino en un programador de circuitor (In Circuit Programmer) para reprogramar chips de la familia ATmega. Útil cuando se quiere recargar el bootloader en un Arduino, o si se está creando un Arduino en un breadboard.

Más

Para ver más ejemplos creador por la comunidad de Arduino, visita la página de interficies con hardware en la wiki playground. También puedes visitar la lista deejemplos antigüos.