2. Entradas salidas digitales Arduino PUCESI 2016

31
E/S DIGITALES ARDUINO

Transcript of 2. Entradas salidas digitales Arduino PUCESI 2016

Page 1: 2. Entradas salidas digitales    Arduino PUCESI 2016

E/S DIGITALES

ARDUINO

Page 2: 2. Entradas salidas digitales    Arduino PUCESI 2016

MODALIDAD

Teoría

Programación

Simulación

Práctica

Luis David Narváez

Page 3: 2. Entradas salidas digitales    Arduino PUCESI 2016

DESARROLLO

LENGUAJE IDE Arduino

SIMULADOR

PROTEUS 8.1

SISTEMAS EMBEBIDOS

ARDUINO UNO

ARDUINO MEGA

Luis David Narváez

Page 4: 2. Entradas salidas digitales    Arduino PUCESI 2016

MATERIALES REFERENCIA

• 1 Arduino UNO

• 1 Arduino Mega

• 1 FUENTE DC (min. 5v )

• 1 Protoboard

• 1 Pinzas y Cortadora.

• Cables para Protoboard

• 1 Barra de Leds

• 1 Respack 330.

• 1 Cable USB

• 1 Dipswitch de 8.

• 1 Teclado Matricial.

• 4 Displays 7 segmentos

• 4 Decodificadores BCD

• 4 Transistores 3904, 3906.

• Potenciómetros 10k

• 1 Pantalla LCD 2x16

• 1 Pantalla GLCD 128x64

• 1 Matriz Leds 8x8

Luis David Narváez

Page 5: 2. Entradas salidas digitales    Arduino PUCESI 2016

E/S DIGITALES

DESARROLLO DE PRÁCTICAS

PARTE I

Luis David Narváez

Page 6: 2. Entradas salidas digitales    Arduino PUCESI 2016

MODALIDAD

Encendido y Apagado.

Rotación de bits.

Traslado de bits.

Interruptores y Switchs.

Rebotes

Contadores

Luis David Narváez

Page 7: 2. Entradas salidas digitales    Arduino PUCESI 2016

PARPADEO DE LED’s

Enunciado: Encender y apagar

3 LEDs conectados a los pines

13, 12 y 11 con una

temporización de 500ms,

empleando las diferentes formas

de configurar los pines en

Lenguaje C.

Luis David Narváez

INICIO

Declaración

Salidas

ON/OFF Salidas

Delay

ON/OFF Salidas

FIN

Page 8: 2. Entradas salidas digitales    Arduino PUCESI 2016

PARPADEO DE LED’s

Conexión de Leds:

Luis David Narváez

Page 9: 2. Entradas salidas digitales    Arduino PUCESI 2016

PARPADEO DE LED’s

Luis David Narváez

Page 10: 2. Entradas salidas digitales    Arduino PUCESI 2016

RETO 1

Luis David Narváez

Page 11: 2. Entradas salidas digitales    Arduino PUCESI 2016

ROTACIÓN DE BITS

Luis David Narváez

Enunciado: Se trata de

hacer encender 12 LEDs

de manera consecutiva, sin

que permanezcan

encendidos dos de ellos

simultáneamente. Los

LEDs están conectados a

los PINES DIGITALES

Page 12: 2. Entradas salidas digitales    Arduino PUCESI 2016

SIMULACIÓN

Luis David Narváez

Page 13: 2. Entradas salidas digitales    Arduino PUCESI 2016

RETO 2 y 3

Luis David Narváez

Page 14: 2. Entradas salidas digitales    Arduino PUCESI 2016

Interruptores y Switchs

Entradas Digitales

Luis David Narváez

Page 15: 2. Entradas salidas digitales    Arduino PUCESI 2016

ENTRADAS DE DATOS

Los dispositivos de entrada de datos encontramos con

frecuencia en sensores de alarmas (magnéticos, de

movimiento, infrarrojos, etc.), sensores digitales

industriales (sensores digitales de proximidad, finales de

carrera, pulsadores de marcha y paro de motores, etc.).

Rebotes en un pulsador

El problema en la utilización de estos dispositivos son los

rebotes que aparecen en el momento en que cambian de

posición, cuya duración depende de la fuerza con que se

presione este dispositivo, y a su estructura interna.

Luis David Narváez

Page 16: 2. Entradas salidas digitales    Arduino PUCESI 2016

ENTRADAS DE DATOS

Luis David Narváez

Page 17: 2. Entradas salidas digitales    Arduino PUCESI 2016

ELIMINAR REBOTES

Para eliminar este problema se suele realizar

por dos medios:

Hardware mediante el empleo de un flip-flop, un

condensador, etc.

Software utilizando los retardos de cerca de

10ms que es lo que normalmente una persona

tarda en presionar y soltar una tecla.

Luis David Narváez

Page 18: 2. Entradas salidas digitales    Arduino PUCESI 2016

Enunciado:

Se desea controlar una

lámpara desde un punto

diferente por medio de

un interruptor. La

lámpara está conectada

al PIN 13 y el interruptor

al PIN 2.

Luis David Narváez

PRÁCTICAINICIO

Declaración

Entradas y Salidas

Leer Entrada

Delay

FIN

Entrada

Activada ¿?

ON Salida

OFF Salida

SI

NO

Page 19: 2. Entradas salidas digitales    Arduino PUCESI 2016

SIMULACIÓN

Luis David Narváez

Page 20: 2. Entradas salidas digitales    Arduino PUCESI 2016

RETO 4

Luis David Narváez

Page 21: 2. Entradas salidas digitales    Arduino PUCESI 2016

Enunciado:

Se desea controlar el

encendido y apagado

de un LED mediante

un pulso tanto para el

ON y el OFF.

Luis David Narváez

PRÁCTICA

INICIO

Declaración Entradas,

Salidas, Tiempos de Rebote,

Variables de Estado

Leer Entrada

Negación Var

Estado

FIN

Entrada

Activada ¿?

Delay

SI

NO

OFF Salidas,

Clear Var Estado

Leer Entrada

Entrada

Activada ¿?

Var Estado Salida

NO

SI

Page 22: 2. Entradas salidas digitales    Arduino PUCESI 2016

SIMULACIÓN

Luis David Narváez

Page 23: 2. Entradas salidas digitales    Arduino PUCESI 2016

Enunciado:

Realizar un programa que permita

visualizar, el estado (on/off) de 4

switchs conectados en los pines

2,3,4,5 mediante 4 diodos LED

conectados en los pines

10,11,12,13. La conexión de los

switchs se realizará empleando

resistencias pull-down, de tal

forma que, cuando un switch esté

abierto el microcontrolador

reciba un “0L”. En esta posición el

LED correspondiente estará

apagado. Luis David Narváez

PRÁCTICA INICIO

Declaración

Entradas y Salidas

Leer Entrada

Delay

FIN

Entrada

Activada ¿?

ON Salida

OFF Salida

SI

NO

Page 24: 2. Entradas salidas digitales    Arduino PUCESI 2016

DESARROLLO

En este circuito, los switchs, al estar en posición OFF

(abiertos), sus pines están conectados a través de la

resistencia de 10KΩ a GND, dando un estado lógico bajo

(0L), en esa posición el LED correspondiente debe estar

apagado, entonces se requiere el valor leído en el pin

digital para sacar un estado lógico alto (1L) que encienda

el LED.

La misma lógica se aplicará en la posición ON (cerrado).

Luis David Narváez

Page 25: 2. Entradas salidas digitales    Arduino PUCESI 2016

SIMULACIÓN

Luis David Narváez

Page 26: 2. Entradas salidas digitales    Arduino PUCESI 2016

RETO 5 y 6

Luis David Narváez

Page 27: 2. Entradas salidas digitales    Arduino PUCESI 2016

Enunciado:

Se desea realizar un

programa que cuente los

pulsos provenientes de un

pulsador (CONTADOR)

conectado al pin 2 y los

visualice en forma binaria

en LEDs conectados a los

pines 10,11,12,13.

Luis David Narváez

PRÁCTICA

INICIO

Declaración Entradas,

Salidas, Tiempos de Rebote,

Variables de Conteo

Visualizar

FIN

Pulso

Detectado ??

Contador ++

SI

NO

OFF Salidas,

Clear Contador

Delay

Page 28: 2. Entradas salidas digitales    Arduino PUCESI 2016

DESARROLLO

En este caso vamos a utilizar las funciones de

verificación del estado de un pin del puerto digital del

Arduino.

bitRead(var, index);

E incrementar la variable de conteo

Contador++

Luis David Narváez

Page 29: 2. Entradas salidas digitales    Arduino PUCESI 2016

SIMULACIÓN

Luis David Narváez

Page 30: 2. Entradas salidas digitales    Arduino PUCESI 2016

RETO 7 y 8

Luis David Narváez

Page 31: 2. Entradas salidas digitales    Arduino PUCESI 2016

MUCHAS GRACIAS

PREGUNTAS / COMENTARIOS

Luis David Narváez