E/S DIGITALES
MICROELECTRONICA
MODALIDAD
 Encendido y Apagado.
 Rotación de bits.
 Traslado de bits.
 Interruptores y Switchs.
 Rebotes
 Contadores...
RETO:
 Semáforos en una intersección, incluido
Stop y Go para Peatones
 Enunciado: Realizar una emulación de dos
semáfor...
 Para rotar los bits a la izquierda empleamos las
funciones:
 rotate_left( adress, bytes);
 En donde address puede ser ...
TRASLADO DE BITS
 La misma explicación es válida para:
 rotate_right( adress, bytes)
 Otra forma de realizar el mismo e...
 Enunciado: Se trata de hacer encender 8 LEDs de
manera consecutiva, sin que permanezcan
encendidos dos de ellos simultán...
FLUJOGRAMA
Luis David Narváez
SIMULACIÓN
Luis David Narváez
RETO:
 Enunciado:
 Encender secuencialmente, a la izquierda dos (2) a
la vez, los 8 LEDs conectados al PORTB con un
reta...
RETO:
 Enunciado:
 Realizar el juego de luces del auto fantástico con
8 LEDs conectados al PORTB, con un retardo de
50ms...
Entradas Digitales
Interruptores y Switchs
Entradas Digitales
Luis David Narváez
ENTRADAS DE DATOS
 Los dispositivos de entrada de datos encontramos con
frecuencia en sensores de alarmas (magnéticos, de...
ENTRADAS DE DATOS
Luis David Narváez
ELIMINAR REBOTES
 Para eliminar este problema se suele realizar
por dos medios:
 Hardware mediante el empleo de un flip-...
 Enunciado:
 Se desea controlar una lámpara desde dos puntos
diferentes por medio de 2 interruptores. La
lámpara está co...
DESARROLLO
 Como podemos observar en el circuito, cuando los
interruptores están abiertos introducen un “0L”
(conectados ...
DESARROLLO
 Como se mencionó anteriormente, en lenguaje C,
para realizar la lectura de un puerto se utiliza la
función
 ...
SIMULACIÓN
Luis David Narváez
 Enunciado:
 Realizar un programa que permita visualizar, el
estado (on/off) de 5 switchs conectados en el
puerto B (<RB...
DESARROLLO
 En este circuito, los switchs, al estar en posición OFF
(abiertos), sus pines están conectados a través de la...
SIMULACIÓN
Luis David Narváez
 Enunciado:
 Se desea realizar un programa que cuente los
pulsos provenientes de un pulsador
(CONTADOR) conectado a RD1 ...
DESARROLLO
 En este caso vamos a utilizar las funciones de
verificación del estado de un pin del puerto,
 If (bit_test(v...
DESARROLLO
 El programa se ha realizado de tal forma que el
incremento en el conteo se realiza solo si se suelta
la tecla...
SIMULACIÓN
Luis David Narváez
RETO:
 Enunciado:
 Realizar un contador binario tal que, con un
pulsador cuente en forma ascendente hasta llegar
a 255(P...
RETO:
 Enunciado:
 Realizar un contador binario con dos pulsadores,
uno ascendente hasta 255 y con otro
descendente hast...
MUCHAS GRACIASMUCHAS GRACIAS
PREGUNTAS /
COMENTARIOS
Luis David Narváez
Próxima SlideShare
Cargando en…5
×

2. entradas salidas digitales

951 visualizaciones

Publicado el

Publicado en: Tecnología
0 comentarios
0 recomendaciones
Estadísticas
Notas
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Sin descargas
Visualizaciones
Visualizaciones totales
951
En SlideShare
0
De insertados
0
Número de insertados
170
Acciones
Compartido
0
Descargas
20
Comentarios
0
Recomendaciones
0
Insertados 0
No insertados

No hay notas en la diapositiva.

2. entradas salidas digitales

  1. 1. E/S DIGITALES MICROELECTRONICA
  2. 2. MODALIDAD  Encendido y Apagado.  Rotación de bits.  Traslado de bits.  Interruptores y Switchs.  Rebotes  Contadores  Encendido y Apagado.  Rotación de bits.  Traslado de bits.  Interruptores y Switchs.  Rebotes  Contadores Luis David Narváez
  3. 3. RETO:  Semáforos en una intersección, incluido Stop y Go para Peatones  Enunciado: Realizar una emulación de dos semáforos en una intersección mediante el Encendido y Apagado de Leds, con indicadores de stop y go para peatones. ENCENDIDO Y APAGADO RETO:  Semáforos en una intersección, incluido Stop y Go para Peatones  Enunciado: Realizar una emulación de dos semáforos en una intersección mediante el Encendido y Apagado de Leds, con indicadores de stop y go para peatones. Luis David Narváez
  4. 4.  Para rotar los bits a la izquierda empleamos las funciones:  rotate_left( adress, bytes);  En donde address puede ser un identificador de un array o la dirección a un byte o a una estructura, bytes es el número de bytes implicados en la rotación.  Ejemplo: var = 0x40;  rotate_left(&var,1); // var=0x80 ROTACIÓN DE BITS  Para rotar los bits a la izquierda empleamos las funciones:  rotate_left( adress, bytes);  En donde address puede ser un identificador de un array o la dirección a un byte o a una estructura, bytes es el número de bytes implicados en la rotación.  Ejemplo: var = 0x40;  rotate_left(&var,1); // var=0x80 Luis David Narváez
  5. 5. TRASLADO DE BITS  La misma explicación es válida para:  rotate_right( adress, bytes)  Otra forma de realizar el mismo efecto es empleando el operador  desplazamiento (>> derecha, << izquierda)  Ejemplos: var=0x40;  var=var<<n // n es el número de bits a desplazar  La misma explicación es válida para:  rotate_right( adress, bytes)  Otra forma de realizar el mismo efecto es empleando el operador  desplazamiento (>> derecha, << izquierda)  Ejemplos: var=0x40;  var=var<<n // n es el número de bits a desplazar Luis David Narváez
  6. 6.  Enunciado: Se trata de hacer encender 8 LEDs de manera consecutiva, sin que permanezcan encendidos dos de ellos simultáneamente. Los LEDs están conectados al PORTB<RB7:RB0>, y al PORTD <RD7:RD0>. PRÁCTICA  Enunciado: Se trata de hacer encender 8 LEDs de manera consecutiva, sin que permanezcan encendidos dos de ellos simultáneamente. Los LEDs están conectados al PORTB<RB7:RB0>, y al PORTD <RD7:RD0>. Luis David Narváez
  7. 7. FLUJOGRAMA Luis David Narváez
  8. 8. SIMULACIÓN Luis David Narváez
  9. 9. RETO:  Enunciado:  Encender secuencialmente, a la izquierda dos (2) a la vez, los 8 LEDs conectados al PORTB con un retardo de 500ms. Y al mismo tiempo a la izquierda tres (3) a la vez, l 8 LEDs conectados al PORTD con un retardo de 1s. RETO:  Enunciado:  Encender secuencialmente, a la izquierda dos (2) a la vez, los 8 LEDs conectados al PORTB con un retardo de 500ms. Y al mismo tiempo a la izquierda tres (3) a la vez, l 8 LEDs conectados al PORTD con un retardo de 1s. Luis David Narváez
  10. 10. RETO:  Enunciado:  Realizar el juego de luces del auto fantástico con 8 LEDs conectados al PORTB, con un retardo de 50ms. RETO:  Enunciado:  Realizar el juego de luces del auto fantástico con 8 LEDs conectados al PORTB, con un retardo de 50ms. Luis David Narváez
  11. 11. Entradas Digitales Interruptores y Switchs Entradas Digitales Luis David Narváez
  12. 12. 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.  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
  13. 13. ENTRADAS DE DATOS Luis David Narváez
  14. 14. 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.  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
  15. 15.  Enunciado:  Se desea controlar una lámpara desde dos puntos diferentes por medio de 2 interruptores. La lámpara está conectada al RB0 y los interruptores a RA0 y RA1 PRÁCTICA  Enunciado:  Se desea controlar una lámpara desde dos puntos diferentes por medio de 2 interruptores. La lámpara está conectada al RB0 y los interruptores a RA0 y RA1 Luis David Narváez
  16. 16. DESARROLLO  Como podemos observar en el circuito, cuando los interruptores están abiertos introducen un “0L” (conectados a través de resistencias pull-down). De acuerdo a las condiciones del enunciado, la lámpara debe funcionar de acuerdo a la siguiente tabla de verdad:  Como podemos observar en el circuito, cuando los interruptores están abiertos introducen un “0L” (conectados a través de resistencias pull-down). De acuerdo a las condiciones del enunciado, la lámpara debe funcionar de acuerdo a la siguiente tabla de verdad: S1 (RA1 S0 (RA0) SALIDA (RB0) Observaciones 0 0 1 1 0 1 0 1 0 1 1 0 Apagado Encendido Encendido Apagado Luis David Narváez
  17. 17. DESARROLLO  Como se mencionó anteriormente, en lenguaje C, para realizar la lectura de un puerto se utiliza la función  var= input_port_y () // Pone en var el valor de los pines del port_y  Según analizamos anteriormente, la sentencia case es la herramienta más indicada a utilizarse en este caso.  Como se mencionó anteriormente, en lenguaje C, para realizar la lectura de un puerto se utiliza la función  var= input_port_y () // Pone en var el valor de los pines del port_y  Según analizamos anteriormente, la sentencia case es la herramienta más indicada a utilizarse en este caso. Luis David Narváez
  18. 18. SIMULACIÓN Luis David Narváez
  19. 19.  Enunciado:  Realizar un programa que permita visualizar, el estado (on/off) de 5 switchs conectados en el puerto B (<RB4:0>), mediante 5 diodos LED conectados en el puerto D (<RD4:0>). La conexión de los switchs se realizará empleando resistencias pull-up, de tal forma que, cuando un switch esté abierto el microcontrolador reciba un “1L”. En esta posición el LED correspondiente estará apagado. PRÁCTICA  Enunciado:  Realizar un programa que permita visualizar, el estado (on/off) de 5 switchs conectados en el puerto B (<RB4:0>), mediante 5 diodos LED conectados en el puerto D (<RD4:0>). La conexión de los switchs se realizará empleando resistencias pull-up, de tal forma que, cuando un switch esté abierto el microcontrolador reciba un “1L”. En esta posición el LED correspondiente estará apagado. Luis David Narváez
  20. 20. 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 5V, dando un estado lógico alto (1L), en esa posición el LED correspondiente debe estar apagado, entonces se requiere invertir el valor leído en el puerto B para sacar un estado lógico bajo (0L) que apague el LED.  La misma lógica se aplicará en la posición ON (cerrado).  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 5V, dando un estado lógico alto (1L), en esa posición el LED correspondiente debe estar apagado, entonces se requiere invertir el valor leído en el puerto B para sacar un estado lógico bajo (0L) que apague el LED.  La misma lógica se aplicará en la posición ON (cerrado). Luis David Narváez
  21. 21. SIMULACIÓN Luis David Narváez
  22. 22.  Enunciado:  Se desea realizar un programa que cuente los pulsos provenientes de un pulsador (CONTADOR) conectado a RD1 y los visualice en forma binaria en LEDs conectados al PORTB. El número máximo de conteo será 12, momento en el cual se detiene y activa una señal visual (LED) o sonara (Zumbador, conectado al RD2) por 5 veces. El reinicio del conteo se realiza presionando la tecla REINICIO conectada al pin RD0 PRÁCTICA  Enunciado:  Se desea realizar un programa que cuente los pulsos provenientes de un pulsador (CONTADOR) conectado a RD1 y los visualice en forma binaria en LEDs conectados al PORTB. El número máximo de conteo será 12, momento en el cual se detiene y activa una señal visual (LED) o sonara (Zumbador, conectado al RD2) por 5 veces. El reinicio del conteo se realiza presionando la tecla REINICIO conectada al pin RD0 Luis David Narváez
  23. 23. DESARROLLO  En este caso vamos a utilizar las funciones de verificación del estado de un pin del puerto,  If (bit_test(var,3) || !bit_test(var,1)) // o el bit 3 de var es 1 o el bit 1 es 0.  El mismo efecto se tiene si se emplea  if(input(pin_x) || !input(pin_y))  Para el incremento utilizaremos:  var++ // equivale a var=var+1  En este caso vamos a utilizar las funciones de verificación del estado de un pin del puerto,  If (bit_test(var,3) || !bit_test(var,1)) // o el bit 3 de var es 1 o el bit 1 es 0.  El mismo efecto se tiene si se emplea  if(input(pin_x) || !input(pin_y))  Para el incremento utilizaremos:  var++ // equivale a var=var+1 Luis David Narváez
  24. 24. DESARROLLO  El programa se ha realizado de tal forma que el incremento en el conteo se realiza solo si se suelta la tecla de conteo.  Además se han utilizado unos pequeños retardos para eliminar los rebotes.  Otra situación importante que hay que remarcar es que el reinicio se sucede únicamente si el contador ha llegado al valor máximo (12 decimal). Luis David Narváez  El programa se ha realizado de tal forma que el incremento en el conteo se realiza solo si se suelta la tecla de conteo.  Además se han utilizado unos pequeños retardos para eliminar los rebotes.  Otra situación importante que hay que remarcar es que el reinicio se sucede únicamente si el contador ha llegado al valor máximo (12 decimal).
  25. 25. SIMULACIÓN Luis David Narváez
  26. 26. RETO:  Enunciado:  Realizar un contador binario tal que, con un pulsador cuente en forma ascendente hasta llegar a 255(Puede ser hasta 25 por pruebas) y luego sea descendente. Un led conectado en RA3 se encenderá cuando el contador este al máximo o al mínimo (0 y 255). RETO:  Enunciado:  Realizar un contador binario tal que, con un pulsador cuente en forma ascendente hasta llegar a 255(Puede ser hasta 25 por pruebas) y luego sea descendente. Un led conectado en RA3 se encenderá cuando el contador este al máximo o al mínimo (0 y 255). Luis David Narváez
  27. 27. RETO:  Enunciado:  Realizar un contador binario con dos pulsadores, uno ascendente hasta 255 y con otro descendente hasta 0. El cambio de ascendente a descendente se realiza en cualquier instante según se presione el pulsador correspondiente. Existirá además un botón de reinicio. RETO:  Enunciado:  Realizar un contador binario con dos pulsadores, uno ascendente hasta 255 y con otro descendente hasta 0. El cambio de ascendente a descendente se realiza en cualquier instante según se presione el pulsador correspondiente. Existirá además un botón de reinicio. Luis David Narváez
  28. 28. MUCHAS GRACIASMUCHAS GRACIAS PREGUNTAS / COMENTARIOS Luis David Narváez

×