Download Kit USB1.1

Document related concepts
no text concepts found
Transcript
Kit de aprendizaje USB1.1
SiTech de México
Contacto de ventas y soporte técnico:
[email protected]
http://www.displus.com.mx/paginas/EQUIPO/kit.htm
Introducción
•
•
•
•
•
•
•
Este kit ha sido diseñado especialmente para la materia de Sistemas
Digitales. Fue desarrollado por alumnos del Centro Universitario de la
Ciénega, quienes ahora son fundadores de la empresa SiTech de México.
SiTech agradece a los maestros José Ávila Paz y Armando Becerra
González, quienes siempre nos brindaron su apoyo.
El USB es un bus de comunicaciones estándar desarrollado al principio por
Intel, Microsoft, NEC y Compaq.
La especificación mas reciente es la 2.0. Este kit se basa en la versión 1.1,
que es totalmente compatible con la 2.0. SiTech también desarrolla
memorias Flash y dispositivos con tecnología USB 2.0, que es un poco mas
cara.
El objetivo de este kit es promover el diseño en México de periféricos de
computadora y hardware en general.
Mediante este kit se pretende que tengas un panorama sencillo sobre las
comunicaciones USB y no tengas que preocuparte por las complejidades
de las capas mas bajas de comunicaciones.
Este documento te guiará para que armes tu nuevo kit fácilmente, en un
tiempo récord y sin problemas. No necesitas tener conocimientos previos
sobre el USB, sin embargo, un poco de electrónica (por lo menos debes
saber utilizar un cautín!) es recomendable.
El Kit
• Este kit consiste en un cable USB, una tableta fenólica perforada,
un microcontrolador, un reloj de alta precisión a 6Mhz, una módulo
de cero fuerza de inserción (ZIF) de 28 pines, 9 resistencias de
1.5K, un capacitor de .2 microfaradios y otro de .1 microfaradios,
una barra de LEDs, 10 resistencias de 330 ohms, 8 botones y un
LCD (opcional).
• La especificación USB especifica que los dispositivos de baja
velocidad lleven su cable soldado, por lo tanto no se incluyó un
receptáculo para el cable.
• Además de esto, puedes descargar los programas de ejemplo y
este instructivo de la página:
http://www.displus.com.mx/paginas/EQUIPO/kit.htm
• Con estos componentes puedes iniciar tu proyecto USB en un solo
día.
El Firmware
• La gran mayoría de los aparatos que existen, tienen
microcontroladores, que son circuitos integrados que procesan
información. Un microcontrolador es una computadora completa,
con entradas, proceso, memoria, periféricos y salida.
• El kit explota los periféricos del microcontrolador. De esta forma
tiene 12 patas que son entradas o salidas digitales, 5 pines que son
entradas analógicas para conversión Análogo-Digital, dos pines que
son salidas de tipo PWM y Un motor de interfaz serial (SIE) para
comunicarse con la computadora a través del puerto USB.
• En adición a esto, se programaron algunas funciones especiales de
control multimedia que se pueden usar directamente.
• El firmware es un programa que radica en la memoria ROM del
microcontrolador. Este firmware fue desarrollado en lenguaje C.
• No necesitas preocuparte por el firmware, de eso nos encargamos
nosotros!. Si te interesa aprender mas sobre el funcionamiento del
firmware, puedes verificarlo en el capítulo 9 de la especificación
USB 1.1.
El Software
•
•
•
•
•
•
La parte esencial de este kit radica en el Software. El software fue
desarrollado en Delphi y utiliza las Interfaces de Programación para
Aplicaciones (APIs) del sistema operativo Microsoft Windows para
dispositivos de Interfaz Humana (HIDs).
Te sorprenderá lo fácil que es interactuar con el dispositivo desde cualquier
aplicación. Tu única responsabilidad es hacer el programa en Delphi para
controlar tu dispositivo. Nosotros te damos ejemplos con código listos para
usarse que te servirán como punto de partida.
Para simplificar la tarea de programación, las APIs son manejadas por un
componente adicional que se instala en Delphi una sola vez.
La comunicación con el dispositivo USB se realiza mediante paquetes. Un
dispositivo HID denomina reportes a los paquetes de datos que envía a la
computadora. Para mayor información sobre el protocolo USB o la
especificacion HID puedes consultar la página www.usb.org
Para este dispositivo estamos utilizando dos reportes. El primer reporte solo
es de entrada y maneja aplicaciones multimedia. El segundo reporte es de
entrada y salida y maneja los puertos del microcontrolador, así como su
módulo Analógico Digital. Puedes escribir o leer datos mediante el reporte 2.
En terminología USB, entrada o salida siempre se ve desde el punto de vista
de la computadora (denominado host), es decir, una entrada sería la
transmisión de datos desde el dispositivo periférico hacia la computadora y
una salida sería la transmisión de datos desde la computadora hacia el
periférico.
Precauciones
• Los dispositivos usb están diseñados para operar con la corriente
que proporciona el bus. Este dispositivo reporta un consumo
máximo de 100mA. El protocolo especifica un consumo máximo de
500mA, pero no todos los hubs soportan ese amperaje.
• Si tu aplicación requiere control de motores o de relevadores,
entonces necesitas una fuente externa y aislar el microcontrolador
del dispositivo de potencia. Para hacer esto, une las tierras de tu
fuente y del USB, utiliza transistores u optoacopladores. El
microcontrolador soporta una corriente máxima de 25mA. Mantén
dicha corriente por debajo de 10 mA.
• En general jamás toques los pines de un circuito integrado. Las
cargas estáticas pueden dañarlo internamente. Puedes tomarlo por
los bordes de plástico.
• Siempre que soldes una placa, verifica mediante un multímetro la
calidad de las conexiones. Nunca deberá de haber contacto entre
pines que no lleven un alambre. Dicho contacto puede pasar
desapercibido, ya que el carbón generado al soldar es conductor.
Para asegurarte de que no hay contacto entre dos pistas, verifica
que la lectura del ohmetro sea infinitos ohms.
• Nunca conectes LEDs sin resistencias. Una resistencia de 220 a
330 ohms es adecuada.
Sugerencias
• Si te interesa saber más sobre el usb, visita la página www.usb.org
• Si por alguna razón tu kit no funciona, lo primero que debes
considerar es si está bien soldado y en segundo lugar, que hayas
realizado bien todas las conexiones.
• Pon el reloj lo mas cerca posible al microcontrolador. Esto garantiza
que no haya problemas de ruido en el reloj.
• Puedes probar el kit en una tableta de experimentación (proto), pero
ten en cuenta que hay capacitancias y mucho ruido en ellas.
• El kit tiene mensajes en inglés y en español. Prueba instalándolo en
sistemas operativos en inglés y en español.
• El sistema operativo Microsoft Windows es el mas fuerte en cuanto
a la tecnología USB y HID, pero también puedes probar buscando
controladores para otros sistemas operativos.
Diagrama de Pines
Identificando el Cable
Tomado de la especificación USB 1.1
Diagrama de Conexión
6Mhz
100nF
1.5K
200nF
Conectando Push Buttons
Puedes conectar push buttons en los
pines definidos como entradas. No
olvides la resistencia, ya que de otra
forma no funcionará.
Esta es la forma mas simple para
hacerlo, pero existen otras mas
eficientes.
1.5K
Al conectar botones entre los pines
21 a 28 podrás utilizar las funciones
multimedia que se activan
automáticamente al conectar el kit, o
bien, cuando utilizas el acuse de
recibo 0.
Cada pin tiene una función asignada.
En la siguiente diapositiva se explican
todas.
Funciones multimedia
•
•
•
•
•
•
•
•
Pin 21: Volumen +
Pin 22: Volumen –
Pin 23: Reproducir
Pin 24: Pausar
Pin 25: Siguiente
Pin 26: Anterior
Pin 27: Stop
Pin 28: Sacar disco
Nota importante: El kit está
diseñado intencionalmente
para desactivar las funciones
multimedia cuando se utiliza un
acuse de recibo diferente de
cero.
Si deseas obtener la
funcionalidad multimedia a
pesar de estar utilizando
acuses de recibo, genera una
escritura con un acuse
arbitrario y posteriormente
genera la misma orden con un
cero como acuse. De esta
forma las funciones multimedia
permanecerán activas.
Conectando LEDs
El módulo PWM, al que está
conectado este LED, siempre
es una salida. Con él puedes
variar la intensidad con la que
enciende el LED.
También puedes utilizar
cualquiera de los pines
digitales en modo de salida
(los marcados en amarillo en
el diagrama)
330
ohms
Es recomendable utilizar
lógica invertida al encender
LEDs, es decir, encenderlos
con ceros. También puedes
encenderlos con unos
invirtiendo la polaridad del
LED y poniendo la resistencia
a tierra.
Instalación
•
•
•
•
Requisitos: Deberás tener Delphi 5.
Primero abre la carpeta ControladorHID.
Haz doble click en HidController.dpk
Delphi se abrirá y te mostrará la opción Install.
Haz click ahí y sigue las instrucciones.
• Sigue el diagrama de conexión para que armes
tu kit.
• Abre el programa de ejemplo usb.exe
• Conecta el kit y verifica que el estado haya
cambiado a conectado. Si esto pasa, haz
instalado correctamente tu kit.
Programación
• SiTech te recomienda que utilices una copia del programa de
ejemplo usb.dpr
• Utiliza las rutinas Leer y Escribir.
• Para utilizar los acuses de recibo, el esquema es el siguiente: Al
recibir datos, se ejecuta la rutina Leer. En ese momento compara el
acuse de recibo recibido en los 4 bits mas significativos del Dato2
(el byte 6 en el arreglo del reporte). Si es igual al acuse que
mandaste en la última escritura, tendrás seguridad de que el micro
ya ejecutó tu ultima orden. Genera un nuevo acuse y espera a que
regrese un reporte con el nuevo acuse como confirmación.
• Puedes prescindir de los acuses de recibo si tu aplicación no es del
tipo petición – respuesta.
• En el código fuente encontrarás otras rutinas que monitorean el
estado del bus en espera de conexión del dispositivo o de
desconexión del mismo. No necesitas modificarlas.
• Puedes darte cuenta de que una cantidad considerable de código
solamente sirve para realizar la demostración de las capacidades
del kit y puedes borrarlo tranquilamente o sustituirlo por otra cosa.
Información de Contacto
• Eventualmente te surgirá el deseo de comercializar tu
dispositivo. SiTech no te desampara. Podemos venderte
micros programados por separado o kits completos
según sean tus necesidades, desde uno solo hasta
todos los que necesites.
• En SiTech nos interesa mucho tu opinión. Si tuviste
problemas al usar el kit, por favor háznolo saber de
inmediato para mejorar el kit y resolver todas tus dudas.
• Puedes contactarnos al correo electrónico:
[email protected]. Por favor no olvides poner
en el asunto del mensaje la frase Kit USB. Nosotros
responderemos a la brevedad posible.
• ¡Gracias por utilizar los productos de SiTech!