Está en la página 1de 5

Facultad de Ingeniería Departamento de Ing.

Eléctrica
Dispositivos Digitales Programables

Practica de semáforo función delay y millis


Samuel
guerrerosajim@hotmail.com
Leandro Jiménez Jiménez, 20141007033
Jiverjiver96@hotmail.com
Alexander Barreto Castañeda, 20142007084

INTRODUCCION  Conectores
 3 leds
Arduino es una plataforma de hardware
libre, basada en una placa con un
microcontrolador y un entorno de MARCO TEORICO
desarrollo, diseñada para facilitar el uso
de la electrónica en proyectos Arduino
multidisciplinares.

Arduino es una plataforma de hardware y


En este informe se presentará la software de código abierto, basada en
elaboración de dos montajes con el micro una sencilla placa con entradas y salidas,
analógicas y digitales, en un entorno de
controlador Arruino, es el montaje de un
desarrollo que está basado en el
semáforo tres colores con la función lenguaje de programación Processing.
deley, Es decir, una plataforma de código
abierto para prototipos electrónicos.
El segundo montaje realizar el mismo
montaje anterior pero se realizará con la Al ser open source, tanto su diseño como
función Millis su distribución, puede utilizarse
libremente para el desarrollo de cualquier
OBJETIVOS tipo de proyecto sin necesidad de
licencia.
 Observar los efectos del uso de la
función delay

 Diferenciar entre las funciones delay y


Millis .
Lenguaje de programación de Arduino
 Reconocer cuál de las funciones puede
servir para el manejo del tiempo y La plataforma Arduino se programa
secuencia. mediante el uso de un lenguaje propio
basado en el popular lenguaje de
MATERIALES programación de alto nivel
Processing.Sin embargo, es posible
 Protoboard utilizar otros lenguajes de programación
 Arduino due
Facultad de Ingeniería Departamento de Ing. Eléctrica
Dispositivos Digitales Programables

y aplicaciones populares en Arduino.


Algunos ellos son:

 Java
 flash (mediante actionscript)
 processing
 python
 ruby
 c
 c++
 liberlab (software de medición y
experimentación)
Imagen 1. Arduino uno R2, obtenido de:
 matlab
 visual basic .net https://sites.google.com/site/temasdedise
noymanufactura/arduino
Esto es posible debido a que Arduino se
comunica mediante la transmisión de
datos en El hardware del Arduino uno R2, se
formato serie que es algo que la mayoría muestran en la figura de arriba aunque
de los lenguajes anteriormente citados no necesariamente todos los arduinos
soportan. son iguales, a continuacion la descricion
de cada una de estas
1. Conector USB, este provee la
El hardware
comunicación para la programación y la
toma de datos, también provee una
El hardware, en su mayoría, esta fuente de 5VDC para alimentar al
constituido por una baquela electrónica arduino,
desarrollada en torno a un 2. Regulador de voltaje de 5V, se
microcontrolador de Atmel, estas placas encarga de convertir el voltaje
se pueden adquirir ensambladas o ingresado por el plug 3, en un voltaje de
construirlas directamente ya que en la 5V regulado.
pagina se encuentran los 3. Plug de conexión para fuente de
planos electrónicos y la licencia del alimentación externa.
producto lo permite, sin embargo resultan
valer aproximadamente lo mismo y 4. Puerto de conexiones; constituido
nunca quedan con la calidad de las por 5 pines de conexión con las
placas originales. siguientes funciones:

 RESET, permite resetar el


microcontrolador al enviarle un cero
lógico.
 Pin 3.3V, este pin provee una fuente de
3.3VDC
 Pin 5V, es una fuente de 5VDC
Facultad de Ingeniería Departamento de Ing. Eléctrica
Dispositivos Digitales Programables

 Dos pines GND, que proveen la salida de Devuelve el número de milisegundos


cero voltios para dispositivos externos. desde la placa Arduino empezó a correr
el programa actual. Este número se
5. Puerto de entradas análogas desbordará (volver a cero), después de
6. Microcontrolador Atmega 328, es aproximadamente 50 días.
el microcontrolador implementado en el
cual vamos a programar. -parámetros
7. Botón de RESET, este botón asi
como el pin mencionado anteriormente Ninguna
permiten resetear el microcontrolador
haciendo que reinicie el programa. -Devoluciones
8. Pines de programación ICSP, son
usados para programar Número de milisegundos desde que se
microcontroladores en protoboard o inició el programa ( unsigned long )
sobre circuitos impresos sin tener que
retirarlos de su sitio. -Nota:
9. LED ON, enciende cuando el
Arduino esta encendido. Tenga en cuenta que el valor de retorno
10. LEDs de recepción y transmisión, para millis () es un largo sin signo,
estos se encienden cuando la tarjeta se
errores lógicos pueden producirse si un
comunica con el PC. El Tx
indica transmisión de datos y el programador intenta hacer operaciones
Rx recepción. aritméticas con tipos de datos más
11. Puerto de conexiones, esta pequeñas, como de int. Incluso firmado
constituido por los pines de entradas o larga pueden producir errores como su
salidas digitales desde la cero hasta la valor máximo es la mitad que la de su
7 contraparte sin firmar.[3]
12. Puerto de conexiones, incluye 5
entradas o salidas, permiten control por FUNCION
ancho de pulso, una salida a tierra GND
y un pin AREF que permite ser DelayMicroseconds ()
empleado como referencia para las -Descripción
entradas análogas.
13. Este led indica el estado del pin Hace una pausa en el programa para la
13. cantidad de tiempo (en microsegundos)
14. Este led indica el estado del pin
especificado como parámetro. Hay mil
14.
15. Chip de comunicación que microsegundos en una milésima de segundo,
permite la conversión de serial a USB. y un millón de microsegundos en un
[1] segundo.

FUNCION Millis () En la actualidad, el valor más grande que


-Descripción producirá un retardo preciso es 16383. Esto
podría cambiar en el futuro los estrenos de
Facultad de Ingeniería Departamento de Ing. Eléctrica
Dispositivos Digitales Programables

Arduino. Por demoras de más de unos pocos // put your main code here, to run
miles de microsegundos, debe usar retardo () repeatedly:
digitalWrite(rojo,HIGH);
en su lugar.
delay(5000);
digitalWrite(rojo,LOW);
-Sintaxis
delay(500);
delayMicroseconds (us)
digitalWrite(amarillo,HIGH);
delay(5000);
-parámetros
digitalWrite(amarillo,LOW);
delay(500);
Nosotros: el número de microsegundos para
hacer una pausa ( unsigned int ) digitalWrite(verde,HIGH);
delay(5000);
-Devoluciones digitalWrite(verde,LOW);
delay(500);
Ninguna }

-Advertencias y problemas conocidos Montaje 2


//SEMAFORO FUNCION MILIS
Esta función trabaja con mucha precisión en const int amarillo=2;
el rango de 3 microsegundos y hacia const int rojo=4;
arriba. No podemos asegurar que const int verde=8;
int time=0;
delayMicroseconds llevará a cabo
long anteriorMillis = 0;
precisamente por menor retardo veces.[4] long intervalo=1500;
void setup() {
pinMode(amarillo,OUTPUT);
pinMode(rojo,OUTPUT);
Montajes 1 pinMode(verde,OUTPUT);

}
//SEMAFORO FUNCION DELAY
int rojo=2; void loop() {
int amarillo=4; unsigned long corrienteMillis=millis();
int verde=8; if(corrienteMillis-anteriorMillis >
intervalo){
void setup() { anteriorMillis=corrienteMillis;
// put your setup code here, to run once: switch(time){
pinMode(verde,OUTPUT); case 1:
pinMode(amarillo,OUTPUT); digitalWrite(verde,HIGH);
pinMode(rojo,OUTPUT); digitalWrite(amarillo,LOW);
digitalWrite(rojo,LOW);
} break;
case 2:
void loop() {
Facultad de Ingeniería Departamento de Ing. Eléctrica
Dispositivos Digitales Programables

digitalWrite(verde,LOW); https://www.arduino.cc/en/Reference/Del
digitalWrite(amarillo,HIGH); ayMicroseconds
digitalWrite(rojo,LOW);
break;
case 3:
digitalWrite(verde,LOW);
digitalWrite(amarillo,LOW);
digitalWrite(rojo,HIGH);
break;
}
time++;
if(time>3)
time=1;
}
}

REFERENCIAS

[1] “Arduino”

Disponible en:
https://sites.google.com/site/temasdedise
noymanufactura/arduino

[2] “ejemplos y aplicaciones de Arduino”

Disponible en:

https://prezi.com/r77vidzcgmwp/copy-of-
ejemplos-y-aplicaciones-de-arduino/

[3] “Arduino”

Disponible en:
https://www.arduino.cc/en/Reference/Milli
s

[4] “Arduino”

Disponible en:

También podría gustarte