Basado en el protocolo BLE Bluetooth CC2540, ¿cuáles son las funciones definidas por el usuario?
Modo de usuario y pila de protocolos
1. Modo de transferencia de archivos
El modo de transferencia de archivos proporciona la función de comunicación de datos entre dos terminales y puede transferir archivos con los sufijos .xls, .ppt, .wav, .jpg y .doc (pero no se limita a estos tipos). ) ), así como carpetas completas, directorios o flujos de datos multimedia, etc., proporcionando funciones de exploración remota de carpetas. La pila del protocolo de transferencia de archivos se muestra en la Figura 2.
2. Modo Puente de Internet
Este modo de usuario proporciona la capacidad de conectarse a Internet y enviar y recibir faxes a una PC a través de un teléfono móvil o módem inalámbrico sin tener que estar físicamente conectado a la PC. El acceso telefónico a Internet requiere dos pilas de protocolos (excluyendo SDP), como se muestra en la Figura 3. El conjunto de comandos AT se utiliza para controlar el teléfono móvil o módem y la pila de protocolos que transmite otros datos comerciales. El fax utiliza una pila de protocolos similar, pero no utiliza PPP ni otros protocolos de red basados en PPP. En cambio, el software de la aplicación utiliza RFCOMM para enviarlo directamente.
3. Modo de acceso LAN
En este modo de usuario, los terminales de datos multifunción (DT) acceden de forma inalámbrica a la LAN a través del punto de acceso LAN (LAP). Luego, las operaciones de los DT son las mismas que las de los dispositivos. que acceden a la LAN a través de acceso telefónico. Lo mismo, su pila de protocolos se muestra en la Figura 4.
4. Modo sincrónico
El modo de usuario sincrónico proporciona la función de actualización de sincronización de administración de información personal (PIM) de dispositivo a dispositivo. Sus aplicaciones típicas incluyen guías telefónicas, calendarios, notificaciones y registros. Requiere que las PC, los teléfonos móviles y los asistentes digitales personales (PDA) utilicen protocolos y formatos comunes al transmitir y procesar tarjetas de visita, calendarios y notificaciones de tareas. La pila de protocolos se muestra en la Figura 5, en la que el módulo de aplicación de sincronización representa el cliente o servidor de comunicación móvil por infrarrojos (IrMC).
5. Modo de teléfono monomáquina con tres funciones
Hay tres formas de utilizar el teléfono de mano: primero, conectarse a la red telefónica pública y utilizarlo como un teléfono normal. ; segundo, úselo como un teléfono normal. Uso interno gratuito; tercero, úselo como teléfono celular. Los teléfonos inalámbricos y los teléfonos internos utilizan la misma pila de protocolos; el flujo de datos de voz interactúa directamente con el protocolo de banda base y no pasa por la capa L2CAP, como se muestra en la Figura 6.
6. Modo auriculares
Utilizando este modo, los usuarios pueden moverse libremente al realizar llamadas. A través de una conexión inalámbrica, los auriculares suelen actuar como un dispositivo de entrada y salida de audio para un teléfono móvil, un teléfono inalámbrico o una PC. La pila de protocolos del dispositivo montado en la cabeza se muestra en la Figura 7. El flujo de datos de voz accede directamente a la capa de protocolo de banda base sin pasar por la capa L2CAP. Los auriculares deben poder enviar, recibir y procesar comandos AT.
La pila de protocolos completa incluye protocolos específicos de Bluetooth (como el protocolo de administración de conexiones LMP y el protocolo de aplicación de control de enlace lógico L2CAP) y protocolos no dedicados (como el protocolo de intercambio de objetos OBEX y el protocolo de datagramas de usuario UDP). El principio fundamental del diseño de protocolos y pilas de protocolos es hacer un uso completo de varios protocolos de alto nivel existentes tanto como sea posible, garantizar la integración de los protocolos existentes y la tecnología Bluetooth y la interoperabilidad entre varias aplicaciones, y hacer un uso completo del software y hardware. sistemas que sean compatibles con las especificaciones de la tecnología Bluetooth. La apertura de las especificaciones técnicas de Bluetooth garantiza que los fabricantes de dispositivos puedan elegir libremente sus propios protocolos dedicados o protocolos públicos de uso común y desarrollar nuevas aplicaciones basadas en las especificaciones técnicas de Bluetooth.
El sistema Bluetooth de Android se divide en cuatro niveles: la capa del kernel, la biblioteca BlueZ, la biblioteca de adaptación de BlueTooth, la parte JNI de BlueTooth, la capa de marco de Java y la capa de aplicación. Primero analicemos la pila de protocolos Bluetooth de Android.
La pila de protocolos Bluetooth de Android se implementa mediante BlueZ, que se divide en dos partes: código del núcleo y programas y conjuntos de herramientas en modo de usuario.
El código del kernel consiste principalmente en el protocolo central y el controlador BlueZ; el protocolo Bluetooth se implementa en el código fuente del kernel net/bluetooth, y el controlador se encuentra en el directorio del código fuente del kernel driver/bluetooth. Los programas y conjuntos de herramientas en modo de usuario incluyen principalmente interfaces de programación de aplicaciones y conjuntos de herramientas BlueZ, que se encuentran en el directorio de código fuente de Android externo/bluetooth (nota: las versiones de Android son diferentes y algunas están en el directorio externo/bluez).
1. Pila de protocolos Bluetooth
La arquitectura de la pila de protocolos Bluetooth consta de tres partes: el módulo de hardware subyacente, la capa de protocolo intermedia y la capa de aplicación de gama alta.
1. El módulo de hardware subyacente
Composición:
Link ManagerProtocol (LMP);
Banda base, BB); p>
Radiofrecuencia (RF).
Función:
La radiofrecuencia (RF) realiza el filtrado y transmisión de flujos de datos a través de la banda ISM de 2,4 GHz.
La banda base (BB) proporciona dos enlaces físicos diferentes, a saber, conexión síncrona orientada (SCO) y conexión asincrónica menor (ACL), que son responsables del salto de frecuencia y la transmisión de tramas de información y datos de Bluetooth, y proporciona diferentes niveles. de corrección de errores directos (Frequency Error Correction, FEC) o verificación de redundancia cíclica (Cyclic Redundancy Check, CRC) para todo tipo de paquetes de datos.
El Protocolo de gestión de enlaces (LMP) es responsable del establecimiento y desmontaje de enlaces entre dos o más dispositivos, así como de la seguridad y el control de enlaces, como autenticación y cifrado, control y negociación de tamaños de paquetes de banda base, etc., que proporciona diferentes entradas de acceso para los módulos de software de capa superior.
HostController Interface (HCI) es la interfaz entre el software y el hardware en el protocolo Bluetooth. Proporciona un comando unificado para llamar a los registros de estado y control BB, LMP de capa inferior y otro hardware. módulos La transferencia de mensajes y datos entre interfaces debe ser interpretada por HCI.
2. Capa de protocolo intermedia
Compuesta:
Protocolo de adaptación y control de enlaces lógicos (L2CAP);
Protocolo de descubrimiento de servicios (SDP) );
Protocolo de emulación de puerto serie (o protocolo de reemplazo de cable RFCOMM);
Protocolo de control telefónico binario (TelephonyControlprotocol Spectocol, TCS) .
Función:
L2CAP está ubicado sobre la banda base (BB) y proporciona servicios de datos orientados y sin conexión a la capa superior. Principalmente completa el desmontaje y montaje de datos y el control de calidad del servicio. , Funciones como multiplexación de protocolos, segmentación y reensamblaje de paquetes y extracción de grupos.
SDP es un protocolo basado en la estructura cliente/servidor. Funciona sobre la capa L2CAP y proporciona un mecanismo para que las aplicaciones de la capa superior descubran los servicios disponibles y sus atributos. el tipo de servicio y el mecanismo o información de protocolo requerida para el servicio.
RFCOMM es un protocolo de simulación de datos inalámbrico que simula enlaces cableados. Cumple con el protocolo de simulación de puerto serie TS07.10 del estándar ETSI. Simula las señales de control y datos de RS-232 en la banda base Bluetooth. , Proporciona una nueva solución para el protocolo de simulación de puerto serie original. Los servicios de capa superior de la conexión de línea proporcionan capacidades de transmisión.
TCS define la señalización de control (Call Control Signalling) utilizada para establecer llamadas de voz y datos entre dispositivos Bluetooth, y es responsable de manejar el proceso de gestión de movilidad del grupo de dispositivos Bluetooth.
3. Capa de aplicación de alta gama
Composición:
Protocolo punto a punto (PPP);
Protocolo de control de transmisión /Protocolo de capa de red (TCP/IP);
Protocolo de datagramas de usuario (UDP);
Protocolo de intercambio de objetos (Protocolo ObjectExchang, OBEX);
Protocolo de aplicación inalámbrica (WAP);
Entorno de aplicaciones inalámbricas (WAE);
Función:
PPP define la especificación en serie sobre cómo los enlaces punto a punto deben transmitir el protocolo de Internet. datos, utilizados principalmente en aplicaciones como acceso LAN, acceso telefónico a redes y fax.
TCP/IP y UDP definen las comunicaciones relacionadas con Internet y las comunicaciones entre otros tipos de equipos informáticos y dispositivos periféricos.
OBEX admite el intercambio de datos entre dispositivos y utiliza el modelo cliente/servidor para proporcionar las mismas funciones básicas que HTTP (Protocolo de transferencia de hipertexto). Formato disponible para intercambio como tarjetas de comercio electrónico, calendarios personales, mensajes y notas.
WAP se utiliza para implementar servicios de Internet en teléfonos celulares digitales y otros pequeños dispositivos inalámbricos, permitiendo que los teléfonos móviles naveguen por la web, reciban correo electrónico y otros protocolos basados en Internet.
WAE proporciona diversas aplicaciones de software necesarias para teléfonos WAP y asistentes digitales personales (PersonalDigital Assistant, PDA).
2. La relación entre Android y la pila de protocolos Bluetooth
El núcleo del sistema Bluetooth es BlueZ, por lo que JNI y la capa superior giran en torno a la comunicación con BlueZ. Para JNI y la capa de aplicación de Android, el principal medio de comunicación con BlueZ es D-BUS, que es un mecanismo de comunicación IPC ampliamente utilizado similar a Binder utilizado por el marco de Android. BlueZ se basa en D-BUS y proporciona la interfaz principal para otras partes.