Anuncio

placa de circuito arduinoLa ultima vez que te dejé habiendo establecido Introducción a su kit de inicio Arduino: instalación de controladores y configuración de la placa y el puertoEntonces, te has comprado un kit de inicio Arduino, y posiblemente algunos otros componentes geniales al azar, ¿y ahora qué? ¿Cómo comienzas a programar esta cosa de Arduino? Cómo lo configuras... Lee mas su Arduino para trabajar con Mac o Windows, y haber subido una aplicación de prueba simple que parpadea el LED incorporado. Hoy voy a explicar el código que cargó, la estructura del software Arduino y un poco más sobre los bits electrónicos en la placa.

Este artículo es parte de una introducción a la serie Arduino. Los otros artículos de la serie hasta ahora son:

  • ¿Qué es Arduino y qué puedes hacer con él? ¿Qué es Arduino y qué puedes hacer con él?El Arduino es un pequeño dispositivo electrónico notable, pero si nunca ha usado uno, ¿qué son exactamente y qué puede hacer con uno? Lee mas ?
  • ¿Qué es un kit de inicio Arduino y qué contiene?
    instagram viewer
    ¿Qué se incluye en un kit de inicio Arduino? [MakeUseOf explica]Anteriormente introduje el hardware de código abierto Arduino aquí en MakeUseOf, pero necesitarás más que el Arduino real para construir algo a partir de él y comenzar realmente. Los "kits de inicio" de Arduino son ... Lee mas
  • Más componentes geniales para comprar con su kit de inicio 8 componentes más geniales para sus proyectos ArduinoEntonces, ¿estás pensando en obtener un kit de inicio Arduino, pero te preguntas si algunos LED básicos y resistencias serán suficientes para mantenerte ocupado durante el fin de semana? Probablemente no. Aquí hay otros 8 ... Lee mas
  • Introducción a su kit de inicio Arduino: instalación de controladores y configuración de la placa y el puerto Introducción a su kit de inicio Arduino: instalación de controladores y configuración de la placa y el puertoEntonces, te has comprado un kit de inicio Arduino, y posiblemente algunos otros componentes geniales al azar, ¿y ahora qué? ¿Cómo comienzas a programar esta cosa de Arduino? Cómo lo configuras... Lee mas

El hardware

Echemos un vistazo más de cerca a lo que el Arduino Uno tiene en términos de bits en la placa de circuito.

Aquí hay un diagrama ampliado para consultar:

placa de circuito arduino
  • En la parte superior, hay 14 pines digitales de entrada / salida (numerados del 0 al 13). Estos son los pines más versátiles en su Arduino y pueden funcionar como entrada o salida, y formarán el núcleo de sus proyectos. Digital significa que la señal que estos pines pueden escribir o leer estará activada o desactivada.
  • 6 de esos pines digitales, que están marcados con el signo tilde ~ son capaces de hacer lo que se llama Modulación de ancho de pulso. No soy ingeniero eléctrico, así que no me avergonzaré explicando la ciencia detrás de esto, sino a usted y a mí. significa que podemos proporcionar una gama de niveles de salida, por ejemplo, atenuar un LED o conducir un motor a diferentes velocidades velocidades.
  • El pin 13 es especial porque tiene un LED incorporado. Esto es solo por conveniencia y con fines de prueba. Puede usar ese LED incorporado, como lo hizo en la aplicación de ejemplo Blink, simplemente enviando al pin 13, o puede usarse como un pin de E / S estándar.
  • En la parte inferior derecha hay 6 pines de entrada analógica. Estos leerán el valor de los sensores analógicos, como un medidor de luz o resistencias variables.
  • En la parte inferior izquierda al lado de los pines de entrada analógica hay pines de alimentación. Los únicos de los que realmente debe preocuparse son los pines de tierra (GND), las líneas de alimentación de 3.3v y 5v.
  • Finalmente, el único interruptor encontrado en el Arduino es un interruptor de reinicio. Esto reiniciará cualquier programa que tenga en su memoria.
  • El Arduino tiene una cantidad establecida de memoria, y si su programa es demasiado grande, el compilador le dará un error.

La estructura de un programa Arduino

Cada programa Arduino está compuesto por al menos dos funciones (si no sabe qué es una función, asegúrese de leer mi tutorial básico de programación, parte 2 - declaraciones de función y control Los fundamentos absolutos de la programación para principiantes (Parte 2)En la parte 2 de nuestra guía absoluta de programación para principiantes, cubriré los conceptos básicos de funciones, valores de retorno, bucles y condicionales. Asegúrate de haber leído la parte 1 antes de abordar esto, donde expliqué el ... Lee mas y parte 1 donde discutimos variables Los fundamentos de la programación de computadoras 101 - Variables y tipos de datosHabiendo presentado y hablado un poco sobre la Programación Orientada a Objetos antes y dónde se llama proviene de, pensé que es hora de que revisemos los conceptos básicos absolutos de la programación en un lenguaje no específico camino. Esta... Lee mas Antes de continuar).

El primero es la función de configuración. Esto se ejecuta inicialmente, solo una vez, y se usa para decirle al Arduino qué está conectado y dónde, así como para inicializar cualquier variable que pueda necesitar en su programa.

El segundo es el bucle. Este es el núcleo de cada programa Arduino. Cuando el Arduino se está ejecutando, después de que la función de configuración se haya completado, el ciclo se ejecutará a través de todos los código, luego haga todo de nuevo, hasta que se pierda la alimentación o se apague el interruptor de reinicio presionado. El tiempo que lleva completar un ciclo completo depende del código contenido. Puede escribir un código que diga "espere 6 horas", en cuyo caso el ciclo no se repetirá muy a menudo.

Aquí hay un diagrama de estado rápido para ilustrar:

placa de circuito arduino

Examinando el programa de parpadeo

Eche un vistazo al código del programa Blink e identifique las funciones de configuración y bucle.

Aquí está la configuración:

configuración nula () { // inicializa el pin digital como salida. // El pin 13 tiene un LED conectado en la mayoría de las placas Arduino: pinMode (13, OUTPUT); }

Las líneas que comienzan con // son simplemente comentarios para explicar el código a un lector humano, y no se suben al Arduino. De hecho, solo hay una línea de código de configuración en esta aplicación Arduino en particular. Esa línea dice "Establezca el pin 13 en el modo de salida". 13, recuerde, es el LED incorporado.

Luego está el bucle:

bucle vacío () { digitalWrite (13, ALTO); // enciende el LED. retraso (1000); // Espera un segundo. digitalWrite (13, BAJO); // apaga el LED. retraso (1000); // Espera un segundo. }

Los comentarios al final de cada línea de código explican su función bastante bien. HIGH y LOW se refieren al estado ON y OFF de una salida digital, en nuestro caso, el LED. En realidad, también podría escribir ON u OFF en el código, ambos son sinónimos (al igual que 0 y 1 también). Retrasar le dice al Arduino que espere un poco, en este caso 1000 milisegundos (o 1 segundo).

Finalmente, una nota sobre el lenguaje de programación utilizado aquí. Observe que las funciones de configuración y bucle tienen la palabra vacío Antes que ellos. Esta es una palabra especial para nada, porque la función no devuelve nada cuando se llama, simplemente ejecuta el código que contiene. Por ahora, dejémoslo así diciendo que el bloque de código de la función está encerrado entre llaves {}, y que cada línea de código debe terminar con un; punto y coma.

Intente alterar el programa básico de alguna manera cambiando los valores de demora precisos a algo más grande o más pequeño. Vea qué tan pequeño puede reducirlo antes de que el parpadeo ya no sea perceptible. Determine qué valor cambiar para que permanezca por más tiempo o permanezca fuera por más tiempo. Intente agregar más declaraciones digitalWrite y delay en la función de bucle para crear un patrón de parpadeo más complejo como el código morse para SOS. Si tiene un timbre, intente conectarlo a los pines 13 y GND también (pista: el cable rojo va a 13, negro a tierra).

Eso es todo por hoy. La próxima vez agregaremos algunos LED más y escribiremos nuestra propia aplicación desde cero. Como siempre, comentarios y acciones muy apreciados. No puedo imaginar que tenga algún problema con el código mencionado hoy, pero si ha intentado ajustar el código ligeramente y está con errores o comportamiento inesperado, siéntase libre de publicarlo en los comentarios y veremos si podemos solucionarlo juntos.

James tiene una licenciatura en Inteligencia Artificial y está certificado por CompTIA A + y Network +. Es el desarrollador principal de MakeUseOf, y pasa su tiempo libre jugando VR paintball y juegos de mesa. Ha estado construyendo computadoras desde que era un niño.