Documentos de Académico
Documentos de Profesional
Documentos de Cultura
USB Con PIC18F4550 y LabVIEW - Rev 2012 PDF
USB Con PIC18F4550 y LabVIEW - Rev 2012 PDF
PIC18F4550 y LabVIEW
Lic. Fsica Yohan Prez-Moret
PCB por La Derecha
contacto@pcbporladerecha.com
1. Resumen
Se presenta el desarrollo, simulacin e implementacin de la comunicacin USB
con un microcontrolador PIC18F4550 y LabVIEW. El cdigo programado al microcontrolador PIC enva cclicamente la lectura de su conversor anlogo-digital (AD) y el estado del
pin RA4 a una computadora personal a travs del bus USB. El cdigo del microcontrolador
fue escrito en lenguaje C, con el compilador CCS 4.018. En LabVIEW 8.0 se gener el
driver para el dispositivo USB y se dise un instrumento virtual (VI) para atender la comunicacin. El VI se encarga de graficar la lectura AD del PIC y a peticin del usuario que
lo opera de enviarle un valor de un byte, el cual es cargado en el puerto B del PIC. Se realiza la simulacin utilizando Proteus 7.2 y el VI diseado. Por ltimo se muestra la implementacin prctica en la placa de demostracin PICDEM 2 plus, la cual fue modificada
para la funcionalidad USB.
Palabras claves: USB, microcontrolador PIC, LabVIEW, PICC, MPLAB, Instrumentacin, PICDEM.
2. Introduccin
El bus serie universal o en sus
siglas en ingls: USB, posee algunas caractersticas como son:
pus del dispositivo en s, es la de configuracin. Un dispositivo puede tener mltiples configuraciones. Por ejemplo, un
dispositivo puede tener varias exigencias
de energa segn el modo en que est:
auto-energizado o bus-energizado.
VDD
J1
GND
DD+
VCC
RV1
4
2
3
1
USBCONN
470R
1k
RA4
U1
10k
470R
2
3
4
5
6
7
14
13
33
34
35
36
37
38
39
40
18
RA0/AN0
RC0/T1OSO/T1CKI
RA1/AN1
RC1/T1OSI/CCP2/UOE
RA2/AN2/VREF-/CVREF
RC2/CCP1/P1A
RA3/AN3/VREF+
RC4/D-/VM
RA4/T0CKI/C1OUT/RCV
RC5/D+/VP
RA5/AN4/SS/LVDIN/C2OUT
RC6/TX/CK
RA6/OSC2/CLKO
RC7/RX/DT/SDO
OSC1/CLKI
RB0/AN12/INT0/FLT0/SDI/SDA
RB1/AN10/INT1/SCK/SCL
RB2/AN8/INT2/VMO
RB3/AN9/CCP2/VPO
RB4/AN11/KBI0/CSSPP
RB5/KBI1/PGM
RB6/KBI2/PGC
RB7/KBI3/PGD
VUSB
RD0/SPP0
RD1/SPP1
RD2/SPP2
RD3/SPP3
RD4/SPP4
RD5/SPP5/P1B
RD6/SPP6/P1C
RD7/SPP7/P1D
RE0/AN5/CK1SPP
RE1/AN6/CK2SPP
RE2/AN7/OESPP
RE3/MCLR/VPP
15
16
17
23
24
25
26
19
20
21
22
27
28
29
30
8
9
10
1
PIC18F4550
Fig. 2. Circuito diseado en Proteus solo para fines de simulacin USB con el PIC18F4550
Con el cdigo del microcontrolador listo y el driver en LabVIEW disponible, podemos iniciar la simulacin del
microcontrolador USB y observar cmo
este es detectado por el sistema operativo.
3.3.1. Simulacin del dispositivo con
Proteus
Al iniciar la simulacin del circuito de la Fig. 2 el sistema operativo detecta
la presencia de un dispositivo USB, iniciando el proceso de enumeracin que
bsicamente consiste en asignarle una
direccin en el bus al dispositivo. Despus de esto se abre el asistente para
Hardware nuevo encontrado, tal y como
se muestra en la Fig. 7. Con este asistente
6
se localiza el driver INF creado en LabVIEW, instalndolo desde una lista o ubicacin especfica, Fig. 8.
La ventana de cdigo
del VI desarrollado
se muestra en la Fig.
14. Se programaron
dos ciclos independientes, uno para el
envo y otro para la
recepcin de las lecturas AD del PIC. La
llegada de un dato al
puerto USB de la PC
es detectada por el
VI a travs de una
interrupcin USB.
El envo y la
recepcin se realizan
independientemente
la una de la otra, full
dplex.
4. Implementacin Prctica
Para el montaje prctico del
PIC18F4550 se adapt el PICDEM 2
Plus, incluyndole un conector Header de
4 pines en su rea de prototipo. Los pines
2 y 3 del conector Header se unieron a
travs de cables con los pines 23 y 24 del
socket de 40 pines del PICDEM, respectivamente. Los pines 23 y 24 se corresponden con las seales diferenciales D- y
D+ respectivamente. El pin 1 del conector
Header se conect al comn del PICDEM
2 plus y el pin 5 al terminal de 5 V de la
misma placa de demostracin, con el objetivo de alimentarla directamente del bus
USB.
Los resultados obtenidos con el
montaje prctico fueron los mismos que
con la simulacin en Proteus 7.2. El VI
diseado se comport de igual manera y
s se not la diferencia de velocidad entre
el montaje prctico y la simulacin, esta
ltima ms lenta que la primera. Al conectar el dispositivo USB por primera vez
a la PC Windows ya lo reconoca y pudo
cargar el driver correspondiente que previamente haba sido instalado en la fase
de simulacin con Proteus.
5. Conclusiones
Se logr realizar la simulacin y la
implementacin prctica de la comunicacin USB utilizando un microcontrolador
PIC18F4550 y un VI diseado en LabVIEW.
El desarrollo de los descriptores
USB an debe profundizarse ya que estos
constituyen una gran parte de la configuracin del dispositivo USB.
7. Referencias
1. Inc., Microchip Technology.
PIC18F2455/2550/4455/4550 Data Sheet.
s.l. : Microchip, 2004. DS39632B.
2. USB Specification, version 2.0: Chapter 9.
[Online] http://www.usb.org.
3. CCS. [Online] http://www.ccsinfo.com/.
4. [Online] http://www.labcenter.co.uk/.
5. Condit, Reston. TB054: An Introduction to
USB Descriptors with a Game Port to USB
Game Pad Translator Example. s.l. :
Microchip Technology, 2004. DS91054C.
6. Dearborn, Scott. AN971: USB PortPowered Li-Ion/Li-Polymer Battery Charging.
s.l. : Microchip Technology Inc, 2005.
7. Condit, Reston. AN258: Low Cost USB
Microcontroller Programmer. s.l. : Microchip
Technology Inc., 2003. DS00258A.
8. Rojvanit, Rawin. AN956: Migrating
Applications to USB from RS-232 UART with
Minimal Impact on PC software. s.l. :
Microchip Technology, 2004. DS00956B.
9. Microchip. [Online]
http://www.microchip.com.
10
Anexos
Anexo A. Cdigo Fuente en lenguaje C del PIC18F4550 con USB
11
12
13
14
15
16
17
18