Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Introducción a Arduino




Enviado por Pablo Turmero



    Monografias.com

    Arduino es una plataforma open-hardware basada en una sencilla placa con entradas y salidas (E/S), analógicas y digitales,
    Su corazón es el microcontrolador Atmega8, un chip sencillo y de bajo coste que permite el desarrollo de múltiples diseños.
    Al ser open-hardware tanto su diseño como su distribución es libre, puede utilizarse libremente para desarrollar cualquier tipo de proyecto sin tener que adquirir ningún tipo de licencia.

    Monografias.com

    (Arduino UNO)

    Monografias.com

    Tiene:

    – 14 pines de entrada/salida digital (de los cuales 6 pueden ser usados como salidas PWM),

    – 6 entradas analógicas,

    – una conexión USB,

    – un conector para alimentación,

    – un botón de reset

    Monografias.com

    COMENZANDO CON ARDUINO

    1.- Descargar el entorno Arduino.

    2.-Instalar los drivers USB.

    3.Conectar la placa.

    Para programar la placa Arduino necesitas el entorno Arduino. Descarga la última versión desde http://www.arduino.cc/en/Main/Software
    La última versión de los drivers se puede encontrar en http://www.ftdichip.com/Drivers/ VCP.htm.
    Se puede alimentar la placa desde el puerto USB (bueno para controlar dispositivos de baja potencia como LEDs). Para alimentar la placa desde una fuente externa (6-12 V).
    En cualquier caso, conecta la placa a un puerto USB de tu ordenador.

    Monografias.com

    ESTRUCTURA DEL LENGUAJE DE PROGRAMACIÓN ARDUINO
    1.- Organizado en al menos, dos funciones
    void setup()
    {
    Declaraciones;
    }
    void loop()
    {
    Declaraciones;
    }
    2.- Ambas son necesarias para que el programa funcione
    3.-Se puede incluir una sección de declaración de funciones

    Monografias.com

    Monografias.com

    Monografias.com

    EN UN PROGRAMA PUEDE HABER:

    – INSTRUCCIONES

    – FUNCIONES

    – DEFINICIÓN DE VARIABLES

    Monografias.com

    INSTRUCCIONES DE E/S DIGITALES
    – HAY 14 PINES DE E/S DIGITALES NUMERADOS DEL 0 AL 13

    – AL SER DIGITALES, LOS VALORES QUE SE LEEN Y/O ESCRIBEN SON 0 Y 1

    – INSTRUCCIONES

    – POSIBLES VALORES
    pinMode(pin,modo)

    digitalRead(pin)

    digitalWrite(pin, valor)
    – pin, entre 0 y 13
    – modo, entre INPUT y OUTPUT
    – valor, entre HIGH y LOW

    Monografias.com

    INSTRUCCIONES DE E/S ANALÓGICAS
    – HAY 6 PINES DE E/S DIGITALES NUMERADOS DEL A0 AL A5

    – AL SER ANALÓGICOS, SIEMPRE SON DE LECTURA (NO NECESITA

    LA INSTRUCCIÓN pinMode)

    – INSTRUCCIONES

    analogRead(pin)

    analogWrite(pinPWM, valor)
    – pinPWM, a elegir entre
    3, 5, 6, 9, 10 y 11
    – valor, entre 0 y 255
    – pin, entre 0 y 5
    – el valor que devuelve está entre 0 y 1023

    Monografias.com

    PIN PWM (MODULACIÓN POR ANCHO DE PULSO)
    – HAY SEIS PINS PWM, 3, 5, 6, 9, 10 Y 11
    – POSIBLES VALORES PARA LA INSTRUCCIÓN analogWrite(pinPWM, valor)

    Valor 0 -> salida de 0 voltios en el pin especificado;

    Valor de 255 -> salida de 5 voltios de salida en el pin especificado.

    Valores entre 0 y 255, el pin saca
    tensiones entre 0 y 5 voltios
    – valor de 64 mantiene 0 voltios ¾ partes del tiempo y 5 voltios ¼ del tiempo;
    – valor de 128 mantiene 0 voltios la mitad del tiempo y 5 voltios la otra mitad,
    – valor de 192 mantiene 0 voltios ¼ del tiempo y 5 voltios ¾ partes del tiempo.

    Monografias.com

    Monografias.com

    int led = 10; //define el pin 10 como 'led'
    int analog = 0; // define el pin 0 como 'analog'
    int valor; // define la variable 'valor'

    void setup() { //no es necesario configurar entradas y salidas

    void loop()
    {
    valor =analogRead(analog); //lee el pin 0 y lo asocia a
    //la variable valor
    valor /= 4; //divide valor entre 4 y lo reasigna a valor

    analogWrite(led, value); // escribe en el pin10 valor
    }
    EJEMPLO 1 DE PROGRAMA

    Monografias.com

    ELEMENTOS DEL LENGUAJE
    – llaves { }

    void loop ()
    {
    Bloque de sentencias;
    }

    – punto y coma ;
    – bloques de comentarios /* */

    /* este sería un ejemplo de
    comentario que continúa en
    otras líneas*/
    – comentarios de una sola línea //

    int contador = 0; //declaro la var contador y la inicializo a cero

    Monografias.com

    int tiempo=200; int n; // Declaración inicial

    void setup()
    { //comienza la configuracion
    for (n=5;n< 9;n++)
    {
    pinMode (n, OUTPUT);
    }
    }
    /*A continuación defino una función llamada secuencia
    Que será invocada por loop de manera continua */
    void secuencia()
    {
    for (n=5;n< 9;n++)
    {
    digitalWrite (n, HIGH); //activa el pin n
    delay (tiempo); //cuenta 200 milisegundos
    digitalWrite (n, LOW); //desactiva el pin n
    delay (tiempo); //cuenta 200 milisegundos
    }
    }
    void loop()
    {
    secuencia();
    }
    EJEMPLO 2 DE PROGRAMA

    Monografias.com

    – variables y declaración de variables
    int contador = 0;

    – Tipos de variables:

    byte (entre 0 y 255 sin signo y sin coma decimal)
    byte unaVariable=0;

    int (entre –32767 y 32767, sin coma decimal, con signo.)
    int saldoCuenta=0;

    long (entre – 2147483647 y 2147483647 sin coma decimal)
    long gastosGasolina= – 3541668;

    float (entre – 3.4028235 · 1038 y 3.4028235 · 1038 con coma decimal )
    float costeReparación= 354.16;

    Monografias.com

    ESTRUCTURAS

    IF (condición)
    {
    Instrucciones;
    }
    ELSE
    {
    Instrucciones;
    }

    Monografias.com

    FOR (inicialización; condición; expresión)
    {
    Instrucciones;
    }

    Monografias.com

    WHILE (condición) { sentencias;}

    Monografias.com

    EJERCICIOS

    Monografias.com

    SOLUCIONES
    Secuencia de luces
    Semáforos

    Monografias.com

    El coche fantástico

    Monografias.com

    Monografias.com

    Ejemplo de divisor de tensión
    aplicado a un motor eléctrico

    Monografias.com

    (Esquema eléctrico)

    Monografias.com

    Programa

    Monografias.com

    PROGRAMACIÓN DE UN SERVO MOTOR

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter