ti-usb manual de usuario

18
Manual de Usuario de la Tarjeta de Interfaz USB Carlos Soubervielle Montalvo Alfredo Orozco de la Paz Abril-2014

Upload: pablo-estrada

Post on 22-Dec-2015

17 views

Category:

Documents


0 download

DESCRIPTION

oooooooooooo

TRANSCRIPT

Manual de Usuario de la Tarjeta de Interfaz USB

Carlos Soubervielle MontalvoAlfredo Orozco de la Paz

Abril­2014

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

ÍNDICE

Descripción general de la Tarjeta de Interfaz USB.............................................................................. 1Diagrama físico.................................................................................................................................................... 2Instalación del driver.................................................................................................................... .................... 3Direccionamiento de los puertos y palabra de configuración........................................................ 7Uso de la librería para Dev C++................................................................................................................... 9Ejemplos de programación.............................................................................................................. ............... 10Características eléctricas........................................................................................................... ................... 12Recomendaciones.............................................................................................................................................. 13

Laboratorio de Hardware Avazado

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Descripción general de la Tarjeta de Interfaz USB

La primera aplicación de la tarjeta de desarrollo CIEmbSys 1.0 (Sistema Embebidode Computación e Informática 1.0, diseñado e implementado en el Laboratorio deHardware Avanzado) es la de emular a un PPI 8255, del inglés ProgrammablePeripheral Interface, que se comunica con la computadora mediante el puertoUSB, del inglés Universal Serial Bus, al cual se le envían una serie de comandospara la lectura y escritura de sus registros de control y registros asociados a lospuertos. Está aplicación fue desarrollada para funcionar como tarjeta de interfazen los proyectos integradores de la materia de Diseño de Circuitos Lógicos.La configuración y programación de la tarjeta en Dev C++ requiere de una librería escritapara este compilador, la cual se describe mas adelante en otro apartado.

En la tarjeta se muestran nombradas y enumeradas las conexiones de los puertos A, B yC (referentes al PPI), alimentación y tierra, que son las principales.

La tarjeta dispone de 24 Entradas/Salidas divididas en tres puertos: Puerto A, Puerto B yPuerto C, estos puertos son bidireccionales y su modo de trabajo debe ser programado.La tarjeta cuenta con un registro de control que define si los puertos serán de entrada ode salida, este registro se puede reprogramar en tiempo de ejecución. Además esimportante mencionar que esta tarjeta cuenta con 6 terminales para otros usos, loscuales no se incluyen en esta aplicación.

El puerto A es un puerto de 8 bits que puede ser configurado como entrada o comosalida. El Puerto B es idéntico al puerto A. El Puerto C es también de 8 bits, con ladiferencia de que está dividido en 2 puertos de 4 bits, PCL y PCH que pueden serprogramados como entrada o como salida independientemente. El PCL se compone delos bits PC<0:3> y el PCH de los bits PC<4:7>.

Laboratorio de Hardware Avanzado 1

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Diagrama físico

Laboratorio de Hardware Avazado 2

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Instalación del driver

Para que la computadora reconozca a la Tarjeta de Interfaz, es necesaria la instalación deldriver que la controla, que es suministrado por los encargados del Laboratorio HWAV.

En el mismo archivo viene incluida la librería para Dev C++.

1 – Conecte la Tarjeta al puerto USB de la computadora, el LED verde debe parpadearrápidamente, indicando que no ha sido reconocida por la computadora.

2 – Se abrirá el instalador de nuevo dispositivo. El instalador indicara que no fue posibleinstalar el dispositivo ya que no encontró el controlador de la tarjeta.

3 – Diríjase al panel de control y abra el administrador de dispositivos.

Laboratorio de Hardware Avazado 3

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

4 - En la ventana que se muestra seleccione el elemento nombrado como “DispositivoDesconocido”, de clic derecho y a continuación seleccione “Actualizar software decontrolador...”

5 – Aparecerá una ventana como la siguiente:

Seleccione “Buscar Software de controlador en el equipo”.

Laboratorio de Hardware Avazado 4

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

6 – A continuación escoja la carpeta en donde descargó los drivers (1) y de clic ensiguiente (2).

7 - Se mostrará una ventana de advertencia diciendo que no puede comprobar el driver,seleccione “instalar este software de controlador de todas formas”.

Laboratorio de Hardware Avazado 5

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

8 – Al finalizar se verá la ventana avisando que la Tarjeta de Interfaz USB se instalócorrectamente. Esto se comprueba cuando el LED verde de la tarjeta parpadea maslentamente, indicando que la tarjeta ha sido reconocida por el sistema operativo.

9 -Se puede consultar el puerto COM al que esta conectada la tarjeta de interfaz en elAdministrador de Dispositivos.

Laboratorio de Hardware Avazado 6

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Direccionamiento de los puertos y palabra de configuración

La Tarjeta de Interfaz USB cuenta con 4 registros que están asociados a el Puerto A, elPuerto B, el Puerto C y el Registro de Control, cada uno tiene su dirección con la cual sepuede acceder a el como se muestra en la tabla siguiente:

Los registros PA, PB y PC son los registros asociados a los puertos de la tarjeta y sepueden leer y escribir para conocer o establecer su estado siempre y cuando se hayaprogramado el registro de CONTROL con la palabra de configuración.

El registro de control es el que configura cómo van a trabajar los puertos, si comoentrada o como salida. Éste registro es de 8 bits, los 4 bits más significativo no se usan yno importa su estado, los 4 bits menos significativos configuran los puertos PA, PB, PCL yPCH.

PA<0>: Un 1 configura el puerto A como entrada. Un 0 configura el puerto A como salida.

PB<1>: Un 1 configura el puerto B como entrada. Un 0 configura el puerto B como salida.

PCL<2>: Un 1 configura el puerto C BAJO como entrada. Un 0 configura el puerto C BAJO como salida.

PCH<3>: Un 1 configura el puerto C ALTO como entrada. Un 0 configura el puerto C ALTO como salida.

Laboratorio de Hardware Avazado 7

REGISTRO DIRECCIÓNPA 0x00PB 0x01PC 0x02

CONTROL 0x03

Registro de Control (0x03)7 6 5 4 3 2 1 0X X X X PCH PCL PB PA

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Si no se ha programado la palabra de control, la tarjeta omite las escrituras a puertos yuna lectura devolverá siempre cero. Es necesario escribir esta palabra después de cadareset de la tarjeta, el LED verde deja de parpadear una vez programada la palabracorrectamente.

Por ejemplo, se desea programar el PA como entrada, el PB como entrada y el PC comosalida, la palabra de control que se tendría que programar seria la siguiente:

La palabra que hay que programar en el registro de control es 0x03.

Todos los registros asociados a los puertos y el registro de control permiten operacionesde lectura y escritura, aunque el comportamiento de cada operación varia dependiendode si el puerto es de entrada o salida.

- Una lectura a un puerto configurado como salida devolverá el último valor escrito en ese puerto.

- Una escritura a un puerto configurado como entrada no tiene efecto en las salidas del puerto.

Laboratorio de Hardware Avazado 8

Palabra de Control

7 6 5 4 3 2 1 00X03X X X X PCH PCL PB PA

0 0 0 0 0 0 1 1

Valor Hexadecimal

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Uso de la librería para Dev C++

Para comunicarnos con la tarjeta, se necesita usar una librería escrita para Dev C++, lacual implementa 4 funciones: 2 funciones para iniciar y cerrar la comunicación con latarjeta y 2 funciones para leer y escribir un dato en algún puerto o en el registro decontrol.

La librería se llama “tiusb.h” y las funciones que implementa son las siguientes:

int TIInit(char* NombrePuerto)

Configura y abre el puerto al que está conectada la tarjeta.

Recibe: NombrePuerto: Nombre del puerto al que está conectada la tarjeta (COM1, COM2, ETC.). Devuelve: Devuelve un 1 si el puerto se abrió y configuró correctamente, de lo contrario devuelve 0.

int TIClose()

Cierra el puerto al que está conectada la tarjeta.

void TIOutportb(unsigned char Puerto, unsigned char Dato)

Envía un dato a un puerto de la tarjeta.

Recibe: Puerto: Numero del puerto al que se escribe.

Dato: Dato que se enviará al puerto.

unsigned char TIInportb(unsigned char Puerto)

Lee un puerto de la tarjeta:

Recibe: Puerto: Numero del puerto a leer: Devuelve: Devuelve un valor entre 0 y 255 leído de la tarjeta.

Para poder hacer uso de esta librería en un programa, haga lo siguiente:

1 – Haga un nuevo proyecto en Dev C++.

2 – Una vez creado el proyecto, copie el archivo “tiusb.h” descargado previamente en lacarpeta donde guardo el proyecto recién creado (donde se encuentra el archivo main).

3 - En el archivo main haga la inclusión de la librería “tiusb.h” al principio del archivo.

#include “tiusb.h”

4 - Ahora puede hacer uso de las funciones de la librería “tiusb.h” para el manejo de la tarjeta.

Laboratorio de Hardware Avazado 9

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Ejemplos de programación

Ejemplo 1: Manejo de salidas.

Lo que hace el programa anterior es abrir el puerto con la función TIInit(PUERTO) a la quese le pasa el nombre del puerto, en este caso COM1.

Si se pudo abrir el puerto, se programa la palabra de control con la funciónTIOutportb(CONTROL,0x00) que establece todos los puertos como salida.

A continuación se escribe 0xFF (255) en los puertos A, B y C con las funcionesTIOutportb(PA,0xFF), TIOutportb(PB,0xFF) y TIOutportb(PC,0xFF).

Al final se cierra el puerto con TIClose() y termina el programa.

Note que al principio del programa se definen los nombres de los puertos (PA, PB, PC) y elregistro de control ( CONTROL) asociando la dirección correspondiente al registro y acada puerto.

Laboratorio de Hardware Avazado 10

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Ejemplo 2: Manejo de entradas

El programa consiste en hacer una lectura del puerto A y mostrar su contenido por elpuerto B.

El código es similar al anterior, primero intenta abrir el puerto y si lo abre, escribe lapalabra de control para establecer PA como entrada, PB salida y PC como salida, si no loabre se muestra un mensaje de error.

En seguida se lee el puerto A con la función TIInportb(PA) y se guarda su contenido en lavariable dato.

Por último se escribe el contenido del puerto A en el puerto B y se cierra lacomunicación.

Laboratorio de Hardware Avazado 11

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Características eléctricas

Laboratorio de Hardware Avazado 12

Máxima corriente en el pin VSS:Máxima corriente en el pin VDD:Máxima corriente suministrada por un pin:Máxima corriente de entrada en cada pin:Máxima corriente suministrada por todos los puertos:Máxima corriente de entrada en todos los puertos:Voltaje máximo de alimentaciónVoltaje máximo en puerto de salida

300 mA250 mA25   mA25   mA200 mA200 mA5.0  V4.5  V

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Recomendaciones

Cambiar el puerto COM de la tarjeta.

Es recomendable que el numero de puerto COM se el más bajo posible (entre 1 y 10),esto es para evitar problemas con el manejo de los puertos en windows, ya que no seacceden directamente, si no a través de un archivo.

Para cambiar el numero de puerto COM, con la tarjeta conectada a la computadora, vallaa Panel de Control -> Administrador de Dispositivos, en el apartado Puertos COM y LPT declic derecho en Tarjeta de Interfaz USB -> propiedades.

En la ventana que aparece valla a la pestaña Configuración de Puerto y después enOpciones avanzadas .

Laboratorio de Hardware Avazado 13

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Seleccione el nuevo puerto COM en Numero de puerto COM y de clic en aceptar

Ejecutar el programa como Administrador

En algunas computadores es necesario que se ejecuta el programa escrito para la tarjetacomo administrador, esto solo se hace la primera vez si el programa no puede conectarsecon la tarjeta mediante la función TIInit(), ya que el usuario no tiene permisos paraacceder a los puertos de la computadora. Esto solo es necesario para windows vista ywindows 7.

Conexiones a los puertos

No se recomienda conectar cargas grandes (como motores, actuadores, reveladores,etc..) directamente en los puertos de la tarjeta, ya que estos no pueden suministrar lacorriente necesaria para activar las cargas. Se recomienda usar una etapa de potenciaprevia.

Tampoco es recomendable suministrar una gran cantidad de corriente por los puertos deentrada ya que se pueden dañar, lo aconsejable es limitar la corriente de entrada a unpuerto mediante una resistencia de PULL-UP o PULL-DOWN.

Laboratorio de Hardware Avazado 14

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

Alimentación de la tarjeta

El puerto USB de la computadora proporciona una fuente de alimentación continua de 5 Vy 500 mA, de los cuales la tarjeta consume 150 mA para su funcionamiento, quedandodisponibles aproximadamente 4.3 V y 350 mA que se suministran en los pines de VCC yGND, para alimentar circuitería externa que no exceda estos valores. Si se necesita mascorriente se debe conectar otra fuente de alimentación con las tierras puenteadas.

Laboratorio de Hardware Avazado 15

Tarjeta de Interfaz USB - Manual de Usuario Área de Computación e Informática UASLP

NOTAS:

Laboratorio de Hardware Avazado 16