puesta en marcha
ACTIVAR LA COMUNICACION UART
Cuando el módulo se encuentra en modo de reposo, la UART está desactivada. Sin embargo, el módulo puede activar la UART mediante la conexión de los pines de los sensores a los datos de RX o el pin CTS (utilizando las resistencias del divisor apropiado como se describe en "Wake on Sensor imput").
Para habilitar la reactivación de RXD, utilice el comando set sys trig 1 .
Cabe señalar que el primer (o posiblemente múltiple) byte enviado al módulo muy probablemente se pierda, por lo tanto, se debe tener cuidado para enviar un byte de preámbulo para despertar el módulo antes de enviar bytes de datos válidos. También puede utilizar la entrada CTS para despertar el módulo y espere hasta que esté listo para aceptar datos. Para habilitar esta configuración, utilice el comando set sys trig 2.
Receptor UART y control de flujo de hardware RTS / CTS
El búfer de recepción UART es de aproximadamente 1500 bytes. A bajas velocidades de transmisión (menos de 115 K), el sistema puede enviar datos a través de TCP / IP sin control de flujo.
Dependiendo de la frecuencia y cantidad de los datos que están siendo enviados, los parámetros comm optimizan el rendimiento Wi-Fi especificando cuando el sistema envía paquetes IP. Para minimizar la latencia y la cabecera TCP / IP, utilice el nivel o tamaño de acuerdo con las características de enviar datos en un paquete IP. En la mayoría de los casos, debe ajustar el temporizador flush a una gran cantidad a fin de evitar la fragmentación. Para obtener un alto rendimiento, aumente la tasa de transmisión UART, ajuste el tamaño a ras de 1460, y ajustar el temporizador flush en un valor grande para que los paquetes IP se envíen completos.
Puede controlar el reenvío de paquetes de las siguientes maneras:
set comm match <valor> establece el valor del terminador de paquetes.
Cada vez que el módulo ve el carácter equivalente, este envía un paquete IP. Por ejemplo, set comm match 0xd reenvía un paquete cuando el módulo ve un carácter hexadecimal 0xd.
set comm size<valor>establece el tamaño de descarga, donde <valor> es el
número de bytes recibidos antes del reenvio. El máximo es 1.460 bytes, que es el tamaño de una sola trama de Ethernet.
set comm time<valor> establece el temporizador de descarga, que se utiliza
para vaciar los datos parciales que se almacenan en el búfer de RX, si no hay datos adicionales se recibe for <valor> ms. Por ejemplo, el comando set comm time 1000 hace que el módulo espere 1 segundo después de que no se enviaron los datos.
Si el módulo va a enviar más de unos cientos de miles de bytes en una sola transacción, debe activar el control de flujo por hardware. El hardware debe supervisar activamente el pin CTS. El control de flujo no está activado por defecto, usted lo ajusta con el comando set uart flow 1 .
Es posible operar a velocidades más altas (es decir, mayor que 115 K) sin control de flujo si los paquetes son uniformes y se utiliza un protocolo de aplicación para garantizar que el paquete de datos se suministra en el lado remoto antes de que el siguiente paquete se envíe. Sin embargo, dada la incertidumbre de los retardos de paquetes en una red TCP / IP y los efectos de la interferencia y reintentos inherentes a las redes inalámbricas, el control de flujo normalmente se requiere cuando grandes cantidades, contiguas de datos, se están escribiendo en la UART para garantizar que no se pierden los datos.
Configuración de Dirección GPIO, funciones alternativas y desactivación de indicadores LED
Usted puede controlar la dirección del pin GPIO con la máscara GPIO utilizando el comando set sys mask<valor>, donde <valor> se introduce como un número hexadecimal. El número hexadecimal representa una máscara de bits que controla cada pin, donde 1 = salida y entrada = 0.
Por ejemplo:
set sys mask 0x0 / /Establece todos los pines como entradas set sys mask 0xc0 / /Establecer sólo GPIO6 y GPIO7
Si sólo necesita establecer un bit en la máscara, se recomienda que leas, mask y ajustar el valor en las hojas de especificaciones del fabricante, fácilmente descargables de internet. De lo contrario, sobrescribirá cualquier configuración anterior de GPIO. La máscara predeterminada de la RN-131 del módulo es 0x20f0, que establece GPIO13, GPIO7, GPIO6, GPIO5 y GPIO4 como salidas. La máscara predeterminada de la RN-171 del módulo es 0x21f0, que corresponde a los siguientes ajustes:
GPIO9 está reservada para la fábrica ARM reset / ad hoc y otro pin detector
de entrada de uso general.
GPIO10 - 11 son lo pines UART RX y TX; TX no necesita ser enmascarado
como una salida.
GPIO12 es CTS (entrada), si se utiliza. GPIO13 es RTS (salida), si se utiliza.
El LED azul de la placa de evaluación de la RN-174 se conecta a GPIO7, que se emite de forma predeterminada. La placa no maneja esto porque por defecto el estado de GPIO7 para power-up (encendido) es bajo.
El comando get sys muestra la configuración de la máscara de GPIO como se muestra en el ejemplo siguiente:
get sys <2.21> SleepTmr = IoFunc = 0x0 IoMask = 0x21f0
La figura a continuación muestra los bits correspondientes a los pines GPIO y la Tabla debajo de ésta muestra el uso de pin GPIO, su estado predeterminado, y la funcionalidad.
Bit
Nombre de
señal Estado defectoRN-131por Estado defectoRN-171por Función por defecto
0 GPIO0 N/A N/A - 1 GPIO1 N/A Entrada Sin uso. 2 GPIO2 N/A Entrada Sin uso. 3 GPIO3 N/A Entrada Sin uso. 4 GPIO4 Salida Salida LED verde. 5 GPIO5 Salida Salida LED amarillo. 6 GPIO6 Salida Salida LED rojo. 7 GPIO7 Salida Salida LED azul. 8 GPIO8 Entrada Salida Sin uso.
9 GPIO9 Entrada Entrada Modo Ad hoc y reset de fabica. 10 GPIO10 Salida Salida UART TX.
11 GPIO11 Entrada Entrada UART RX.
12 GPIO12 Entrada Entrada Acelera el transmisor si el control de flujo por hardware está habilitado. Manejar en bajo este pin habilita el transmisor, operarlo en alto desactiva el pin.
13 GPIO13 Salida Salida Este pin esta en alto en el encendido y es bajo cuando el sistema está listo. Si el control de flujo por hardware está activado, este pin conmuta a alto para indicar que el buffer RX está lleno.
14 GPIO14 N/A Entrada -
Tabla. GPIO Uso Pin, valores predeterminados y funcionalidad
Ajuste de las funciones alternas GPIO
La función por defecto de GPIO 4, 5 y 6 es para el control de los LEDs. Puede reemplazar el valor predeterminado para permitir al usuario programar E / S o la funcionalidad alternativa de E / S utilizando el comando set sys iofunc <máscara> , donde <máscara> se introduce como un número hexadecimal. El valor hexadecimal representa una máscara de bits que controla cada bit en el <mask> y en particular representa un pin GPIO. Si un bit es 0, entonces el correspondiente pin GPIO es controlado / leído por el firmware por la función por defecto. La función de E / S
Bit Nombre de la señal
Dirección Función
0 GPIO4 Output Desactivar la función del LED para la E / S puede ser utilizado como un pin GPIO. 1 GPIO5 Output Desactivar la función del LED para la E / S puede ser utilizado como un pin GPIO. 2 GPIO6 Output Desactivar la función del LED para la E / S puede ser utilizado como un pin GPIO. 3 Unused - -
4 GPIO4 Output Este pin está en alto después de que el módulo ha asociado / autenticado y tiene una dirección IP.
5 GPIO5 Input Establezca este pin en alto para activar una conexión TCP y en bajo para desconectar. 6 GPIO6 Output Este pin está en alto cuando el módulo está conectado a través de TCP y bajo cuando
se desconecta.
Tabla. Máscara de bits GPIO Pin Función Alterna
Si desactiva los indicadores LED que utilizan los bits 0, 1, y 2, a continuación, puede utilizar el programa para leer estos pines GPIO. Por ejemplo, el comando program puede devolver Porto = 30.
Para utilizar las funciones alternas de los LED, utilice los siguientes comandos:
set sys iofunc 0x70 / /Habilitar función alternativa para GPIO 4 - 6 save / /Configuración de almacenamiento