You are on page 1of 6

APLICACIN DE SISTEMAS EMBEBIDOS

Anbal Garca Clavijo


E-mail: anibalgarciaclavijo@hotmail.com
Dilson Zuleta Molina
E-mail: dilsonzm@gmail.com
Harold Valega Velilla
E-mail: haroldvalega26@hotmail.com
Aldair Barcenas
E-mail: aldair1208@hotmail.com
Jesus David Diaz Pretel
E-mail: jddpjesus21@gmail.com

RESUMEN: La idea del laboratorio es realizar un perifrico que automticamente ser


prototipo de comunicacin hardware y software usando reconocido.
comunicacin USB HID, se puede usar cable USB
serial, el software debe poder leer entradas 4 digitales y
2 salidas analgicas independientemente y mostrar en Gracias a los controladores de Microsoft no se
una interfaz grfica realizada en Visual C#, tambin necesitaron Drivers para la conexin siempre y
poder leer el estado lgico de datos enviado desde la cuando se use Win 7, Win Xp. Si se desea
interfaz asa el micro controlador que sern trabajar en Win 8 tocara recurrir a un driver
visualizados en leds, todo esto ser implementado en la
genrico que se llama Win USB para poder
prctica.
usar en este sistema.
ABSTRACT: The idea of the laboratory is a
prototype of communication hardware and software El PIC que se esta implementando permite
using USB HID communication you can use serial USB hacer interfaz USB ya sea HID o CDC, la CDC
cable , software must be able to read digital and mas o menos es comunicacin por clase
independent analog inputs and display a graphical dispositivo que nos permite generar un COM,
interface made in Visual C #, also can read the logic
state of data sent from the interface grabbing the micro
por lo comn cada COM dependiendo a donde
controller will be displayed on LEDs, all this will be se conecte varia.
implemented in practice.
Con esta aplicacin se har el control de varios
Introduccin leds conectados al PIC por el puerto asignado
mediante el software creado en nuestro
Para conectar un micro controlador con un sistema, se ver reflejado tambin en la
computador necesitamos necesitamos una interfaz grfica el comportamiento de entradas
comunicacin USB HID o CDC , la HID es un digitales q se generan desde el hardware.
dispositivo de interfaz humana que significa
por ejemplo conectar un ratn (Mouse) un Palabras clave: PIC, anlogas, digital, USB
teclado y joysticks, que no necesita HID, Microcontroladores, Comunicaciones
controladores, eso quiere decir que el PID y Asincrnicas.
VID debe estar correctamente enlazado o
ligados para realizar una conexin de cualquier

1
Marco terico de entrada a la computadora y simplificar el
proceso de instalar esos dispositivos. Antes de
Comunicacin USB HID HID, los dispositivos normalmente se
HID (por sus siglas en ingls Human Interface ajustaban a muy estrictos protocolos para el
Device), o dispositivo de interfaz humana, ratn, teclados y joysticks. Cualquier
hace referencia a un tipo de interfaces de innovacin en el hardware requera
usuario para computadores que interactan sobrecargar el uso de datos en un protocolo
directamente, tomando entradas proveniente de existente o la creacin de un nuevo driver y la
humanos, y pueden entregar una salida a los evangelizacin de un nuevo protocolo para los
humanos. El trmino HID comnmente se desarrolladores de aplicaciones. En contraste
refiere a la especificacin USB-HID. ste fue con todos los dispositivos HID, entregan
acuado por Mike Van Flandern de Microsoft paquetes autodescriptivos que pueden contener
cuando propuso al comit USB, crear un grupo una infinidad variada de tipos de datos y
de trabajo para la clase Human Input Device. formatos. Un solo driver HID en la
El nombre del grupo de trabajo se cambi a la computadora analiza sintcticamente los datos
clase Human Interface Device sugerido por y permite una asociacin dinmica de datos de
Tom Schmidt de DEC, ya que la norma entrada y salida (I/O) con la funcionalidad de
propuesta soportaba la comunicacin la aplicacin. ste tiene habilitado la
bidireccional. innovacin rpida y proliferacin de nuevos
dispositivos de interfaz humana.
La comunicacin por el puerto USB a dejado
de ser un mito para los electrnicos desde ya Los objetivos principales y subyacentes de la
hace unos aos, sin embargo aun pocos definicin de clase HID son:1
aprovechan esta manera de comunicar los
proyectos y prototipos que se llevan a cabo Ser lo ms compacto posible para
para trabajos escolares, pasatiempo o para ahorrar espacio de datos del
trabajos de tesis y residencia profesional, pues dispositivo.
bien, ahora empieza la lectura de unos pasos Permitir la aplicacin de software para
para abrir los conocimientos y romper dichas omitir informacin desconocida.
barreras que, aunque este ejemplo es muy Ser extensible y robusto.
bsico da a entender el funcionamiento de Que soporte la anidacin y las
escritura de datos, para lo cual se usara un PIC colecciones.
18F2550 programado con PROTON y Visual Ser autodescriptivo para permitir
BASIC como software de diseo, la finalidad aplicaciones de software genricas
de este proyecto es encender cuatro LEDs
conectados al puerto B del PIC, el Historia
funcionamiento se detallara a continuacin y
tambin puede obtenerse del rea de descargas. El estndar del HID fue desarrollado por una
comisin de trabajo con representantes de
Objetivos varias empresas.2 El concepto de un
autodescribible protocolo libre fue inicialmente
Las principales motivaciones para HID eran concebido por Mike Van Flandern y Manolito
las de permitir innovaciones en los dispositivos Adan cuando se encontraban trabajando en el

2
proyecto llamado Raptor en Microsoft e conectar un teclado o ratn PS/2 con el
independientemente por Steve McGowan computador encendido no siempre funcionarn
mientras trabajaba en el protocolo de un hasta el reinicio posterior. Adems, PS/2 no
dispositivo para Access Bus en Forte. Despus soporta el protocolo HID.
de comparar notas en la conferencia de
Consumer Game Developer, Steve y Mike
aceptaron colaborar en un nuevo estndar para Tipos de conexin USB
el emergente Universal Serial Bus (USB). Hoy en da es muy difcil encontrar una
computadora personal que cuente con puerto
Dispositivos HID de comunicacin tipo serial (RS232) o
paralelo (LPT), por lo tanto hay que actualizar
HID comunes: los medios de comunicacin y en vista que
todas las computadoras cuentan con puertos
Teclado. USB 2.0, se hace una introduccin a la
Ratn, trackball, touchpad, pointing comunicacin USB, teniendo como
stick. conocimientos previos programacin de
Tableta grfica. Microcontroladores PIC, hay tres maneras
Joystick. posibles de lograr dicho objetivo, las cuales
son USB-CDC, esta comunicacin es la ms
HID menos comunes: sencilla pues emula un puerto serial virtual el
cual se concreta en el uso de un driver el
cual debe ser instalado cuando se desea
Dispositivos simuladores de la
realizar la comunicacin, es la ms lenta de las
conduccin y dispositivos para
tres maneras, el modo BULK es la manera ms
simulacin de vuelo, tales como
veloz de realizar la comunicacin de datos
palancas e mando, volantes y pedales.
masivos, el cual tambin usa un controlador
Power Glove de Nintendo.
que se instala en la computadora y finalmente
Plataforma de baile. la comunicacin en la cual se basa el presente
Wiimote. manual, la comunicacin USB-HID, este tipo
de interfaz inicia su comunicacin de manera
La mayora de los sistemas operativos automtica, este protocolo lo realizan las
reconocen dispositivos estndares USB HID, memorias USB, los ratones y los teclados,
como lo son los teclados y los ratones, sin entre otros que se instalan sin necesidad de
necesidad de un controlador especial. Cuando driver especifico.
se conectan, generalmente se despliega un
mensaje en la pantalla diciendo que un WinUSB (Winusb.sys)
dispositivo HID-compliant ha sido
reconocido. En esta seccin se describe el controlador
genrico WinUSB (Winusb.sys) y su
En comparacin, este mensaje usualmente no componente de modo de usuario (Winusb.dll)
aparece para los dispositivos que son proporcionado por Microsoft para todos los
conectados a conectores de 6 pines PS/2 lo dispositivos USB.
cuales preceden al USB. El conector PS/2 no En versiones de Windows anteriores a
soporta plug-and-play, lo que significa que Windows XP con Service Pack 2 (SP2), se

3
requiere que todos los controladores de
dispositivos USB para funcionar en modo Se espera del host que sea una entidad ms
kernel. Si ha creado un dispositivo USB para compleja que el dispositivo. El host necesita
que el sistema operativo no tiene un obtener el descriptor HID del dispositivo y lo
controlador de clase nativa, haba que escribir analiza antes de que se puede entablar la
un controlador de dispositivo de modo kernel comunicacin con el dispositivo. Analizar el
para su dispositivo. descriptor HID puede ser complicado. Se sabe
que algunos sistemas operativos tenan shipped
Componentes del protocolo HID bugs en los controladores de los dispositivos
para analizar los descriptores HID, aos antes
En el protocolo HID existe 2 entidades: el host de que los drivers del dispositivo fueran
y el dispositivo. El dispositivo es la entidad originalmente lanzados al pblico. Sin
que directamente interacta con el humano, embargo, esta complejidad es la razn del
como lo hace un teclado o un ratn. El host se porqu fue posible la innovacin rpida con
comunica con el dispositivo y recibe datos de dispositivos HID.
entrada del dispositivo en las acciones
ejecutadas por el humano. Los datos de salida Sin embargo, el beneficio es que esta mnima
van del host al dispositivo y luego al humano. funcionalidad es an posible en los hosts que
El ejemplo ms comn de un host es un no soportan HID. Los nicos dispositivos
computador, pero algunos celulares y PDA soportados en modo arranque son:
tambin pueden ser hosts.
Teclado: solo el ncleo de 104 teclas es
El protocolo HID realiza la implementacin de soportado. Cualquier funcionalidad
los dispositivos de manera sencilla. Los avanzada no est disponible. Por
dispositivos definen sus paquetes de datos y ejemplo, un teclado en particular US
luego presentan un descriptor HID al host. El con teclas QWERTY funcionarn, pero
descriptor HID es codificado como un grupo las teclas calculadora y apagar no.
de bytes que describen los paquetes de datos Ratn: solo los eje-X y eje-Y, la rueda,
del dispositivo. Esto incluye: cuantos paquetes y los primeros 3 botones estn
soporta el dispositivo, el tamao de los disponibles. Cualquier caracterstica
paquetes, y el propsito de cada byte y bit en el adicional en el ratn no funcionar.
paquete. Por ejemplo, un teclado con un botn
que ejecuta el programa de calculadora puede Un uso comn del modo arranque est durante
decirle al host que el estado de presionar/soltar las primeras secuencias cuando el computador
ese botn, es almacenado en el 2 bit del 6 arranca. Configurando directamente la BIOS
byte en el paquete de datos nmero 4 (nota: de la computadora es a menudo hecha usando
estas localizaciones solo son ilustrativas y son modo de arranque. El trmino HID
especficas de cada dispositivo). El dispositivo comnmente se refiere a la especificacin
normalmente almacena el descriptor HID en la USB-HID. ste fue acuado por Mike Van
ROM y no se necesita intrnsecamente analizar Flandern de Microsoft cuando propuso al
sintcticamente el descriptor HID. Algunos comit USB, crear un grupo de trabajo para la
hardware de ratones y teclados en el mercado clase Human Input Device. El nombre del
de hoy, son implementados usando solo una grupo de trabajo se cambi a la clase Human
CPU de 8 bits. Interface Device sugerido por Tom Schmidt de

4
DEC, ya que la norma propuesta soportaba la
comunicacin bidireccional.

ESQUEMA EN PROTEUS,
INTERFAZ EN VISUAL Y
MATERIALES USADOS

Elementos Implementados
Para lograr el objetivo se necesitan, como
componentes mnimos:
Figura 1: Tarjeta USB HID
PIC 18F4550
Puerto USB 2.0
Se necesita tener instalado de igual manera el
Resistencias (una de 10 k, dos de software Visual Basic y Proteus ISIS para
470 y seis de 220 ) lograr previamente la simulacin necesaria,
6 LED (Dos rojo, verde, amarillo y dos cabe mencionar que primero se debe de
azul) instalar el plugin de Proteus para poder simular
Diodo 1N4004 el puerto USB, este proceso se detallar en las
Dipswitch de 4 pines siguientes pginas del manual.
Potencimetros (Dos de 100k )
Condensador 104 Simulaciones en Proteus
Pulsador
JAC DC Antes de empezar a simular el circuito hay que
abrir el puerto USB virtual de ISI, para ello
Luego de hacer el cdigo se realiza en se va a inicio, todos los programas y busque la
esquema para poder crear el producto final que carpeta de instalacin de Proteus, se busca el
ser en este caso la tarjeta donde se puerto virtual y se ejecuta.
implementa la comunicacin USB HID usando
el PIC 18f4550. Una vez realizado este procedimiento se
siguen los pasos que pide el instalador y se
empieza a disear el circuito correspondiente.

5
embebidos, aqu se refleja con elementos
fsicos la funcionalidad de esta comunicacin
donde se us un microcontrolador que se
ocupa enviar salidas digitales y analgicas,
dicho trabajo es y reflejarlo mediante leds y asi
mismo comunicndose con una interfaz donde
veremos entradas digitales generadas por la
tarjeta USB HID.
Desde la misma interfaz tenemos salidas
Figura: Esquema en proteus. digitales que apreciaremos su funcin en leds
situados en la tarjeta HID.
Se le carga el archivo .HEX generado y se
simula, se escuchara como si se conecta una
memoria USB de manera fsica y se abrir la
interfaz de USB virtual, ahora si se empieza la
simulacin. La interfaz indica con USB
DESCONECTADO.

Interfaz en Visual

La interfaz grfica creada en Visual C# se


comunica con el PIC mediante USB mandando
datos generados en ella que son recibidos y
visualizados casi en tiempo real.

Figura 3: Interfaz grafica

Conclusin
En este trabajo se realiz para implementar la
comunicacin USB HID mediante sistemas

You might also like