IMPLEMENTACIOtJ DE
U.
PLATA.FCRMA
I
Fromewotk
'~DD
e
I "'"
1""'1,..,-,
I
1 ....
Connec1ionManager
I~
I
A¡>pac(J/jon
ssage
~
e
SP
~utton
I
B~
ElWI
Vm
IU .
OfJ~.bounc~
Audio Codee
~osl
Sir. ...
~llcSR z.,b~
I
I
Standard hbrary,
Print.
PIIIIic
II&6iC
Libran.~
Fig.
17.
Esquema de la organización de las librerías del BlueLab 2.82.
1lP.,~ad
FUlld
!1DelcriptioD
~
~
J
~connect
status
t
status
l~ruIt
of connection
attempt
I
'; D_ADDR T
addr
~
l[The address ofthe other device
juintt6
rfcJrame_~
~
aDowed
tength
for
data
pack.ets
to
be transmitted.
I
I
Source source
Source buffer contaiuiug Ihe incoming
data
on
tbis
connection
¡Sink
sink
ISink buffer for
wriIinB
outgoing
data
on
tbis
connection
juintt6
conn_server
chanl~ca1
RFCOMM
server channel
that
the connection was created on l
Fig.
18.
Tabla que muestra
la
organización de
la
primitiva CM_CONNECT_CFM. Tomado de [1 9].
BlueCore2-Extemal se basó en la aplicación lla–
mada
spp_ s l ave
que normalmente se incluye
con los archivos del SDK. Este programa impl e–
menta un "reemplazo de cable serie" que tiene el
propósito de crear un enlace RFCOMM del tipo
2 y donde el módulo se conecta como esclavo. El
programa se modificó' de varias maneras:
a) El procedimiento de "reconocimiento"
("pai ring") se omitió porque no se necesitaba de
tma comuni cación codificada (l a información
del sensor no es crítica).
b) Por lo tanto, no se requería de una solici–
tud de clave ("PIN_CODE") o de una solicitud
de llave de enlace ("LINK_KEY").
e) Como el perfil de puerto serie es inherente al
uso de la capa RFCOMM, es irrelevante confirmar un
registro de servicio ("SERVICE_REGISTER_CFM").
9 Consultar
[15]
para comprender
los
terminas
y
las caracteristi-
d) La defini ción de características como el
"Parking" yel "Sni ffing" no son necesarias porque
la plataforma no se diseña para ser portátil.
Aquí es donde se constata la flexibilidad que ofre–
ce la herramienta CASIRA al usuario, ya que ésta le
permite determinar las características del enlace de
acuerdo a su aplicación. A continuación se presenta,
con más detalle, la implementación de la trartSmi–
sión de datos provenientes del sensor o su emulador.
La primitiva
CM_CONNECT_CFM
es una primi–
tiva (mensaje) que el CM regresa a la aplicación
para indicar el resultado del intento de conexión .
Esta primitiva se implementa como una
estructll ra
en lenguaje C que en su s campos guarda la infor–
mación relacionada con el intento de conexión . La
Fig. 18 \0 muestra el concepto de la información
contenida en la primitiva .
cas
modificadas en la implemen tación del programa del módulo
10
Se
han respetado los nombres en inglés porque as!
se
manejan
BfueCore.
en el programa.
23
1...,14,15,16,17,18,19,20,21,22,23 25,26,27,28,29,30,31,32,33,34,...45