Webcervices. Con la tecnología de Blogger.
RSS

Unete a nuestro grupo de facebook

Unete a nuestro grupo de facebook
Hola que tal lectores de esta pagina tan maravillosa que es arduino Tec ...Los invito a que amplíen mas sus conocimientos en Arduino y Raspberry Pi Uniéndose a mi grupo Arduino Tec

5 - EL PRIMER EJERCICIO O EJEMPLO

5 - EL PRIMER EJERCICIO O EJEMPLO


Hoy vamos a realizar nuestro primer ejercicio con la placa arduino. Me gustaría recordaros que estoy utilizando arduino Duemilanove, por lo que debéis tener cuidado de que los pines de vuestra placa sean los mismos.
Para poder comprender mejor este ejercicio, y todos los que vengan, explicare primero los elementos electrónicos que vamos a utilizar, como se conectan y después por ultimo indicare el código o códigos. En este primer ejemplo voy a escribir varios códigos que funcionan sobre el mismo circuito.
En muchos ejemplos que hay por la red, cuando escriben el código fuente suelen poner comentarios del siguiente modo:
Instrucción //comentario
A partir de las dos barras hay un comentario, es decir, una aclaración que a la hora de subir el código a la placa no es tenida en cuenta, por lo tanto no ocupara espacio. En mis ejemplos no voy a utilizar esas barras, porque estas indican que se trata de un comentario de una sola línea, por lo que al copiar y pegar un código de una web a otra puede darse el caso de que sin querer, ese comentario pase a otra línea y nos volvamos locos buscando el error.
Por ello, si pongo algún comentario lo pondré del siguiente modo:
Instrucción /* comentario */
La diferencia de este tipo de comentario a los otros radica en lo siguiente. El comentario empieza a partir de /* y no finaliza hasta que se encuentre con */, por lo que podemos escribir el comentario en 80 líneas si queremos, ya que hasta que no se encuentre con */ el compilador pensará que es un comentario y no lo tendrá en cuenta.
Aclarado esto vamos a comenzar con nuestro primer ejercicio. Solo vamos a necesitar los siguientes elementos:
  • Placa de arduino con su cable Usb.
  • 1 Diodo Led (da igual rojo, azul, verde, rosa.., mientras sea un led de dos patillas no habrá problema)
  • El entorno de arduino debidamente configurado.

Vamos a ver lo que es un diodo led.
Un led es un diodo que emite luz cuando la polarización es directa, es decir, cuando se encuentra conectado a una corriente eléctrica que circula del polo positivo al polo negativo. Para poder conectarlo debemos saber cual es el polo positivo y cual el negativo.
El polo positivo es la patilla larga, mientras que el negativo es la patilla corta.
Si las dos patillas son aproximadamente del mismo tamaño porque has rescatado un led de algún aparato, puedes conocer las distintas patillas gracias a un corte que suelen tener en la parte que emite la luz, como podéis ver en la siguiente foto. La patilla que esta en ese lado es la patilla corta, es decir, el polo negativo y, por contra, la otra es el polo positivo.
La patilla positiva se conectara a la fuente eléctrica que lo alimentará, mientras que la negativa se conectará a masa, que en la placa arduino es la que pone GND.
Mas claro todavía, conectamos al pin 13 digital la patilla larga (+) y al GND que esta justo al lado (al menos en Duemilanove) la patilla corta (-).
Puede ser que el ejercicio no te funcione porque alguna de las patillas del led no haga un buen contacto, ya que son muy finas (o porque el led este estropeado). Te recomiendo que utilices una placa protoboar y unos cables para conectar los pines con el led que coloques en la placa de practicas.
Esto es una placa protoboard.
Este es el modo de conectar arduino, el led y la placa protoboard.
Ahora vamos a comenzar con la parte del código. Todo esto lo hemos hecho sin conectar la placa al ordenador, y seguiremos así de momento hasta que hayamos terminado con el código y estemos listos para darle al botón de “Upload to I/O Board”.
El código es bastante sencillo. Recomiendo copiarlo a mano en vez de usar copiar y pegar, porque así aprenderás mejor el lenguaje.
Una cosa muy importante: el entorno de arduino es “case sensitive”, o lo que es lo mismo, diferencia entre mayúsculas y minúsculas, por lo que las palabras “aa”, “Aa”, “aA” y “AA” son completamente diferentes y no tienen nada que ver unas con las otras. Si declaramos una variable como en nuestro código llamada “ledPin” y mas abajo nos referimos a ella como “ledpin” obtendremos algún error o el programa no funcionara como nosotros queremos, por lo que debemos tener mucho cuidado con las mayúsculas y minúsculas.
int ledPin = 13;
void setup()
{
pinMode(ledPin, OUTPUT);
}
void loop()
{
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
}
En la primera línea declaramos una variable llamada ledPin. Una variable es un lugar donde se almacena un valor, ya sea de tipo numérico (integer) o de otra clase. En nuestro código hemos almacenado el valor 13, que es el pin de la placa arduino donde tenemos conectado nuestro led y la hemos declarado de tipo integer, por ello hemos puesto el "int" delante. El ; al final se utiliza para indicar al compilador el final de una instrucción.
La siguiente línea inicia una función. Una función es un conjunto de instrucciones. La función "void setup()" se utiliza para preconfigurar la placa de arduino. Todas las instrucciones de una función se encierran entre la llave { y }.
Continuamos, entre esas dos llaves hay una orden que le dice a arduino que configure el pin 13 como salida. Creo que no es muy difícil de ver, recuerda que al principio habíamos creado una variable llamada ledPin y le habíamos asignado el numero 13, que es el pin de salida.
Después de esta función tenemos otra función que es obligatoria, la función "void loop()". Las instrucciones de esta función se repetirán constantemente.
La primera instrucción le indica que escriba en el pin 13 (variable ledPin) un valor alto, por lo que la placa pondrá tensión en dicho pin.
La segunda instrucción le indica que espere durante 500 milisegundos. 1 segundo tiene 1000 milisegundos, por lo que 500 milisegundos son medio segundo.
Mientras tanto, ese medio segundo el led permanece encendido, porque en el pin 13 sigue habiendo una tensión.
En la siguiente le dice que escriba en el pin 13 un valor bajo, por lo que la placa quitara la tensión del pin.
A continuación la otra instrucción le indica que permanezca así durante otro medio segundo.
Bien, ahora se han terminado las instrucciones, por lo que arduino vuelve a repetir el código de la función "void loop()", es decir, ahora volvería a poner un valor alto, esperaría medio segundo, pondría un valor bajo, esperaría medio segundo, volvería a repetir y así hasta que desconectemos el cable del puerto Usb.
En fin, este es nuestro primer ejemplo, el clásico de toda la vida. Como añadido, voy a modificar un poco el código, solo los tiempos, para que no sea exactamente el mismo ejemplo que enseñan en todos los sitios. Probar el siguiente.
int ledPin = 13;
void setup()
{
pinMode(ledPin, OUTPUT);
}
void loop()
{
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
digitalWrite(ledPin, HIGH);
delay(1000);
digitalWrite(ledPin, LOW);
delay(1000);
digitalWrite(ledPin, HIGH);
delay(500);
digitalWrite(ledPin, LOW);
delay(500);
digitalWrite(ledPin, HIGH);
delay(250);
digitalWrite(ledPin, LOW);
delay(250);
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
digitalWrite(ledPin, HIGH);
delay(100);
digitalWrite(ledPin, LOW);
delay(100);
}
En fin, esto es todo por hoy, estoy pensando en que podemos hacer en el próximo ejemplo. Nos vemos.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentarios:

Publicar un comentario

Objetivo Y Reclamaciones

Este blog es un portal en el cual se publican contenidos de diferentes blogs.En los cuales se les anexa al pie de pagina un enlace a su pagina original aquí encontraran toda clase de proyectos de arduino y linux
Espero tengan una gran experiencia en este blog un Gran Saludo
de parte de la organización WebCervices..
objetivo
O del grupo ArduinoTec De arduino
Cualquier reclamación o petición comunicar al Administrador principal o hacer un comentario en la publicación que se sientan inconformes en los correos
electriarias@gmail.com
y para temas de suma importancia mi correo personal
pabioarias@hotmail.com

Siguenos en Twitter

Like

Unete a nuestro grupo de facebook

Hola que tal lectores de esta pagina tan maravillosa que es arduino Tec ...Los invito a que amplíen mas sus conocimientos en Arduino y Raspberry Pi Uniéndose a La mi grupo Arduino Tec

Unete Al Grupo De facebook

Unete Al Grupo De facebook
Amplia tus conocimientos debatiendo temas de Arduino y Raspberry pi