1 / 24

Puertos I/O

Puertos I/O. Puertos I/O. 56 lineas divididos en 7 puertos de 8 bits No todos accesibles en los pines del módulo RCM3XX0 Los pines suelen tener funciones alternativas. Puerto A. Funciona como todo entradas o todo salidas

ryo
Download Presentation

Puertos I/O

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Puertos I/O

  2. Puertos I/O • 56 lineas divididos en 7 puertos de 8 bits • No todos accesibles en los pines del módulo RCM3XX0 • Los pines suelen tener funciones alternativas

  3. Puerto A • Funciona como todo entradas o todo salidas • Comparte función con el bus de datos del puerto esclavo o del puerto auxiliar

  4. Puerto A

  5. Puerto B • Se puede programar cada línea como entrada o salida • Comparte función con el bus de direcciones del puerto auxiliar • PBDDR 1=salida 0=entrada

  6. Puerto C • Cuatro entradas (impares) cuatro salidas (pares) • Comparte función con los puertos serie

  7. Puerto D • Se puede programar cada línea como entrada o salida • Pueden funcionar en drenador abierto o como salidas normales • Pueden sincronizarse las salidas con un timer • Pines 4,5,6 y 7 pueden funcionar como puertos serie (B y A)

  8. Puerto D

  9. Puerto D

  10. Puerto D

  11. Puerto E • Se puede programar cada línea como entrada o salida • PE7 es el chip select del puerto esclavo • Cada linea puede ser un I/O strobe (registro de función) • Cuatro líneas pueden pedir interrupción (PE0, PE1, PE4, PE5) • Pueden sincronizarse las salidas con un timer

  12. Puerto E

  13. Puerto E

  14. Puerto F • Se puede programar cada línea como entrada o salida • Pueden sincronizarse las salidas con un timer • Funciones alternativas : salidas PWM, entradas del encoder en cuadratura, Reloj del puerto serie síncrono

  15. Puerto F

  16. Puerto G • Se puede programar cada línea como entrada o salida • Pueden sincronizarse las salidas con un timer • Funciones alternativas : puerto serie síncrono

  17. Puerto G

  18. Funciones para escribir en registros BitRdPortI <SYSIO.LIB> SYNTAX: int BitRdPortI(int PORT, int bitnumber); KEYWORDS: parallel port PARAMETER1: address of internal I/O port. PARAMETER2: bit (0-7) to read value from. DESCRIPTION: Returns 1 or 0 matching the value of the bit read from the specified internal I/O port. All of the Rabbit internal registers have predefined macros corresponding to the register's name. PADR is #defined to be 0x30, etc. RETURN VALUE: Returns an integer equal to 1 or 0.

  19. Funciones para escribir en registros RdPortI <SYSIO.LIB> SYNTAX: int RdPortI(int PORT); KEYWORDS: parallel port PARAMETER1: address of internal I/O port. DESCRIPTION: Reads an internal I/O port specified by the argument (use RdPortE for external port.) All of the Rabbit internal registers have predefined macros corresponding to the register's name. PADR is #defined to be 0x30, etc. RETURN VALUE: Returns an integer, the lower 8 bits of which contain the the result of reading the port specified by the first argument.

  20. Funciones para escribir en registros BitWrPortI <SYSIO.LIB> SYNTAX: void BitWrPortI(int PORT, char *PORTShadow, int value, int bitcode); KEYWORDS: parallel port PARAMETER1: address of internal I/O port. PARAMETER2: address of variable shadowing current value of port. PARAMETER3: value to write to port. PARAMETER4: bit (0-7) to write value to. DESCRIPTION: Updates shadow register at bit with value (0 or 1) and copies shadow to I/O port. WARNING: a shadow register is REQUIRED for this function. All of the Rabbit internal registers have predefined macros corresponding to the register's name. PADR is #defined to be 0x30, etc. RETURN VALUE: None

  21. Funciones para escribir en registros WrPortI <SYSIO.LIB> SYNTAX: void WrPortI(int PORT, char *PORTShadow, int data_value); KEYWORDS: parallel port PARAMETER1: address of internal I/O port. PARAMETER2: address of variable shadowing current value of port. PARAMETER3: value to write to port. DESCRIPTION: Writes an internal I/O port with 8 bits and updates shadow for that port. The variable names must be of form "Port" and "PORTShadow" for most efficient operation. A null pointer may be substited (use "NULL") if shadow support is not desired or needed. All of the Rabbit internal registers have predefined macros corresponding to the register's name. PADR is #defined to be 0x30, etc. RETURN VALUE: none

  22. Ejemplos Configurar PF4 como salida: BitWrPortI(PFDDR, &PFDDRShadow,1, 4); Poner PF4 a 1: BitWrPortI(PFDR, &PFDRShadow,1, 4);

More Related