miércoles, 30 de enero de 2019

Clase 4 Estructuras del lenguaje arduino

La programación se refiere al proceso de creación de un programa de computadora mediante la aplicación de procedimientos lógicos. La programación se desarrolla en distintos lenguajes, que son códigos estructurados que cobran sentido en determinados contextos de uso.

Para programar el Arduino se utiliza el IDE de Arduino (Integrated Development Environment),ambiente de Desarrollo integrado; es un software libre, que te permite programar en el idioma que el arduino entiende. En este caso es el lenguaje C. El IDE te permite escribir un programa de computadora, es decir el paso a paso de las instrucciones que luego subes al Arduino; para que  el ejecute esas instrucciones e interactue con el mundo exterior. 


Mi primer proyecto en arduino.

Para este primer proyecto trabajaremos en la forma de declarar una variable, definir la forma de trabajo de los pines; para lograr esto se hara parpadear un LED, ademas podremos alternar ese parpadeo con las instrucciones necesarias para que ese LED prenda y apague, cuando reciba la orden o instrucción de un pulsador.

A continuación escribe en el simulador el siguiente código,


// Projecto 1 - LED parpadea

int ledPin = 10;

void setup() 
{
pinMode(ledPin, OUTPUT);
}

void loop()
 {
 digitalWrite(ledPin, HIGH);
 delay(1000);
 digitalWrite(ledPin, LOW);
 delay(1000);
 }

Observa que se ha escrito lo siguiente

// Projecto 1 - LED parpadea, esto corresponde al nombre del proyecto; las barra inclinadas sirven para realizar comentarios y que el programa no lo detecte como código, las barras // permiten comentar una linea de código, pero si deseas escribir mas de una linea, debes utilizar /* texto */. Los comentarios son esenciales en tu código para ayudarte a entender lo que está pasando y cómo trabaja tu código.

/* Todo el texto dentro de la barra y los asteriscos se considera un comentario y sera ignorado por el compilador */

int ledPin = 10;

esta linea de código declara una variable, indica que el led sera conectado al pin 10, por eso se le da el nombre de ledpin; el signo =, sirve para designar un valor.


void setup() 
{
pinMode(ledPin, OUTPUT);
}
 void setup() Se ejecuta una vez y solo una vez al inicio del programa, y es donde escribes instrucciones generales para
preparar el programa antes de que se ejecute el ciclo principal.

pinMode(ledPin, OUTPUT); // Esta función se utiliza cual va a ser el papel que cumplirá el pin especificado, OUTPUT significa que se comportara como una salida, es decir que se conectara  un dispositivo que nos permita visualizar una acción, un led, un motor, un buzzer (parlante), etc. ; si se declara como INPUT, es entrada y significa que el pin estará a la espera de recibir una orden, a el se conectaran pulsadores, sensores.


void loop()
 {
 digitalWrite(ledPin, HIGH);
 delay(1000);
 digitalWrite(ledPin, LOW);
 delay(1000);
 }

La función loop() es la función principal del programa y
corre continuamente mientras nuestro Arduino esté encendido. Cada declaración dentro de la función loop()(dentro de la llaves) se lleva a cabo, paso a paso, hasta que se alcanza la parte inferior de la función, entonces el bucle comienza de nuevo en la parte superior de la función, y así sucesivamente para siempre o hasta que apague el Arduino o se presione el botón Interruptor de reinicio.
En este proyecto queremos que el LED se encienda,  y permanezca encendido durante un segundo, apaga y permanece apagado por un segundo, y luego repetir. Por lo tanto, los comandos para decirle al Arduino para hacer eso está contenidos dentro del bucle ().

digitalWrite(ledPin, HIGH); digitalWrite se utiliza para indicar el valor digital que se desea colocar en el pin especificado, en este caso ledpin que corresponde al pin físico numero 10; la variable constante HIGH indica un valor alto, es decir 5 voltios, si se utiliza LOW indicara 0 voltios o valor bajo, conexión a tierra. 

delay() delay es una instrucción que realiza un retardo, espera y se expresa en milisegundos, es decir que para para por un tiempo de 1 segundo debes escribir 1000 dentro del parentesis, 1000 milisegundos equivalen a 1 segundo

Ahora, vamos a realizar Un semáforo que cumpla las siguientes caracteristicas. (Observa la imagen)




 escribe el siguiente código:
/* aquí escribirás, la forma en que tu piensas trabaja el semáforo, primero escribe el código y luego interpreta lo escrito; también debes comentar cada linea de código indicando que has interpretado lo escrito   */

int ledrojo = 4;
int ledamarillo = 5;
int ledverde = 6;


void setup() 
{
pinMode(ledrojo, OUTPUT);
pinMode(ledamarillo, OUTPUT);
pinMode(ledverde, OUTPUT);
}

void loop()
 {
 digitalWrite(ledrojo, HIGH);
 delay(5000);

 digitalWrite(ledamarillo, HIGH);
digitalWrite(ledrojo, LOW);
 delay(2000);

digitalWrite(ledamarillo, LOW);
digitalWrite(ledverde, HIGH);
delay(5000);

digitalWrite(ledverde, low);
 }

RETO

Escribe el código para 1 semáforos, que cumpla las características que se indican en la siguiente imagen. también debes escribir los comentarios necesarios para entender cada linea del código



0 comentarios:

Publicar un comentario