Upload
redusers
View
322
Download
34
Embed Size (px)
DESCRIPTION
En esta obra continuamos con los proyectos con microcontroladores que comenzamos en el libro anterior. En esta oportunidad, comenzaremos con la construcción de una placa experimental PIC18 y aprenderemos a utilizar los periféricos internos del PIC.
Citation preview
Nuestro sitio reúne a la mayor comunidad de tecnología en América Latina. Aquí podrá comunicarse con lectores, editores y
autores, y acceder a noticias, foros y blogs constantemente actualizados. Además, podrá descargar material adicional de los
libros y capítulos gratuitos, o conocer nuestras otras publicaciones y acceder a comprarlas desde cualquier parte del mundo.
Si desea más información sobre el libro: Servicio de atención al lector [email protected]
Microcontrollers projectsIn this book, we will continue the study of microcontrolllers that we started in Microcontrollers. This time, we are going to build a PIC18 experimental board, we will learn about PIC internal peripherics, and apply wireless conectivity in several projects.
APLICACIoNes CoN mICroCoNTroLAdores PIC18
dIsPLAys LCd ALfANumérICos y gráfICos
móduLos rAbbIT, ZIgbee y bLueTooTh
CoNTroL remoTo Por INfrArrojo y Por rAdIofreCueNCIA
C o l e C C i ó n U s e r s e l e C t r ó n i C a
AprendA A desArrollAr sus propiAs AplicAciones
proyectos conMicrocontroladores
proy
ecto
s co
n Mi
croc
ontr
olad
ores
proyectos con Microcontroladores
adeMás
electrónica prácticaAprenda a analizar, simular y construir circuitos
Microcontroladoresfuncionamiento, programación y aplicaciones prácticas
networking con Microcontroladoresdescubra cómo acceder remotamente a sus equipos
adeMás
sobre la colección: electrónica■ Aprendizaje guiado mediante explicaciones claras y concisas ■ proyectos prácticos basados en necesidades reales■ consejos de los profesionales ■ infografías y procedimientos paso a paso ■ producciones fotográficas profesionales
N I V E L D E U S U A R I O
intermedioBásiCo avanzado experto
en esta obra continuamos con los proyectos con microcontroladores que comenzamos a desarrollar en el libro anterior. en esta oportunidad, iniciaremos la construcción de una placa experimental pic18, utilizaremos los periféricos internos del pic y estudiaremos las posibilidades de conectividad inalámbrica.
dentro del libro encontrará■ Placa experimental para PIC18Lf4620 ■ Consideraciones de armado ■ Periféricos externos ■ Contador y PWm ■ Conversores
analógico-digitales ■ Tecnologías de displays LCd ■ Proyecto de alarma térmica ■ Conectividad no inalámbrica e inalámbrica
■ docklight ■ usb ■ módulos prearmados ■ Zigbee y 802.15.4 ■ Conexión con la PC y configuración
¡CoNTIeNe ejemPLos PráCTICosPArA PoNer mANos A LA obrA!
6
PREL IMINARES
Contenido del libro
Prólogo al contenido 003
El libro de un vistazo 004
Introducción 010
CAPÍTULO 1ARMADO DE UNA PLACA EXPERIMENTAL 011
Placa experimental para PIC18LF4620 012
• Esquemático 012
• Consideraciones de armado 014
• PASO A PASO /1
Consideraciones de armado 015
Conexión al PIC de periféricos externos 018
• Pulsadores 019
• Relay 019
• Display de 7 segmentos 020
• Puertos I/O 021
Infografía 1: Periféricos
en microcontroladores 025
Práctica PWM 027
• Ejercicio 028
• Código 029
• Medición del ancho de pulso 032
Conversores Analógico-Digitales 033
• Resolución de los conversores A/D 033
• Conversor Digital-Analógico 034
• Conversor Estático o Flash 037
• Conversor de Rampa Simple
o Dinámico 038
• Conversor de Doble Rampa 039
• Conversor por
aproximaciones sucesivas (SAR) 040
• Conversor comercial ADC0808 042
Multiple choice 044
CAPÍTULO 2PERIFÉRICOS PIC 045
Periféricos PIC 046
Periféricos PIC 046
Periféricos del PIC18LF4620 046
• Los timers 047
• El timer 0 047
• Timers 1 y 3 047
• Timer 2 048
• El conversor analógico/digital 049
• Placas entrenadoras 051
Manejo del display LCD inteligente 052
• Comandos del LCD 053
• Caracteres del LCD 054
• Conexión del LCD en 8 bits 055
• Conexión del LCD en 4 bits 057
• Librería LCD del MPLAB C18 059
• Funciones de la librería xlcd 059
• Agregar la librería xlcd
a nuestro proyecto 060
• Modificar la librería del LCD 061
Proyecto de alarma térmica 062
• Sensor de temperatura 062
Preliminares.qxp 11/10/2011 16:33 PÆgina 6
Conten ido de l l ib ro
• Esquemático 062
• Diagrama de flujo 066
• Configuraciones del PIC 066
• Configuración del LCD 068
• Alarma térmica em MPLAB C18 068
Multiple choice 074
CAPÍTULO 3CONECTIVIDAD NO INALÁMBRICA 075
Sistemas embebidos 076
Protocolos de conectividad 076
• Comunicación serie asíncrona y RS-232 076
• La comunicación 078
• Puerto serie 079
• El estándar RS-232 079
• Uso de la UART del PIC18F4620 080
• Interfaz RS-232 082
Docklight 083
• Cómo utilizar Docklight 084
Universal Serial BUS 088
• USB fácil: FT2232D chip 089
• Drivers 089
• Modo FT245BM 091
• Modo FT232BM 091
• Serial Peripheral Interface 092
• El bus SPI 093
• La comunicación SPI 094
• Modos SPI 094
• Tipos de periféricos 096
• Conexión de una memoria SPI 098
Bus de comunicación I2C 101
• Protocolo de comunicación 102
• Condiciones de START y STOP 102
• Transferencia de datos 102
• Comparación entre I2C y SPI 104
• Dispositivos I2C 104
• Uso de I2C en el PIC18F4620 104
• Conexión y manejo
de un periférico I2C 105
Multiple choice 106
CAPÍTULO 4CONECTIVIDAD INALÁMBRICA 107
Conectividad inalámbrica 108
• Opciones de comunicación con la PC 108
• Tecnología Bluetooth 109
Módulos prearmados (Kcwirefree) 110
¿Por qué tantas opciones? 112
• Tecnología Wi-Fi 113
• Bluetooth 113
• ZigBee y 802.15.4 113
ZigBee y 802.15.4 115
• ZigBee 117
• ZigBee en concreto 119
Módulos prearmados (XBee y XBee ZB) 120
• XBee 802.15.4 120
• Conexión punto a punto 121
• Punto a multipunto con coordinador 121
• Módulos XBee ZB 122
• Comunicación a un sitio central 124
• Conectarse con los módulos XBee 124
• Conexión con la PC y configuración 124
Red de sensores ZigBee 129
• El coordinador 129
7
Preliminares.qxp 11/10/2011 16:33 PÆgina 7
PREL IMINARES
• Los routers 130
• Los end-devices 130
• Lectura de los reportes 130
Control por RF 131
• El transmisor 132
• El receptor 132
Control por infrarrojos 134
• Estándar RECS80 135
• Estándar RC5 135
• El receptor 136
Multiple choice 138
CAPÍTULO 5MÓDULOS RABBITY DISPLAYS LCD GRÁFICOS 139
Historias de microprocesadores 140
• De 8080 a Rabbit 5000 140
• Del 6800 al HCS08 140
• MSP430 y AVR 142
• Microchip PIC 142
Módulos Rabbit 142
• La arquitectura 143
• El micro por dentro 144
• Puertos de entrada/salida 144
• Manejo de memoria 145
• Periféricos 145
Dynamic C 147
• Características 148
• Variables protegidas 148
• Variables compartidas 148
• Utilidad de configuración de I/O 149
• Rabbit BIOS 149
• Bibliotecas de funciones 150
• Puertos de I/O 150
• Grabar datos en flash 151
• Librería RS-232 151
• El GPS 152
• La librería PWM 152
• Reloj de tiempo real 152
• Detectores de cuadratura 153
• Displays con pantalla sensible 153
• Codificador en cuadratura 154
Mundo Rabbit 154
• Módulos de 5 Volts 155
• Módulos de 3,3 Volts 156
• Minicores (3,3 V) 157
Displays gráficos LCD 157
• El display 157
• Control de contraste 158
• Control del display 160
• Algoritmos 161
• PLOT, encendiendo píxeles 164
• Cómo dibujar gráficos y funciones 164
• Dibujo de funciones 165
Cómo dibujar letras 165
• Dibujar caracteres 166
• Dibujar gráficos y textos paso a paso 166
PASO A PASO /1 Cómo dibujar
gráficos y textos 168
Multiple choice 174
SERVICIOSAL LECTOR 175
Índice temático 176
Programas relacionados 179
Catálogo 181
8
Preliminares.qxp 11/10/2011 16:33 PÆgina 8
Veremos las diferentes opcionesdisponibles para conectar un sistemaembebido a nuestra computadora.
Capítulo 3
CCoonneeccttiivviiddaadd
nnoo iinnaalláámmbbrriiccaa
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 75
3.Conect iv idad no ina lámbr ica
Sistemas embebidos
Un sistema embebido es un dispositivo controladopor un procesador, dedicado a realizar una única ta-rea o una serie de ellas. Un módem, por ejemplo, esun sistema embebido que maneja tareas de comuni-cación a través de la línea telefónica. Algunos siste-mas embebidos son únicos en su tipo o se constru-yen para proyectos específicos.
Los microcontroladores se encuentran presentesen numerosos sistemas embebidos. Para realizarsus funciones, necesitan el apoyo de otros disposi-tivos digitales, como puede ser una computadorapersonal, una memoria o un display LCD, por nom-brar sólo algunos. Con este objetivo, precisa co-municarse con ellos, es decir, transmitir y recibir in-formación relevante al desempeño de las tareaspara las cuales fue diseñado. Debido a esta nece-sidad de comunicación, se desarrollaron diversosprotocolos, y en esta clase veremos, específica-mente, los de conectividad no inalámbrica.
Protocolos ddee ccoonneeccttiivviiddaadd
SPI, microwire, I2C y SMBus son protocolos de in-terconexión utilizados en comunicaciones de micro-controladores con periféricos, memorias EEPROM,displays LCD u otro tipo de circuitos integradosque requieran una intercomunicación digital. Estas in-terfaces tienen un formato de transmisión serie y seencuentran, principalmente, en sistemas embebidos.
La computadora personal o PC, omnipresente ennuestra vida, es actualmente la herramienta tecno-lógica más popular junto con el teléfono móvil.Nos permite realizar todo tipo de tareas y nosofrece una capacidad de procesamiento de datoscada vez más poderosa. Además, el avance de In-ternet la ha transformado en un puente de cone-xión con el mundo. Por todo esto, sería deseablepoder establecer una comunicación entre un dis-positivo periférico (diseñado por nosotros) y la PC.La Tabla 1 muestra algunas de las opciones dis-ponibles al respecto. Además de las mencionadas,existen otras interfaces populares. El protocoloMIDI, por ejemplo, se emplea en la conexión deinstrumentos musicales electrónicos con la PC.
COMUNICACIÓN SERIEASÍNCRONA Y RS-232Analizaremos la comunicación serie asíncrona, suaplicación en la conectividad de un sistema embe-bido con una PC y el estándar RS-232. Este tipo decomunicación define una manera de transmitir lainformación de a un bit por vez, en un formato de-terminado, a una velocidad acordada de antemanopor las partes. En general, existen muchos protoco-los de comunicación serie que, además, son asín-cronos (Figura 1). En particular, aquí estudiaremos
76
Conectar un dispositivo a la PC nos permite aprovechar todas lasventajas que ésta ofrece
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 76
77
Protoco los de conect iv idad
FIGURA 1. La conectividad USB nos abre
un nuevo mundo de posibilidades y nos
permite ampliar las características y
funciones de nuestros periféricos.
RS-232 Serie asíncrono 2 15 m 19200 a 15 m Módem, mouse
instrumentación
RS-485 Serie 32 1200 m a 10 M a 12 m Adquisición de datos
asíncrono 100 Kbps y sistemas de control
(half-duplex)
USB Serie asíncrono 127 5 m 1,5 M; 12 M; 480 Mouse, teclado, memoria,
M; 4,8 G (USB 3.0) audio, impresora, periférico
personalizado
Ethernet Serie 100 m par 10/100/1000 M Comunicaciones de
trenzado redes en general
Puerto Paralelo 2 3-9 m 8 M Impresora, escáner
paralelo
IEEE- Serie 64 90 m 3,2 G Video, audio, dispositivos
1394 de almacenamiento
(Firewire)
IEEE-488 Paralelo 15 18 m 8 M Instrumentación
(GPIB)
INTERFAZ FORMATONÚMEROMÁXIMO DEDISPOSITIVOS
DISTANCIAMÁXIMA
VELOCIDADMÁXIMA(BITS/SEGUNDO)
USO TÍPICO
TABLA 1. Existen múltiples opciones de conectividad no inalámbrica con la PC;
en la tabla se presentan las más importantes.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 77
78
3.Conect iv idad no ina lámbr ica
FIGURA 2. La transmisión
serie asíncrona del carácter
‘a’ y su recepción.
lo relacionado con la comunicación elemental so-bre la base de un puerto serie en una PC y unaUART (Universal Asynchronous Receiver/Transmitter)en un microcontrolador.
LA COMUNICACIÓNEl concepto de comunicación es muy amplio; sinembargo, en este caso nos referiremos a la acción deconectar dos dispositivos electrónicos por un mediofísico. En este sentido, la comunicación es bidirec-cional y, vista desde el microcontrolador, se realizade la siguiente manera:
• En ausencia de información, la señal se mantie-ne en el estado lógico alto.• Un carácter de información se inicia con un bit destart, cuya misión es indicar al receptor que la infor-mación sigue a continuación.• El dato de información se envía con el bit menossignificativo primero, y puede contener desde 5hasta 8 bits. En algunos casos, se manda un novenobit para aplicaciones particulares.
• De manera opcional, pero acordado de antemano,se envía un bit de paridad. Éste se calcula empare-jando la cantidad de unos en el carácter, para quesea par o impar.• El carácter se termina con 1 o 2 bits de stop,cuya finalidad es volver la línea de transmisión alestado de reposo durante un tiempo suficientecomo para que el receptor pueda identificar el pró-ximo bit de start. La Figura 2 muestra el envíodel carácter ‘a’ (0x61) en 8 bits.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 78
79
Protoco los de conect iv idad
Es importante aclarar que asíncrono significa queno utiliza una señal de reloj para la transmisión y re-cepción de datos. Los relojes internos de transmi-sor y receptor deben estar lo suficientemente pró-ximos y mantener una estabilidad tal, que permita lacomunicación de un carácter. Por lo general, el re-ceptor sincroniza su reloj con el flanco descendentedel bit de start y observa los datos en el centro decada bit de información.
PUERTO SERIEEl puerto serie es la interfaz en una computadora uotro dispositivo que transmite datos de a un bit porvez. En el uso convencional, el término puerto serie se refiere a aquél que utiliza este protocoloasíncrono que acabamos de ver. Es bidireccional,
ya que puede enviar y recibir información. En mu-chas ocasiones, podemos pensar que transmitir unbit a la vez es ineficiente para las comunicacionesactuales; sin embargo, este sistema tiene sus venta-jas, como la posibilidad de utilizar cables de bajocosto y conectores pequeños (Figura 3). En unaPC, las aplicaciones de software acceden al puertoserie mediante el llamado COM port.
EL ESTÁNDAR RS-232El estándar V.24 de la ITU-T (International Telecom-munications Union, Telecommunications Standardi-zation Sector) define 25 líneas de conexión entre unDTE (Data Terminal Equipment, una computadora) yun DCE (Data Communications Equipment, un mó-dem o periférico).
FIGURA 3. La mayoría de las nuevas PCs no poseen puerto serie en su hardware. Sin embargo, es
posible agregarlo mediante un convertidor de USB a serie.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 79
80
3.Conect iv idad no ina lámbr ica
El estándar RS-232 de la EIA/TIA (Electronics/Tele-communications Industries Association) determina losniveles de tensión para realizar la comunicación (Figura 4). Existen variantes que fijan el nivel máxi-mo, pero la mayoría coincide en aceptar lo siguiente:
• Un 0 lógico se representa con un nivel de tensiónmayor a 3 V.• Un 1 lógico se representa con un nivel de tensiónmenor a -3 V.
La distancia máxima es de 15 m, y la velocidad má-xima a esa distancia es de 19200 bps; velocidadesde hasta 115200 bps o más son posibles a distan-cias menores. La comunicación es por cable conven-cional, con referencia de masa (no-balanceado). Lasseñales más comunes de RS 232 pueden apreciarse
en la Tabla 2. Existe un modo de conexión muy uti-lizado, denominado de 3 cables (3-wire), que em-plea sólo TD, RD y GND.
USO DE LA UART DEL PIC18F4620Este microcontrolador posee un módulo denominadoEUSART, que es una UART con capacidad de funcio-nar, además, en modo sincrónico. El módulo se habilitamediante el bit SPEN en el registro RCSTA. La trans-
FIGURA 4. El estándar RS-232 utiliza un conector tipo DB-25 (de 25 pines) o DB-9 (de 9 pines).
El puerto serie es la interfaz en una PC u otro dispositivo quetransmite datos de a un bit por vez
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 80
81
Protoco los de conect iv idad
Cuando el USB llegó al mercado, se pronosticó la desaparición del puerto serie. Muchos sis-
temas embebidos continúan usándolo porque su implementación es más económica y la pro-
gramación, menos compleja. Además, permite el uso de cables de mayor longitud.
¿POR QUÉ UTILIZAR PUERTO SERIE?
TD (Transmit Data) 2 3 DTE�DCE Datos por transmitir
RD (Received Data) 3 2 DTE�DCE Datos recibidos
RTS (Request 4 7 DTE�DCE El terminal desea transmitir
To Send)
CTS (Clear To Send) 5 8 DTE�DCE El terminal puede transmitir
DTR (Data 20 4 DTE�DCE El terminal está operacional
Terminal Ready)
DSR (Data Set Ready) 6 6 DTE�DCE El módem está operacional
DCD (Data 8 1 DTE�DCE El módem recibe portadora
Carrier Detect) del módem remoto
RI (Ring Indicator) 22 9 DTE�DCE Se recibe un llamado por la línea telefónica
GND (Ground) 7 5 COMÚN
NOMBRE PIN (25) PIN (9) SENTIDO FUNCIÓN
TABLA 2. Algunas de las señales más comunes en una comunicación asíncrona.
misión se efectúa a través del registro TXREG, y la re-cepción, mediante el RCREG. Existen dos registros deestado, TXSTA y RCSTA, que nos permiten controlar yconocer la actividad de la UART. La velocidad y formade operación se controlan a través del registro BAUD-CON y de un Baud Rate Generator (BRG) interno.
En MPLAB C18, disponemos de una función de in-cialización y de cuatro elementales para enviar y re-cibir información por la UART:
• OpenUSART(): permite la configuración de laUART del microcontrolador, incluyendo velocidad einterrupciones. Configura un modo de trabajo sininterrupciones, en 8 bits por carácter, recepción con-tinua a FOSC / (64 * (spbrg + 1)) bps. Por ejemplo:
OpenUSART( USART_TX_INT_OFF &
USART_RX_INT_OFF &
USART_ASYNCH_MODE & USART_EIGHT_BIT &
USART_CONT_RX & USART_BRGH_LOW, spbrg );
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 81
82
3.Conect iv idad no ina lámbr ica
• WriteUSART(): escribe un byte en el buffer detransmisión de la UART.• BusyUSART(): permite conocer si la UART estátransmitiendo• DataRdyUSART: permite conocer si se ha recibi-do un carácter.• ReadUSART(): lee un byte del buffer de recep-ción de la UART.
La operatoria en transmisión es verificar si la UARTha terminado de transmitir y, luego, enviar un ca-rácter. En recepción, verificamos si hay uno dispo-nible y, a continuación, llamamos a la función quenos lo entrega.
INTERFAZ RS-232En la Figura 5 vemos el circuito esquemático de unainterfaz RS-232 genérica para nuestros proyectos. Sebasa en el MAX232, que incluye dos excitadorespara convertir las entradas de niveles TTL a RS-232y dos receptores que se encargan de transformar en-tradas RS-232 en salidas a niveles TTL (Figura 6).
FIGURA 5. El circuito esquemático
de la interfaz RS-232.
FIGURA 6. En el sitio web de Microchip,
www.microchip.com, podemos encontrar
una versión de evaluación del MPLAB C18.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 82
83
Protoco los de conect iv idad
Docklight
Docklight es un software para verificación, análi-sis y simulación de protocolos de comunicación se-rie (RS-232, RS-485 y otros).
Veamos cómo utilizar este programa permite realizarel monitoreo de la comunicación serie entre dos dispo-sitivos o simular el comportamiento de uno de ellospara verificar el comportamiento del otro. Las funcio-nes de este software son las siguientes:
FIGURA 7. Es posible insertar Docklight
entre la comunicación de dos dispositivos
serie para monitoreo. Debemos poseer dos
puertos COM en la PC.
FIGURA 8. Con Docklight podemos verificar la implementación del protocolo serie en un
dispositivo. Es posible definir una secuencia de control reconocible por el dispositivo y
analizar las respuestas que éste genera.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 83
84
3.Conect iv idad no ina lámbr ica
• Simular un protocolo serie. Docklight puedeenviar secuencias de datos definidas por el usuariosegún el protocolo utilizado; además, es capaz deactuar según las secuencias que reciba. Esto haceposible simular el comportamiento de un dispositivoserie, algo particularmente útil para generar condi-ciones de verificación que son difíciles de reproducircon el dispositivo original.• Registrar datos de RS-232. Cualquier comuni-cación serie puede ser registrada utilizando dos for-matos de archivos diferentes. Es posible empleartexto normal para registrar una gran cantidad dedatos rápidamente, o utilizar un formato HTML contexto que permita distinguir fácilmente entre losdatos entrantes y salientes.• Detectar secuencias de datos específicas. Enmuchos casos, necesitamos verificar la ocurrencia deuna secuencia específica dentro de la informaciónen RS-232 que indica una condición de error.Docklight maneja una lista de estas secuencias, y escapaz de realizar acciones definidas por el usuarioen caso de detectarlas.• Responder a datos entrantes. Docklight da laposibilidad de especificar respuestas definidas por elusuario a diferentes secuencias recibidas. De esta
Las celdas de unamemoria PROM se
construyen alrededorde fusibles, diodos y
transistores
Docklight es un software de verificación, análisis y simulaciónde protocolos de comunicación serie
manera, es posible construir un simulador básicopara nuestro dispositivo serie, y rastrear erroresenviando un comando de diagnóstico luego de reci-bir un mensaje de error.
CÓMO UTILIZAR DOCKLIGHTEste programa puede obtenerse desde su página weboficial: www.docklight.de. En el Paso a paso 1veremos la manera de configurar Docklight paraenviar y reconocer secuencias, y operar manual-mente. Esta última requiere de la activación del teclado, ya que el programa se orienta al envío desecuencias mediante un clic. Realizaremos una comunicación con un módulo XBee a través de unpuerto serie virtual vía USB con un chip FTDI.
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 84
85
PASO A PASO /1 Ut i l i zar Dock l ight
PASO A PASO /1Utilizar Docklight
Al correr el programa por primera vez, aparece una ventana de registro. Como va a usarlo
en modo evaluación, no debe registrarse.
1
A continuación, se abre una ventana para elegir un proyecto. La versión de evaluación
no permite guardar el trabajo, así que empezará con un proyecto nuevo. Lo primero
que hará es configurar el puerto serie que va a usar. En este caso, se conectará a
115200 bps en el COM4. En el menú Tools seleccione Project Settings y,
en la solapa Communications, configure Port y Speed.
2
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 85
86
3.Conect iv idad no ina lámbr ica
PASO A PASO /1 (cont.)
Para enviar caracteres manualmente, debe abrir el puerto y habilitar la operación
de teclado. Con este fin, haga clic sobre el icono de reproducción y, luego, en el
del teclado. Ingrese un texto, y vea que el programa muestra la fecha, la hora y el
sentido de la comunicación.
3
Puede definir una secuencia para enviar haciendo doble clic en la sección Send
sequences. Ingrese los datos correspondientes y, si requiere caracteres de
control (como Enter), puede pedir ayuda. Mande la secuencia haciendo clic
sobre la flecha que está a la izquierda.
4
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 86
87
PASO A PASO /1 Ut i l i zar Dock l ight
PASO A PASO /1 (cont.)
Puede definir una secuencia para recibir haciendo doble clic en la sección
Receive sequences, para lo cual tiene que ingresar los datos
correspondientes. Puede relacionarla con una respuesta por enviar o un
comentario que se verá en pantalla junto a la información de fecha y hora.
5
Configure enviar ATD1 cuando la respuesta es 0<CR>. En la imagen se ve que el
sistema funciona por sí solo ante un primer envío, que origina la primera respuesta
e indica la recepción de la secuencia mediante el comentario introducido en el
paso anterior: el texto “recibí un 0”.
6
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 87
88
3.Conect iv idad no ina lámbr ica
Universal SSeerriiaall BBUUSS
El puerto USB (Universal Serial BUS) es una interfazde relativa complejidad. Una transferencia USB im-plica una comunicación serial, bidireccional y de ín-dole “diferencial” sobre un cable compuesto porcuatro conductores: GND (común), VCC (alimenta-ción) y un par diferencial balanceado para transpor-te de datos (Figura 9). Existen cuatro tipos de trans-ferencias definidas para una comunicación USB:
• Isocrónicas: garantizan una velocidad detransferencia determinada, pero con posibles pér-didas de datos.• Del tipo interrupción: esta opción de transfe-rencias se utiliza cuando un dispositivo requieregarantizar transferencias rápidas.• Bulk: este tipo realiza transferencias largas yesporádicas, que utilizan todo el ancho de bandaremanente disponible, pero que no precisan deuna entrega en un tiempo determinado. El USBHost le asigna la prioridad más baja a este tipo detransferencias.• De control: usada para el envío de comandoscortos o información de estado al dispositivo.
Cada vez que un dispositivo USB se conecta a unhost, se inicia un proceso de enumeración, que co-mienza mediante el envío de una señal de reset aldispositivo. Durante esta etapa, se determina la tasade transferencia del periférico USB. El USB Host leela información y le asigna una dirección única de 7 bits. Una comunicación USB está basada en el es-tablecimiento de pipes o canales lógicos de cone-xión. Se denomina endpoint al bloque de memoriade datos o registro del chip controlador sobre el cualse establece la comunicación física. Es posible traba-jar a distintas tasas de transferencia:
• Show Speed: 10 - 100 Kbps• Full Speed: 500 Kbps - 10 Mbps• High Speed (USB 2.0): 25 – 480 Mbps
Las diferentes tasas de transferencia involucran dis-tintos niveles de tensión utilizados para la comuni-cación en el par diferencial. Cada intercambio invo-lucra tres paquetes:
FIGURA 9. Vemos aquí los conectores típicos
del tipo A y B, utilizados corrientemente en
dispositivos de interfaz USB.
Cada vez que un dispositivo USB seconecta a un host, se inicia un proceso de enumeración
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 88
89
Universa l Ser ia l BUS
• Paquete tipo token: contiene la dirección del dispo-sitivo (número de endpoint) para el direccionamiento.• Paquete de datos: contiene los datos propiamen-te dichos de la transacción.• Paquete de terminación: indica el fin de la trans-acción, de modo que pueda procesarse.
USB FÁCIL: FT2232D CHIPEl núcleo del FT2232D, fabricado por FTDI, estáconformado por dos controladores que manejan elproceso de enumeración y otras comunicaciones so-bre el bus USB (Figura 10). Cada uno ofrece distin-tos modos de configuración, que implementan laoperatividad de otros dos chips de la familia: elFT232B y el FT245B:
• Una interfaz full-speed USB-UART (asíncro-na serial) a través del módulo hardwareFT232BM embebido.• Una interfaz full-speed paralela USB-FIFO através del módulo hardware FT245BM embebido.• Una interfaz serial sincrónica (USB-JTAG,USB-SPI o USB-I2C) a través del módulo hardwa-re configurable: MPSSE (Multi-Protocol SerialEngine Interface).• Una interfaz paralela compatible con unbus microcontrolador 8051 (MCU Bus HostEmulation).
• Modos bit-bang sincrónicos y asíncronos,de operación básica, donde no se necesita la cone-xión a una CPU externa. Se maneja directamenteun bus E/S de 8 bits con el fin de controlar relays,LEDs o similares.
DRIVERSEstos chips emplean drivers provistos por el fabri-cante, en dos opciones:
• Virtual COM Port driver: el dispositivo se ve comoconectado a un puerto COM (RS-232). Trabaja bajoentorno Windows, y es utilizable por cualquier aplica-ción que emplee comunicaciones con un puerto COM.• D2XX Direct Driver: para aplicaciones paralelo oen las que prevalezca la necesidad de velocidad, confunciones específicas para las aplicaciones que secomuniquen con el chip.
Algunas aplicaciones típicas son aquellas que nece-sitan manejar, a lo sumo, un puerto del tipo bulk oisocrónico para cada lado. El chip provee pines decomunicación con una memoria microwire, en lacual es posible grabar información como Vendor ID(identificador del fabricante), Product ID (identi-ficador del producto), si es un circuito que se alimenta del bus o tiene alimentación externa(self-powered), etc.
Human Interface Device es una clase de dispositivo USB especialmente diseñada para
interactuar de manera directa con personas. Esta tecnología permitió innovar en disposi-
tivos de entrada a computadoras y simplificar el procedimiento de instalación de éstos.
HID
PRO_Cap3.qxp 06/10/2011 15:31 PÆgina 89