Set Arduino

Post on 18-Dec-2015

213 views 0 download

description

Set de Instrucciones Arduino

Transcript of Set Arduino

  • SET DE INSTRUCCIONES FUNDAMENTALES

    PARA PROGRAMAR

    ARDUINO

    Estructura Bsica de Programacin Variables /* Comentarios extensos de ms de dos lneas de cdigo */ // Comentarios en una sola lnea de cdigo int pin=5; /* Se define a pin como una variable global entera de valor 5 */ void setup{ /* El setup es el bloque en el cual se declara el tipo de

    funcionamiento de los pines y los datos para las comunicaciones USB, I

    2C, SPI,.. entre otras, se ejecuta una nica vez al

    momento de encender o resetear la placa*/ pinMode(pin, OUTPUT); /* Configura a 'pin' como

    salida digital */ } void loop{ /* El Loop es el bloque que se ejecuta justo despus del setup

    donde se ejecutan cclicamente las operaciones programadas segn los eventos que se provoquen a la Placa */ digitalWrite(pin, HIGH); // Se pone el pin en estado alto 1 delay(1000); // Se genera una espera o retardo de 1000ms digitalWrite(pin, LOW); // Se pone el pin en estado bajo 0 delay(1000); // Se genera una espera o retardo de 1000ms }

    GLOBALES Son aquellas que sern ledas e implementadas por cualquier funcin y estamento de un programa; en Arduino se declaran al comienzo del programa, antes de setup(). LOCALES

    Se considera como variable local a la variable que es creada dentro de una funcin o como parte de su y solo es visible y puede usarse dentro de la funcin en la que se declar.

    Tipos de Datos

    Operadores Generales Constantes x = 2 => El valor de la constante se asigna a la variable x z + 2 => Adicin entre el valor de z y la constante 2 y 4 => Sustraccin de la constante 4 al valor de y y * 6 => Se multiplica el valor que posee y por la constante 6 y / 3 => El valor de y es dividido en el numero de 3 partes iguale x > 5 => El valor de x es mayor que 5 z < 9 => El valor de z es menor que 9 x >= 10 => El valor de x es mayor o igual que 10 y El valor de y es menor o igual que 3 z == 10 => El valor de z es igual a la constante 10 y != 3 => El valor de y no es igual a 3 x ++ => Lo mismo que x = x + 1 x -- => Lo mismo que x = x - 1 x + = y => Lo mismo que x = x + y x - = y => Lo mismo que x = x - y x * = y => Lo mismo que x = x * y x / = y => Lo mismo que x = x / y x && z => (And) Solo si las dos expresiones son ciertas x || z => (Or) Si alguna de las dos expresiones es cierta

    HIGH LOW true false INPUT OUTPUT 152 Nmero decimal 0b11010011 Nmero binario 0x7B Nmero Hexadecimal 8U Force unsigned 12L Force long 12UL Force long unsigned 12.0 Punto flotante 3.6e4 36000

    Conversion

    char() byte() int() word() long () float()

    Arrays Digital I/O

    // Podemos declarar un array indicando su tamao

    int coleccion1[5];

    // Y luego almacenando sus valores

    coleccion1[0] = 1;

    coleccion1[1] = 45;

    /* O tambin se puede declarar e indicar los valores que

    conforman el array */

    int MyArray [3]={Valor1,Valor2,Valor3};

    /* Tambien podemos evitar indicar el ndice porque ya detecta que su

    tamao es cinco */

    int MyArray []={4, 20, 43, 15, 16};

    // Lectura de una posicin y asignacin de su valor a x

    int x = MyArray [3];

    // Los arrays pueden ser de ms de una dimensin

    int MyArray [2] [4] = {{ 2, 3, 4, 5}, {5, 4, 2, 1}}

    /* MyArray = I 2 3 4 5 I I 5 4 2 1 I */

    pinMode(pin, INPUT); // Configura a pin como una entrada de la tarjeta digitalWrite(pin, HIGH); // Pone el estado de la salida pin en Alto 1 pinMode(pin, OUTPUT); // Configura a pin como una salida de la tarjeta digitalWrite(pin, LOW); // Pone el estado de la salida pin en Bajo 0 int digitalRead (pin); // Lee el estado del pin

    ANALOG I/O Int A = analogRead(pin ); /* Lee el valor de la entrada Anloga pin y lo guarda en A */ Int analogWrite(pin, x) ; /* Escribe en pin, un tren de pulsos segn el valor de x, que va de 0 255 */

  • SET DE INSTRUCCIONES FUNDAMENTALES

    PARA PROGRAMAR

    ARDUINO

    Tiempo Estructuras de Control delay(20); // Genera una espera de 20 milisegundos delayMicroseconds(50); // Genera una espera de 50 microsegundos

    Matemticas abs(5); // Devuelve el valor absoluto de un nmero (entero o decimal) min(x, z); /* Devuelve el nmero de menor valor entre dos nmeros x y z (entero o decimal) */ max(u, h); /* Devuelve el nmero de menor valor entre dos nmeros u y h (entero o decimal) */ y= constrain(x, a, b); /* Define los valores mnimo y mximo que puede poseer la variable x x posee un valor que esta entre a y b; se devolver el valor x x es menor que a; se devolver el valor de a x es mayor que b; se devolver el valor de b */ x= pow(2,6); /* Devuelve el valor resultante de elevar el 2 a la 6 x= 2

    6=64 */

    y= sqrt(9); /* Devuelve el valor resultante de la raz cuadrada de 9 y= 9 = 3 */ random(100); /* Devuelve un valor aleatorio entre 0 y 100 random(15, 60); /* Devuelve un valor aleatorio entre 15 y 60

    if (x