Host library for controlling a WiConnect enabled Wi-Fi module.

Dependents:   wiconnect-ota_example wiconnect-web_setup_example wiconnect-test-console wiconnect-tcp_server_example ... more

Committer:
dan_ackme
Date:
Mon Aug 11 09:58:24 2014 +0000
Revision:
0:ea85c4bb5e1f
Child:
1:6ec9998427ad
initial check-in

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dan_ackme 0:ea85c4bb5e1f 1 /*
dan_ackme 0:ea85c4bb5e1f 2 * Copyright 2014, ACKme Networks
dan_ackme 0:ea85c4bb5e1f 3 * All Rights Reserved.
dan_ackme 0:ea85c4bb5e1f 4 *
dan_ackme 0:ea85c4bb5e1f 5 * This is UNPUBLISHED PROPRIETARY SOURCE CODE of ACKme Networks;
dan_ackme 0:ea85c4bb5e1f 6 * the contents of this file may not be disclosed to third parties, copied
dan_ackme 0:ea85c4bb5e1f 7 * or duplicated in any form, in whole or in part, without the prior
dan_ackme 0:ea85c4bb5e1f 8 * written permission of ACKme Networks.
dan_ackme 0:ea85c4bb5e1f 9 */
dan_ackme 0:ea85c4bb5e1f 10
dan_ackme 0:ea85c4bb5e1f 11 #pragma once
dan_ackme 0:ea85c4bb5e1f 12
dan_ackme 0:ea85c4bb5e1f 13
dan_ackme 0:ea85c4bb5e1f 14 #define MBED_SDK
dan_ackme 0:ea85c4bb5e1f 15
dan_ackme 0:ea85c4bb5e1f 16 #include "mbed.h"
dan_ackme 0:ea85c4bb5e1f 17
dan_ackme 0:ea85c4bb5e1f 18 namespace wiconnect
dan_ackme 0:ea85c4bb5e1f 19 {
dan_ackme 0:ea85c4bb5e1f 20
dan_ackme 0:ea85c4bb5e1f 21 #define WICONNECT_ASYNC_TIMER_ENABLED
dan_ackme 0:ea85c4bb5e1f 22 #define WICONNECT_ENABLE_MALLOC
dan_ackme 0:ea85c4bb5e1f 23 #define WICONNECT_SERIAL_RX_BUFFER
dan_ackme 0:ea85c4bb5e1f 24 #define WICONNECT_USE_DEFAULT_STRING_BUFFERS
dan_ackme 0:ea85c4bb5e1f 25
dan_ackme 0:ea85c4bb5e1f 26 #define WICONNECT_DEFAULT_MALLOC malloc
dan_ackme 0:ea85c4bb5e1f 27 #define WICONNECT_DEFAULT_FREE free
dan_ackme 0:ea85c4bb5e1f 28
dan_ackme 0:ea85c4bb5e1f 29 #define WICONNECT_DEFAULT_BAUD 115200
dan_ackme 0:ea85c4bb5e1f 30 #define WICONNECT_DEFAULT_TIMEOUT 3000 // ms
dan_ackme 0:ea85c4bb5e1f 31 #define WICONNECT_MAX_QUEUED_COMMANDS 8
dan_ackme 0:ea85c4bb5e1f 32 #define WICONNECT_DEFAULT_COMMAND_PROCESSING_PERIOD 50 // ms
dan_ackme 0:ea85c4bb5e1f 33
dan_ackme 0:ea85c4bb5e1f 34 #define WICONNECT_SOCKET_DEFAULT_RX_BUFFER_SIZE 256
dan_ackme 0:ea85c4bb5e1f 35 #define WICONNECT_SOCKET_DEFAULT_TX_BUFFER_SIZE 256
dan_ackme 0:ea85c4bb5e1f 36
dan_ackme 0:ea85c4bb5e1f 37 #define WICONNECT_DEFAULT_NONBLOCKING false
dan_ackme 0:ea85c4bb5e1f 38
dan_ackme 0:ea85c4bb5e1f 39 #define WICONNECT_GPIO_BASE_CLASS : DigitalOut
dan_ackme 0:ea85c4bb5e1f 40 #define WICONNECT_SERIAL_BASE_CLASS : RawSerial
dan_ackme 0:ea85c4bb5e1f 41 #define WICONNECT_PERIODIC_TIMER_BASE_CLASS : Ticker
dan_ackme 0:ea85c4bb5e1f 42 #define WICONNECT_EXTERNAL_INTERRUPT_GPIO_BASE_CLASS : InterruptIn
dan_ackme 0:ea85c4bb5e1f 43
dan_ackme 0:ea85c4bb5e1f 44
dan_ackme 0:ea85c4bb5e1f 45 #define WICONNECT_MAX_PIN_IRQ_HANDLERS 3
dan_ackme 0:ea85c4bb5e1f 46 #define WICONNECT_MAX_HOST_SIZE 64
dan_ackme 0:ea85c4bb5e1f 47 #define WICONNECT_MAX_FILENAME_SIZE 96
dan_ackme 0:ea85c4bb5e1f 48
dan_ackme 0:ea85c4bb5e1f 49 #define PIN_NC NC
dan_ackme 0:ea85c4bb5e1f 50
dan_ackme 0:ea85c4bb5e1f 51
dan_ackme 0:ea85c4bb5e1f 52 typedef PinName Pin;
dan_ackme 0:ea85c4bb5e1f 53
dan_ackme 0:ea85c4bb5e1f 54 typedef struct _SerialConfig
dan_ackme 0:ea85c4bb5e1f 55 {
dan_ackme 0:ea85c4bb5e1f 56 Pin rx;
dan_ackme 0:ea85c4bb5e1f 57 Pin tx;
dan_ackme 0:ea85c4bb5e1f 58 Pin cts;
dan_ackme 0:ea85c4bb5e1f 59 Pin rts;
dan_ackme 0:ea85c4bb5e1f 60 int baud;
dan_ackme 0:ea85c4bb5e1f 61 void *serialRxBuffer;
dan_ackme 0:ea85c4bb5e1f 62 int serialRxBufferSize;
dan_ackme 0:ea85c4bb5e1f 63
dan_ackme 0:ea85c4bb5e1f 64 _SerialConfig(Pin rx, Pin tx, Pin cts, Pin rts, int baud = WICONNECT_DEFAULT_BAUD, void *serialRxBuffer = NULL, int serialRxBufferSize = 0)
dan_ackme 0:ea85c4bb5e1f 65 {
dan_ackme 0:ea85c4bb5e1f 66 this->rx =rx;
dan_ackme 0:ea85c4bb5e1f 67 this->tx =tx;
dan_ackme 0:ea85c4bb5e1f 68 this->cts =cts;
dan_ackme 0:ea85c4bb5e1f 69 this->rts =rts;
dan_ackme 0:ea85c4bb5e1f 70 this->baud = baud;
dan_ackme 0:ea85c4bb5e1f 71 this->serialRxBuffer =serialRxBuffer;
dan_ackme 0:ea85c4bb5e1f 72 this->serialRxBufferSize =serialRxBufferSize;
dan_ackme 0:ea85c4bb5e1f 73 }
dan_ackme 0:ea85c4bb5e1f 74
dan_ackme 0:ea85c4bb5e1f 75 _SerialConfig(Pin rx, Pin tx, int baud = WICONNECT_DEFAULT_BAUD)
dan_ackme 0:ea85c4bb5e1f 76 {
dan_ackme 0:ea85c4bb5e1f 77 this->rx =rx;
dan_ackme 0:ea85c4bb5e1f 78 this->tx =tx;
dan_ackme 0:ea85c4bb5e1f 79 this->cts =PIN_NC;
dan_ackme 0:ea85c4bb5e1f 80 this->rts =PIN_NC;
dan_ackme 0:ea85c4bb5e1f 81 this->baud = baud;
dan_ackme 0:ea85c4bb5e1f 82 this->serialRxBuffer =NULL;
dan_ackme 0:ea85c4bb5e1f 83 this->serialRxBufferSize =0;
dan_ackme 0:ea85c4bb5e1f 84 }
dan_ackme 0:ea85c4bb5e1f 85
dan_ackme 0:ea85c4bb5e1f 86 } SerialConfig;
dan_ackme 0:ea85c4bb5e1f 87
dan_ackme 0:ea85c4bb5e1f 88
dan_ackme 0:ea85c4bb5e1f 89
dan_ackme 0:ea85c4bb5e1f 90 #define delayMs(ms) wait_ms(ms)
dan_ackme 0:ea85c4bb5e1f 91
dan_ackme 0:ea85c4bb5e1f 92
dan_ackme 0:ea85c4bb5e1f 93
dan_ackme 0:ea85c4bb5e1f 94
dan_ackme 0:ea85c4bb5e1f 95 }
dan_ackme 0:ea85c4bb5e1f 96