Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

04.Entradas y salidas digitales

2,706 views

Published on

  • Login to see the comments

  • Be the first to like this

04.Entradas y salidas digitales

  1. 1. Sistemas Basados en MicroprocesadoresEntradas y Salidas Digitales
  2. 2. Pines de Entrada/Salida Está organizados en puertas de hasta 8 líneas.  Los PIC18 dispone de hasta 8 puertas dependiendo del encapsulado. Todas las líneas están multiplexadas (realizan diversas funciones según estén programadas), pero todas tienen la capacidad de trabajar como líneas de E/S digitales.  Para su manejo como E/S digitales, todas ellas se manejan por medio de 3 registros:  TRISx  configuración de la puerta.  PORTx  valor del estado de la puerta.  LATx  inhibe la salida de los niveles lógicos. http://paginaspersonales.deusto.es/jonathan.garibay/
  3. 3. E/S digitales Para indicar que una línea es una entrada, se pone ‘1’ en el bit correspondiente del registro TRISx; para indicar que es salida, se pone un ‘0’. Para conocer el estado de una línea de entrada, se lee el bit correspondiente del registro PORTx. Para establecer el estado de una línea de salida, se escribe un ‘0’ o un ‘1’ en el bit correspondiente del registro PORTx o LATx.  Es preferible utilizar el registro LATx para la escritura. http://paginaspersonales.deusto.es/jonathan.garibay/
  4. 4. E/S digitales: Puerta A Esta puerta dispone de 7 líneas.  Todas ellas pueden ser E/S digitales configurando el registro ADCON1.  5 de ellas pueden trabajan como entradas para el conversor A/D.  RA4 es la entrada de pulsos para el TMR0.  Debido a ello, si se usa esta línea como salida necesita de una resistencia Pull-Up para su correcto funcionamiento. Si no se pone la resistenciaPull-Up la línea sólo sacará 0V aunque haya un ‘1’ en el bit RA4 del registro PORTA http://paginaspersonales.deusto.es/jonathan.garibay/
  5. 5. E/S digitales: Puerta A (Continuación…) Explicación detallada de los pines de la puerta A: Para cada puerta, hay una tabla como esta en el datasheet http://paginaspersonales.deusto.es/jonathan.garibay/
  6. 6. E/S digitales: Puerta B Tiene 8 líneas <RB7:RB0>  Todas ellas pueden ser E/S digitales y disponen de resistencias Pull-Up internas que se pueden habilitar con el bit RBPU# del registro INTCON.  <RB2:RB0> implementan cada una de ellas una interrupción externa por flanco.  <RB7:RB4> implementa una interrupción por cambio de nivel en cualquiera de las 4 líneas. http://paginaspersonales.deusto.es/jonathan.garibay/
  7. 7. E/S digitales: Puerta C Dispone de 8 líneas <RC7:RC0>  Además de actuar como E/S digitales, guardan relación con los módulos CCP, las comunicaciones USART y el módulo MSSP, y como oscilador externo y entrada de pulsos para el TMR1/TMR3.  El funcionamiento con estos periféricos puede variar el valor asignado a las líneas de TRISC. http://paginaspersonales.deusto.es/jonathan.garibay/
  8. 8. E/S digitales: Puerta D y Puerta E La puerta D dispone de 8 líneas que pueden trabajar como líneas de E/S digital, y si se usa el puerto paralelo se utiliza como puerto de datos. La puerta E dispone de 3 líneas que pueden trabajar como E/S digital (en PIC de más de 40 pines, la puerta E dispone de 8 bits).  Si se usa el puerto paralelo, trabajan como señales de control para la comunicación.  También pueden ser utilizadas como entradas del conversor A/D. http://paginaspersonales.deusto.es/jonathan.garibay/
  9. 9. Uso de Máscaras Una máscara de bits se puede entender como un dato binario (normalmente constante) que permite actuar selectivamente sobre ciertos bits de otro dato a través de una operación lógica (AND, OR, EOR).  Las máscaras de bits se emplean para actuar sobre subconjuntos de bits de un operando.  Poner bits a 0  máscara AND dato.  Poner bits a 1  máscara OR dato.  Invertir bits máscara EOR dato. http://paginaspersonales.deusto.es/jonathan.garibay/
  10. 10. Uso de Máscaras (Continuación…) Ejemplos  Poner a 1 los bits 1, 2 y 4 del registro D1, dejando intactos los demás. Solución: 0b00010110 or D1  Invertir los bits 4, 5, 6 y 7 del registro D2, dejando intactos los demás. Solución: 0b11110000 eor D2  Borrar los bits 2, 3 , 5 y 7 del registro D3, dejando intactos los demás Solución: 0b01010011 and D3 http://paginaspersonales.deusto.es/jonathan.garibay/
  11. 11. E/S Digitales y Máscaras Paracomprobar el estado de una línea de entrada se pueden utilizar las instrucciones btfss y btfsc.  Cuando se quieren comprobar más de una línea a la vez se utilizan máscaras. … ¿Qué dato debe contener PORTB movf PORTB, W para llegar a datoBuscado? andlw 0b00111100 sublw 0b00110000 btfss STATUS, Z goto datoNoBuscado goto datoBuscado … http://paginaspersonales.deusto.es/jonathan.garibay/
  12. 12. El efecto rebote En el momento de presionar un pulsador o cualquier conmutador electromecánico es inevitable que se produzca un pequeño arco eléctrico durante un breve instante. El periodo transitorio de un rebote depende de diversos factores como son la calidad de los switches y la rapidez de su accionamiento.  Lo máximo que puede durar son 20mS. Puede darse el caso de que el µControlador detecte varias pulsaciones en lugar de una única pulsación http://paginaspersonales.deusto.es/jonathan.garibay/
  13. 13. El efecto rebote (Continuación…) Trabajo personal  Buscar las posibles soluciones a este problema (mínimo de 2 ideas) http://paginaspersonales.deusto.es/jonathan.garibay/

×