Medidor Online de Temperatura y Humedad de Bajo Consumo
1
Trabajo Fin de Carrera
|
Implementación del driver WIFLY. Más...
#include <wifly.h>
#include <LPC17xx.h>
#include <FreeRTOS.h>
#include <type.h>
#include <task.h>
#include <uart.h>
#include <stdio.h>
#include <string.h>
#include <uartio.h>
#include <stdlib.h>
#include <semphr.h>
#include <config.h>
#include <sleep.h>
'defines' | |
#define | RST_WIFLY_PIN 22 |
#define | WF_COM_GET_IP "get ip a" |
#define | WF_COM_GET_CHANNEL "get wlan channel" |
#define | WF_COM_GET_RSSI "show rssi" |
#define | WF_COM_GET_TIME "show time" |
#define | WF_COM_GET_TX_POWER "get wlan" |
#define | WF_COM_SET_WLAN_PHRASE__SKEY "set wlan phrase %s" |
#define | WF_COM_SET_WEP_KEY__SKEY "set wlan key %s" |
#define | WF_COM_SET_TX_POWER__DVALUE "set wlan tx %d" |
#define | WF_COM_JOIN__SSSID "join %s" |
#define | WF_COM_PING__SADDRESS "ping %s" |
#define | WF_COM_OPEN__SADDRESS_DPORT "open %s %d" |
#define | WF_RES_AOK "AOK" |
Funciones | |
bool | WIFLY_EnterCommandMode () |
void | WIFLY_ExitCommandMode () |
bool | WIFLY_Initialize (uint32_t _uartId) |
bool | WIFLY_ConnectToWLAN (const char *ssid, WIFLY_SecurityType secType, const char *password) |
uint32_t | WIFLY_GetIP () |
uint8_t | WIFLY_GetChannel () |
int8_t | WIFLY_GetRSSI () |
uint32_t | WIFLY_GetUptime () |
uint32_t | WIFLY_Ping (char *address) |
uint8_t | WIFLY_GetTxPower () |
bool | WIFLY_SetTxPower (uint8_t value) |
bool | WIFLY_Open (char *address, uint32_t port, uint8_t format, const char *remote) |
void | WIFLY_Close (bool waitForClose) |
void | WIFLY_Sleep () |
Variables | |
char | message [BUFSIZE] |
volatile uint32_t | UART0Count |
uint32_t | uartId = -1 |
Identificador del puerto UART usado por el WIFLY. Más... | |
xSemaphoreHandle | mutex = NULL |
Implementación del driver WIFLY.
#define RST_WIFLY_PIN 22 |
#define WF_COM_GET_CHANNEL "get wlan channel" |
#define WF_COM_GET_IP "get ip a" |
#define WF_COM_GET_RSSI "show rssi" |
#define WF_COM_GET_TIME "show time" |
#define WF_COM_GET_TX_POWER "get wlan" |
#define WF_COM_JOIN__SSSID "join %s" |
#define WF_COM_OPEN__SADDRESS_DPORT "open %s %d" |
#define WF_COM_PING__SADDRESS "ping %s" |
#define WF_COM_SET_TX_POWER__DVALUE "set wlan tx %d" |
#define WF_COM_SET_WEP_KEY__SKEY "set wlan key %s" |
#define WF_COM_SET_WLAN_PHRASE__SKEY "set wlan phrase %s" |
#define WF_RES_AOK "AOK" |
void WIFLY_Close | ( | bool | waitForClose) |
Libera el mutex del WiFly una vez se ha realizado la acción de open y el envío de datos (si es necesario). Además si se le indica se pone a la espera del aviso de conexión cerrada.
waitForClose | Indica si es necesario esperar por el close emitido por el WiFly. |
bool WIFLY_ConnectToWLAN | ( | const char * | ssid, |
WIFLY_SecurityType | secType, | ||
const char * | password | ||
) |
Conecta el WiFly al punto de acceso indicado con los datos de conexión indicados.
ssid | Nombre del punto de acceso al que nos queremos conectar. |
secType | Tipo de seguridad que usa el punto de acceso al que se conectará el WiFly. |
password | Contraseña necesaria para conectar al punto de acceso. |
bool WIFLY_EnterCommandMode | ( | ) |
Pone el WiFly a la espera de recibir comandos. Además bloquea el mutex para que no se ejecute ninguna otra acción sobre el dispositivo WiFly.
void WIFLY_ExitCommandMode | ( | ) |
Hace salir al WiFly del modo de recepción de comandos. Y libera el mutex.
uint8_t WIFLY_GetChannel | ( | ) |
Devuelve el canal que está usando el WiFly actualmente. Es necesario estar en modo comando.
uint32_t WIFLY_GetIP | ( | ) |
Obtiene el la IP del WiFly. Es necesario estar en el modo comandos.
int8_t WIFLY_GetRSSI | ( | ) |
Devuelve el valor actual de RSSI. Es necesario estar en modo comando.
uint8_t WIFLY_GetTxPower | ( | ) |
Devuelve el valor de la potencia de transmisión. Es necesario estar en modo comando.
uint32_t WIFLY_GetUptime | ( | ) |
Devuelve el tiempo que ha transcurrido desde que el WiFly se ha encendido. Es necesario encontrarse en modo comando.
bool WIFLY_Initialize | ( | uint32_t | _uartId) |
Inicializa el dispositivo WiFly conectado al puerto UART especificado.
_uartId | Identificador del puerto UART al que está conectado el WiFly. |
bool WIFLY_Open | ( | char * | address, |
uint32_t | port, | ||
uint8_t | format, | ||
const char * | remote | ||
) |
Realiza una conexión HTTP contra un servidor dado. Se puede configurar para realizar un envío de datos automático al realizar la conexión o activo dejando la conexión abierta tras realizar la conexión para enviar los datos manualmente. Es necesario estar en modo comando.
address | Dirección a la que nos queremos conectar. |
port | Puerto al que se quiere conectar. |
format | 0 si queremos enviar los datos manualmente tras abrir la conexión o 1 en el caso de que queremos que se envíen los datos especificados en el parámetro remote tras establecer la conexión. |
remote | Cadena a enviar automáticamente una vez realizada la conexión en caso de que queramos enviar datos manualmente enviar en este parámetro "". |
uint32_t WIFLY_Ping | ( | char * | address) |
Realiza un ping a la dirección dada. Es necesario encontrarse en modo comando.
address | Dirección a la que realizaremos el ping. |
bool WIFLY_SetTxPower | ( | uint8_t | value) |
Cambia el valor de la potencia de transmisión. Es necesario estar en modo comando.
value | El nuevo valor de potencia de transmisión. |
void WIFLY_Sleep | ( | ) |
Pone el WiFly a dormir, para que consuma menos energía.
char message[BUFSIZE] |
xSemaphoreHandle mutex = NULL |
volatile uint32_t UART0Count |
uint32_t uartId = -1 |
Identificador del puerto UART usado por el WIFLY.