Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Articulo SCaicedo JParedes
Articulo SCaicedo JParedes
Resumen
En el presente trabajo se desarroll una herramienta que servir para capturar y analizar las tramas que se
intercambian entre dos dispositivos que se comunican usando el protocolo de comunicacin serial RS-232. La
informacin capturada se muestra en una Computadora Personal o en un Dispositivo Mvil con Sistema Operativo
Android; esto nos permitir entender e interpretar el funcionamiento del protocolo antes mencionado, adems nos
ayudar en la tarea de detectar y resolver problemas relacionados con este tipo de comunicacin.
Esta herramienta tiene la capacidad de detectar los parmetros de configuracin de la comunicacin RS-232
que analizaremos para posteriormente auto configurarse a ellos y as recolectar las tramas de forma correcta.
Para esto se desarroll un Sistema Embebido basado en el Microprocesador NIOS II el cual fue implementado
en la tarjeta de desarrollo y educacin DE0 nano de Terasic Inc., cuyo componte principal es la FPGA
EP4CE22F17C6N de la familia Cyclone IV E de Altera.
Palabras claves: Analizador de Protocolo, RS-232, FPGA, NIOS II.
Abstract
In this paper we were developed a tool that will be used to collect and analyze the frames that are being
exchanged between two devices that communicate using the RS-232 serial communication protocol. The
information collected is displayed in a Personal Computer or a Mobile Device with Android OS; this will allow us
understand and interpret the operation of the RS-232 protocol, also help us in the task of detecting and solving
problems related to this type of communication.
This tool has the ability to detect the parameters of configuration of the RS-232 communication that we want to
analyse, auto configured with this parameters to collect the frames correctly.
Then, we developed an embedded system based on NIOS II Processor; this was implemented in the Board of
development and education DE0 nano of Terasic Inc, whose main component is the FPGA EP4CE22F17C6N of the
family Cyclone IV E of Altera.
Keywords: Protocol Analyzer, RS-232, FPGA, NIOS II.
1. Introduccin
Desde la antigedad los hombres han tenido la necesidad
de interactuar e intercambiar informacin entre s, a este
proceso se le llama comunicacin en la cual es muy
necesaria la correcta interpretacin de la informacin por
parte del receptor del mensaje emitido.
Con la aparicin de los dispositivos electrnicos surgi
tambin la necesidad de comunicarse entre ellos, para esto
los expertos desarrollaron distintos mtodos de
comunicacin, entre las cuales est el protocolo RS232.
2. Objetivos
2.1 Objetivo General
4. Fundamento Terico
3. Alcance y Limitaciones
El proyecto cumple con las siguientes caractersticas:
Se realizar un analizador de protocolo RS-232 cuyos
parmetros de comunicacin sean configurables.
La configuracin de nuestro analizador puede ser
automtica como manual.
El anlisis se concentrar exclusivamente en los
pines de trasmisin y recepcin de datos y se lo
realizar a niveles TTL.
La trama RS-232 se la analizar despus de
haberla recibido completamente.
La visualizacin del estado del analizador se
mostrara en un LCD 16x2.
La visualizacin de los datos se lo podr realizar en
una computadora y en un telfono celular,
tableta o cualquier dispositivo con sistema
operativo Android.
UART
Divisor de velocidad de transmisin
clock
Seales
conectadas
al Bus
Avalon direccion
divisor
rxdata
RxD
txdata
Endofpacket
dataavailable
Registro de
Desplazamiento
control
TxD
RTS
Conector RS-232
CTS
status
IRQ
Convertidor de Voltaje
datos
Registro de
Desplazamiento
readyfordata
Endofpacket
QWERTYUIOPASDFGH
JKLZXCVBNMQWERTY
4.3 Bluetooth
DB7
Led-
Led+
DB6
DB5
DB4
DB3
DB2
DB1
EN
DB0
RS
R/W
Vcc
VEE
GND
Modulo Uart-Usb
Vcc Tx Rx Gnd
USB
Bluetooth
UART
Tx Rx Gnd
UART
Tx Rx Gnd
Vcc Tx Rx Gnd
Uart de Comunicacion
Analizador de Protocolo RS232
Uart 0
Tx Rx Gnd
Uart 1
Tx Rx Gnd
Modulo teclado
4x4
Lcd 16x2
Modulo LCD
11 bits
Modulo Bluetooth
Tx
Rx
Gnd
4.9 Java
8 bits
T T
T T
Teclado
4x4
Rx
Tx
Gnd
Dispositivo 1
Dispositivo 2
4.10 Android
Android es un sistema Operativo desarrollado por
Google basado en Linux para telfonos mviles, tabletas,
porttiles e incluso PCs. Android permite programar en Java
para el desarrollo de sus aplicaciones.
5. Diseo e Implementacin
Key 0
CYCLONE IV FPGA
Reset
JTAG
Uart
Procesador
Nios II
Instrucciones
Memoria
On-Chip
System ID
Timer
Memoria
On-Chip
Datos
BUS AVALON
Controlador
SDRAM
Modulo
Uart_0
Modulo
Uart_11
Modulo
Uart_18
Modulo
Uart_29
UART_0
UART_1
Dispositivo 1
Dispositivo 2
Controlador
LCD
Entrada
Paralela
Salida
Paralela
Uart
Comunicacion
Teclado
SDRAM
LCD
Teclado
PC o
Celular
teclado
Presiono 2
Presiono 1
Configuracin
Manual
Configuracin
Automtica
Autoconfiguracin
Configuracin
Manual
Muestra m3
Esperar datos
Esta en el rango
Baud rate
No esta en el rango
Muestra m6
No
Llego dato
Muestra m5
Si
No esta correcto
BRK=1 de
UART0 [i]
Config
No
FE=1 de
UART0 [i]
Si
No
Si
Si
No
No
Esta correcto
No
No
Enviar trama
001152007N211 via Bluetooth y UART-Usb
para mostrar configuracion a la que funciona el analizador
Si
Si
Esperando Datos
Lee UART 0
Llego dato
Si
Por mas de 10
datos ledos
No
Si
Lee UART 1
Esperando Datos
Llego dato
Si
N0
Lee UART 0
Llego dato
Si
Llego dato
Si
No
Lee UART 1
N0
INICIO
Mostrar interfaz
grafica
Comienza la
actividad
onCreate()
onStart()
Si el usuario
regresa a la
actividad
La actividad se
est ejecutando
Se mata el
proceso
Botn
conectar
Si presion
No presion
Si el usuario
regresa a la
actividad
onPause()
Si la actividad ya
no es visible
onStop()
Botn
desconectar
Si la actividad ha
terminado
Si presion
No presion
Llego dato
Si el usuario
regresa a la
actividad
Si otra
actividad se pone
en primer
plano
Si otras aplicaciones
necesitan memoria
Conectar al puerto
seleccionado de la lista
No
onRestart()
onResume()
Si
La trama
001152007N211
Si
Mostrar la
configuracin
a la que
funciona el
analizador
onDestroy()
La actividad se
cierra
No
Verificar canal
Obtener el adaptador
de Bluetooth del
dispositivo Android
Existe dispositivo
Bluetooth
Si
Esta habilitado el
Bluetooth
No
No
Solicitar la
habilitacin del
Bluetooth
Finalizar aplicacin
Si
onResume()
Buscar el dispositivo Bluetooth
de nuestro analizador de
acuerdo a su direccin MAC
Manejador de cola
No
Bsqueda exitosa
Si
Si
Trama 001152007N211
Establecer conexin
Si
Mostrar
configuracin a la
que funciona el
analizador
No
Verifica canal
Mostrar datos en la
tabla
Hilo de Conexin
No
Enviar informacin al
manejador de cola
Existe alguna
excepcin
Si
Finaliza el Hilo
6. Pruebas y Resultados
Finalmente, esta seccin muestra algunas pruebas de
funcionamiento del analizador de protocolo RS232, adems
de un anlisis de la eficiencia del mismo.
El diagrama esquemtico de todas las pruebas es el
mismo, y como podemos observar en la figura 21, lo que
cambia son los equipos que participan en la comunicacin a
analizar (dispositivo 1 y 2).
Tx
Rx
Gnd
Rx
Tx
Gnd
Dispositivo 1
Dispositivo 2
Real
ANALIZADOR DE
PROTOCOLO RS-232
7N1
Vel.
Ok
Conf.
Ok
Datos
Ok
No.
Datos
100%
100%
100%
6x20
7N2
83%
50%
83%
12x20
7E1
100%
100%
100%
12x20
7E2
100%
22%
44%
19x20
7O1
100%
0%
37%
13x20
7O2
100%
0%
0%
15x20
8N1
100%
66%
100%
11x20
8N2
100%
45%
90%
16x20
8E1
100%
100%
100%
11x20
8O1
100%
16%
100%
11x20
9N1
100%
66%
66%
7x20
9N2
100%
33%
33%
10x20
9E1
100%
66%
100%
21x20
9E2
100%
66%
66%
9x20
9O1
100%
33%
33%
17x20
Vel.
Ok
Conf.
Ok
Datos
Ok
No.
Datos
115200
100%
60%
90%
9x20
57600
100%
60%
70%
12x20
28800
100%
50%
90%
16x20
Comunicacin
Vel.
Conf.
Datos
No.
Disp1
Disp2
Ok
Ok
Ok
datos
Vel.
Real
19200
80%
30%
70%
17x20
9600
100%
30%
90%
22x20
4800
100%
60%
90%
16x20
2400
100%
60%
80%
7x20
1200
100%
60%
80%
7x20
PC
98%
43%
73%
14x20
DE0 nano
100%
68%
87%
14x20
DE2
94%
56%
68%
9x20
Bluetooth
100%
70%
100%
12x20
Configuracin
53%
Lectura de
No de
datos
datos
78%
13x20
7. Conclusiones
La tarjeta DE0 nano nos proporciona un entorno de
desarrollo flexible en hardware. Esto debido a dos razones:
en la FPGA integrada se pueden implementar sistemas
computacionales funcionales ajustados a la medida de la
aplicacin especfica que se le quiera dar, sus puertos de
expansin permiten la integracin de hardware adicional
para la complementacin de dichos sistemas.
El protocolo RS-232 aparentemente en desuso, aun es
uno de los principales mtodos de comunicacin entre
dispositivos perifricos como mdulos GPS, mdulos
Bluetooth, mdulos GSM, esto se debe a la sencillez de la
configuracin y al fcil entendimiento del mtodo usado
para la comunicacin.
Los analizadores de protocolos son herramientas tiles
para verificar si una determinada comunicacin entre dos
dispositivos se est efectuando de forma correcta y
determinar la configuracin de dicha comunicacin.
El analizador de protocolo RS-232 que se dise en el
presente trabajo es una herramienta que tiene una efectividad
del 97% para la determinacin de la velocidad de trasmisin
en una comunicacin, y del 53% en parmetros de
configuracin como tamao en bits de datos, paridad y
nmero de bits de parada.
El procesador NIOS II soporta hasta 32 fuentes de
interrupcin externa, esto limita la cantidad de mdulos que
pueden ser instanciados en el sistema y que adems
necesiten interrumpir al procesador, la mayora de los
dispositivos que poseen interfaces de entrada de datos
necesitan interrumpir al procesador; en caso de necesitar ms
de 32 fuentes de interrupcin, el diseo debera cambiar a
8. Referencias
[1]. Ronald Mijail Dueas, El estndar RS-232.
http://interface-serial-rs232.blogspot.com/
Fecha de consulta: Septiembre 2013
[2]. Altera, NIOS UART Data Sheet.
http://studies.ac.upc.edu/EPSC/SED/Practica
s/ds_nios_uart.pdf
Fecha de consulta: Septiembre 2013.
[3]. HC Serial Bluetooth Products,User Instructional Manual
http://www.exptech.de/service/datasheet/HC-SerialBluetooth-Products.pdft71.pdf
Fecha de consulta: Enero 2014.
[4]. Ideas y Tecnologas, Pgina HTML.
http://ideastechnology.com/
Fecha de consulta: Enero 2014.
[5]. Altera, DE0 nano User Manual.
http://www.terasic.com.tw/cgibin/page/archive_download.pl?Language=En
glish&No=593&FID=75023fa36c9bf8639384f
942e65a46f3
Fecha de consulta: Septiembre 2013.