TI's CC3100 websocket camera demo with Arducam mini ov5642 and freertos. Should work with other M3's. Work in progress test demo.

Dependencies:   mbed

Committer:
dflet
Date:
Fri Sep 11 15:38:33 2015 +0000
Revision:
1:e448e81c416f
Parent:
0:400d8e75a8d0
Removed some debud.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
dflet 0:400d8e75a8d0 1 /*
dflet 0:400d8e75a8d0 2 * netcfg.h - CC31xx/CC32xx Host Driver Implementation
dflet 0:400d8e75a8d0 3 *
dflet 0:400d8e75a8d0 4 * Copyright (C) 2014 Texas Instruments Incorporated - http://www.ti.com/
dflet 0:400d8e75a8d0 5 *
dflet 0:400d8e75a8d0 6 *
dflet 0:400d8e75a8d0 7 * Redistribution and use in source and binary forms, with or without
dflet 0:400d8e75a8d0 8 * modification, are permitted provided that the following conditions
dflet 0:400d8e75a8d0 9 * are met:
dflet 0:400d8e75a8d0 10 *
dflet 0:400d8e75a8d0 11 * Redistributions of source code must retain the above copyright
dflet 0:400d8e75a8d0 12 * notice, this list of conditions and the following disclaimer.
dflet 0:400d8e75a8d0 13 *
dflet 0:400d8e75a8d0 14 * Redistributions in binary form must reproduce the above copyright
dflet 0:400d8e75a8d0 15 * notice, this list of conditions and the following disclaimer in the
dflet 0:400d8e75a8d0 16 * documentation and/or other materials provided with the
dflet 0:400d8e75a8d0 17 * distribution.
dflet 0:400d8e75a8d0 18 *
dflet 0:400d8e75a8d0 19 * Neither the name of Texas Instruments Incorporated nor the names of
dflet 0:400d8e75a8d0 20 * its contributors may be used to endorse or promote products derived
dflet 0:400d8e75a8d0 21 * from this software without specific prior written permission.
dflet 0:400d8e75a8d0 22 *
dflet 0:400d8e75a8d0 23 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
dflet 0:400d8e75a8d0 24 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
dflet 0:400d8e75a8d0 25 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
dflet 0:400d8e75a8d0 26 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
dflet 0:400d8e75a8d0 27 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
dflet 0:400d8e75a8d0 28 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
dflet 0:400d8e75a8d0 29 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
dflet 0:400d8e75a8d0 30 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
dflet 0:400d8e75a8d0 31 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
dflet 0:400d8e75a8d0 32 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
dflet 0:400d8e75a8d0 33 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
dflet 0:400d8e75a8d0 34 *
dflet 0:400d8e75a8d0 35 */
dflet 0:400d8e75a8d0 36
dflet 0:400d8e75a8d0 37 /*****************************************************************************/
dflet 0:400d8e75a8d0 38 /* Include files */
dflet 0:400d8e75a8d0 39 /*****************************************************************************/
dflet 0:400d8e75a8d0 40 #include "cc3100_simplelink.h"
dflet 0:400d8e75a8d0 41
dflet 0:400d8e75a8d0 42 #ifndef NETCFG_H_
dflet 0:400d8e75a8d0 43 #define NETCFG_H_
dflet 0:400d8e75a8d0 44
dflet 0:400d8e75a8d0 45 namespace mbed_cc3100 {
dflet 0:400d8e75a8d0 46
dflet 0:400d8e75a8d0 47 /*!
dflet 0:400d8e75a8d0 48
dflet 0:400d8e75a8d0 49 \addtogroup netcfg
dflet 0:400d8e75a8d0 50 @{
dflet 0:400d8e75a8d0 51
dflet 0:400d8e75a8d0 52 */
dflet 0:400d8e75a8d0 53
dflet 0:400d8e75a8d0 54
dflet 0:400d8e75a8d0 55 /*****************************************************************************/
dflet 0:400d8e75a8d0 56 /* Macro declarations */
dflet 0:400d8e75a8d0 57 /*****************************************************************************/
dflet 0:400d8e75a8d0 58 const uint8_t SL_MAC_ADDR_LEN = (6);
dflet 0:400d8e75a8d0 59 const uint8_t IPCONFIG_MODE_DISABLE_IPV4 = (0);
dflet 0:400d8e75a8d0 60 const uint8_t IPCONFIG_MODE_ENABLE_IPV4 = (1);
dflet 0:400d8e75a8d0 61
dflet 0:400d8e75a8d0 62 /*****************************************************************************/
dflet 0:400d8e75a8d0 63 /* Structure/Enum declarations */
dflet 0:400d8e75a8d0 64 /*****************************************************************************/
dflet 0:400d8e75a8d0 65 typedef enum {
dflet 0:400d8e75a8d0 66 SL_MAC_ADDRESS_SET = 1,
dflet 0:400d8e75a8d0 67 SL_MAC_ADDRESS_GET = 2,
dflet 0:400d8e75a8d0 68 SL_IPV4_STA_P2P_CL_GET_INFO = 3,
dflet 0:400d8e75a8d0 69 SL_IPV4_STA_P2P_CL_DHCP_ENABLE = 4,
dflet 0:400d8e75a8d0 70 SL_IPV4_STA_P2P_CL_STATIC_ENABLE = 5,
dflet 0:400d8e75a8d0 71 SL_IPV4_AP_P2P_GO_GET_INFO = 6,
dflet 0:400d8e75a8d0 72 SL_IPV4_AP_P2P_GO_STATIC_ENABLE = 7,
dflet 0:400d8e75a8d0 73 SL_SET_HOST_RX_AGGR = 8,
dflet 0:400d8e75a8d0 74 MAX_SETTINGS = 0xFF
dflet 0:400d8e75a8d0 75 } Sl_NetCfg_e;
dflet 0:400d8e75a8d0 76
dflet 0:400d8e75a8d0 77
dflet 0:400d8e75a8d0 78 typedef struct {
dflet 0:400d8e75a8d0 79 uint32_t ipV4;
dflet 0:400d8e75a8d0 80 uint32_t ipV4Mask;
dflet 0:400d8e75a8d0 81 uint32_t ipV4Gateway;
dflet 0:400d8e75a8d0 82 uint32_t ipV4DnsServer;
dflet 0:400d8e75a8d0 83 } SlNetCfgIpV4Args_t;
dflet 0:400d8e75a8d0 84
dflet 0:400d8e75a8d0 85 class cc3100_netcfg
dflet 0:400d8e75a8d0 86 {
dflet 0:400d8e75a8d0 87
dflet 0:400d8e75a8d0 88 public:
dflet 0:400d8e75a8d0 89
dflet 0:400d8e75a8d0 90 cc3100_netcfg(cc3100_driver &driver);
dflet 0:400d8e75a8d0 91
dflet 0:400d8e75a8d0 92 ~cc3100_netcfg();
dflet 0:400d8e75a8d0 93
dflet 0:400d8e75a8d0 94
dflet 0:400d8e75a8d0 95 /*****************************************************************************/
dflet 0:400d8e75a8d0 96 /* Function prototypes */
dflet 0:400d8e75a8d0 97 /*****************************************************************************/
dflet 0:400d8e75a8d0 98
dflet 0:400d8e75a8d0 99 /*!
dflet 0:400d8e75a8d0 100 \brief Internal function for setting network configurations
dflet 0:400d8e75a8d0 101
dflet 0:400d8e75a8d0 102 \return On success, zero is returned. On error, -1 is
dflet 0:400d8e75a8d0 103 returned
dflet 0:400d8e75a8d0 104
dflet 0:400d8e75a8d0 105 \param[in] ConfigId configuration id
dflet 0:400d8e75a8d0 106 \param[in] ConfigOpt configurations option
dflet 0:400d8e75a8d0 107 \param[in] ConfigLen configurations len
dflet 0:400d8e75a8d0 108 \param[in] pValues configurations values
dflet 0:400d8e75a8d0 109
dflet 0:400d8e75a8d0 110 \sa
dflet 0:400d8e75a8d0 111 \note
dflet 0:400d8e75a8d0 112 \warning
dflet 0:400d8e75a8d0 113
dflet 0:400d8e75a8d0 114 \par Examples:
dflet 0:400d8e75a8d0 115 \code
dflet 0:400d8e75a8d0 116 SL_MAC_ADDRESS_SET:
dflet 0:400d8e75a8d0 117
dflet 0:400d8e75a8d0 118 Setting MAC address to the Device.
dflet 0:400d8e75a8d0 119 The new MAC address will override the default MAC address and it be saved in the FileSystem.
dflet 0:400d8e75a8d0 120 Requires restarting the device for updating this setting.
dflet 0:400d8e75a8d0 121
dflet 0:400d8e75a8d0 122 uint8_t MAC_Address[6];
dflet 0:400d8e75a8d0 123 MAC_Address[0] = 0x8;
dflet 0:400d8e75a8d0 124 MAC_Address[1] = 0x0;
dflet 0:400d8e75a8d0 125 MAC_Address[2] = 0x28;
dflet 0:400d8e75a8d0 126 MAC_Address[3] = 0x22;
dflet 0:400d8e75a8d0 127 MAC_Address[4] = 0x69;
dflet 0:400d8e75a8d0 128 MAC_Address[5] = 0x31;
dflet 0:400d8e75a8d0 129 sl_NetCfgSet(SL_MAC_ADDRESS_SET,1,SL_MAC_ADDR_LEN,(uint8_t *)newMacAddress);
dflet 0:400d8e75a8d0 130 sl_Stop(0);
dflet 0:400d8e75a8d0 131 sl_Start(NULL,NULL,NULL);
dflet 0:400d8e75a8d0 132 \endcode
dflet 0:400d8e75a8d0 133
dflet 0:400d8e75a8d0 134 \code
dflet 0:400d8e75a8d0 135 SL_IPV4_STA_P2P_CL_STATIC_ENABLE:
dflet 0:400d8e75a8d0 136
dflet 0:400d8e75a8d0 137 Setting a static IP address to the device working in STA mode or P2P client.
dflet 0:400d8e75a8d0 138 The IP address will be stored in the FileSystem.
dflet 0:400d8e75a8d0 139 In order to disable the static IP and get the address assigned from DHCP one should use SL_STA_P2P_CL_IPV4_DHCP_SET
dflet 0:400d8e75a8d0 140
dflet 0:400d8e75a8d0 141 SlNetCfgIpV4Args_t ipV4;
dflet 0:400d8e75a8d0 142 ipV4.ipV4 = (uint32_t)SL_IPV4_VAL(10,1,1,201); // uint32_t IP address
dflet 0:400d8e75a8d0 143 ipV4.ipV4Mask = (uint32_t)SL_IPV4_VAL(255,255,255,0); // uint32_t Subnet mask for this STA/P2P
dflet 0:400d8e75a8d0 144 ipV4.ipV4Gateway = (uint32_t)SL_IPV4_VAL(10,1,1,1); // uint32_t Default gateway address
dflet 0:400d8e75a8d0 145 ipV4.ipV4DnsServer = (uint32_t)SL_IPV4_VAL(8,16,32,64); // uint32_t DNS server address
dflet 0:400d8e75a8d0 146
dflet 0:400d8e75a8d0 147 sl_NetCfgSet(SL_IPV4_STA_P2P_CL_STATIC_ENABLE,IPCONFIG_MODE_ENABLE_IPV4,sizeof(SlNetCfgIpV4Args_t),(uint8_t *)&ipV4);
dflet 0:400d8e75a8d0 148 sl_Stop(0);
dflet 0:400d8e75a8d0 149 sl_Start(NULL,NULL,NULL);
dflet 0:400d8e75a8d0 150 \endcode
dflet 0:400d8e75a8d0 151
dflet 0:400d8e75a8d0 152 \code
dflet 0:400d8e75a8d0 153 SL_IPV4_STA_P2P_CL_DHCP_ENABLE:
dflet 0:400d8e75a8d0 154
dflet 0:400d8e75a8d0 155 Setting IP address by DHCP to FileSystem using WLAN sta mode or P2P client.
dflet 0:400d8e75a8d0 156 This should be done once if using Serial Flash.
dflet 0:400d8e75a8d0 157 This is the system's default mode for acquiring an IP address after WLAN connection.
dflet 0:400d8e75a8d0 158 uint8_t val = 1;
dflet 0:400d8e75a8d0 159 sl_NetCfgSet(SL_IPV4_STA_P2P_CL_DHCP_ENABLE,IPCONFIG_MODE_ENABLE_IPV4,1,&val);
dflet 0:400d8e75a8d0 160 sl_Stop(0);
dflet 0:400d8e75a8d0 161 sl_Start(NULL,NULL,NULL);
dflet 0:400d8e75a8d0 162 \endcode
dflet 0:400d8e75a8d0 163
dflet 0:400d8e75a8d0 164 \code
dflet 0:400d8e75a8d0 165 SL_IPV4_AP_P2P_GO_STATIC_ENABLE:
dflet 0:400d8e75a8d0 166
dflet 0:400d8e75a8d0 167 Setting a static IP address to the device working in AP mode or P2P go.
dflet 0:400d8e75a8d0 168 The IP address will be stored in the FileSystem. Requires restart.
dflet 0:400d8e75a8d0 169
dflet 0:400d8e75a8d0 170 SlNetCfgIpV4Args_t ipV4;
dflet 0:400d8e75a8d0 171 ipV4.ipV4 = (uint32_t)SL_IPV4_VAL(10,1,1,201); // uint32_t IP address
dflet 0:400d8e75a8d0 172 ipV4.ipV4Mask = (uint32_t)SL_IPV4_VAL(255,255,255,0); // uint32_t Subnet mask for this AP/P2P
dflet 0:400d8e75a8d0 173 ipV4.ipV4Gateway = (uint32_t)SL_IPV4_VAL(10,1,1,1); // uint32_t Default gateway address
dflet 0:400d8e75a8d0 174 ipV4.ipV4DnsServer = (uint32_t)SL_IPV4_VAL(8,16,32,64); // uint32_t DNS server address
dflet 0:400d8e75a8d0 175
dflet 0:400d8e75a8d0 176 sl_NetCfgSet(SL_IPV4_AP_P2P_GO_STATIC_ENABLE,IPCONFIG_MODE_ENABLE_IPV4,sizeof(SlNetCfgIpV4Args_t),(uint8_t *)&ipV4);
dflet 0:400d8e75a8d0 177 sl_Stop(0);
dflet 0:400d8e75a8d0 178 sl_Start(NULL,NULL,NULL);
dflet 0:400d8e75a8d0 179 \endcode
dflet 0:400d8e75a8d0 180
dflet 0:400d8e75a8d0 181
dflet 0:400d8e75a8d0 182 */
dflet 0:400d8e75a8d0 183 #if _SL_INCLUDE_FUNC(sl_NetCfgSet)
dflet 0:400d8e75a8d0 184 int32_t sl_NetCfgSet(const uint8_t ConfigId, const uint8_t ConfigOpt, const uint8_t ConfigLen, const uint8_t *pValues);
dflet 0:400d8e75a8d0 185 #endif
dflet 0:400d8e75a8d0 186
dflet 0:400d8e75a8d0 187
dflet 0:400d8e75a8d0 188 /*!
dflet 0:400d8e75a8d0 189 \brief Internal function for getting network configurations
dflet 0:400d8e75a8d0 190
dflet 0:400d8e75a8d0 191 \return On success, zero is returned. On error, -1 is
dflet 0:400d8e75a8d0 192 returned
dflet 0:400d8e75a8d0 193
dflet 0:400d8e75a8d0 194 \param[in] ConfigId configuration id
dflet 0:400d8e75a8d0 195
dflet 0:400d8e75a8d0 196 \param[out] pConfigOpt Get configurations option
dflet 0:400d8e75a8d0 197
dflet 0:400d8e75a8d0 198 \param[out] pConfigLen The length of the allocated memory as input, when the
dflet 0:400d8e75a8d0 199 function complete, the value of this parameter would be
dflet 0:400d8e75a8d0 200 the len that actually read from the device.\n
dflet 0:400d8e75a8d0 201 If the device return length that is longer from the input
dflet 0:400d8e75a8d0 202 value, the function will cut the end of the returned structure
dflet 0:400d8e75a8d0 203 and will return ESMALLBUF
dflet 0:400d8e75a8d0 204
dflet 0:400d8e75a8d0 205 \param[out] pValues - get configurations values
dflet 0:400d8e75a8d0 206
dflet 0:400d8e75a8d0 207 \sa
dflet 0:400d8e75a8d0 208 \note
dflet 0:400d8e75a8d0 209 \warning
dflet 0:400d8e75a8d0 210 \par Examples:
dflet 0:400d8e75a8d0 211 \code
dflet 0:400d8e75a8d0 212 SL_MAC_ADDRESS_GET:
dflet 0:400d8e75a8d0 213
dflet 0:400d8e75a8d0 214 Get the device MAC address.
dflet 0:400d8e75a8d0 215 The returned MAC address is taken from FileSystem first. If the MAC address was not set by SL_MAC_ADDRESS_SET, the default MAC address
dflet 0:400d8e75a8d0 216 is retrieved from HW.
dflet 0:400d8e75a8d0 217
dflet 0:400d8e75a8d0 218 uint8_t macAddressVal[SL_MAC_ADDR_LEN];
dflet 0:400d8e75a8d0 219 uint8_t macAddressLen = SL_MAC_ADDR_LEN;
dflet 0:400d8e75a8d0 220 sl_NetCfgGet(SL_MAC_ADDRESS_GET,NULL,&macAddressLen,(uint8_t *)macAddressVal);
dflet 0:400d8e75a8d0 221
dflet 0:400d8e75a8d0 222 \endcode
dflet 0:400d8e75a8d0 223
dflet 0:400d8e75a8d0 224 \code
dflet 0:400d8e75a8d0 225 SL_IPV4_STA_P2P_CL_GET_INFO:
dflet 0:400d8e75a8d0 226
dflet 0:400d8e75a8d0 227 Get IP address from WLAN station or P2P client. A DHCP flag is returned to indicate if the IP address is static or from DHCP.
dflet 0:400d8e75a8d0 228
dflet 0:400d8e75a8d0 229 uint8_t len = sizeof(SlNetCfgIpV4Args_t);
dflet 0:400d8e75a8d0 230 uint8_t dhcpIsOn = 0;
dflet 0:400d8e75a8d0 231 SlNetCfgIpV4Args_t ipV4 = {0};
dflet 0:400d8e75a8d0 232 sl_NetCfgGet(SL_IPV4_STA_P2P_CL_GET_INFO,&dhcpIsOn,&len,(uint8_t *)&ipV4);
dflet 0:400d8e75a8d0 233
dflet 0:400d8e75a8d0 234 printf("DHCP is %s IP %d.%d.%d.%d MASK %d.%d.%d.%d GW %d.%d.%d.%d DNS %d.%d.%d.%d\n",
dflet 0:400d8e75a8d0 235 (dhcpIsOn > 0) ? "ON" : "OFF",
dflet 0:400d8e75a8d0 236 SL_IPV4_BYTE(ipV4.ipV4,3),SL_IPV4_BYTE(ipV4.ipV4,2),SL_IPV4_BYTE(ipV4.ipV4,1),SL_IPV4_BYTE(ipV4.ipV4,0),
dflet 0:400d8e75a8d0 237 SL_IPV4_BYTE(ipV4.ipV4Mask,3),SL_IPV4_BYTE(ipV4.ipV4Mask,2),SL_IPV4_BYTE(ipV4.ipV4Mask,1),SL_IPV4_BYTE(ipV4.ipV4Mask,0),
dflet 0:400d8e75a8d0 238 SL_IPV4_BYTE(ipV4.ipV4Gateway,3),SL_IPV4_BYTE(ipV4.ipV4Gateway,2),SL_IPV4_BYTE(ipV4.ipV4Gateway,1),SL_IPV4_BYTE(ipV4.ipV4Gateway,0),
dflet 0:400d8e75a8d0 239 SL_IPV4_BYTE(ipV4.ipV4DnsServer,3),SL_IPV4_BYTE(ipV4.ipV4DnsServer,2),SL_IPV4_BYTE(ipV4.ipV4DnsServer,1),SL_IPV4_BYTE(ipV4.ipV4DnsServer,0));
dflet 0:400d8e75a8d0 240
dflet 0:400d8e75a8d0 241 \endcode
dflet 0:400d8e75a8d0 242
dflet 0:400d8e75a8d0 243 \code
dflet 0:400d8e75a8d0 244 SL_IPV4_AP_P2P_GO_GET_INFO:
dflet 0:400d8e75a8d0 245
dflet 0:400d8e75a8d0 246 Get static IP address for AP or P2P go.
dflet 0:400d8e75a8d0 247
dflet 0:400d8e75a8d0 248 uint8_t len = sizeof(SlNetCfgIpV4Args_t);
dflet 0:400d8e75a8d0 249 uint8_t dhcpIsOn = 0; // this flag is meaningless on AP/P2P go.
dflet 0:400d8e75a8d0 250 SlNetCfgIpV4Args_t ipV4 = {0};
dflet 0:400d8e75a8d0 251 sl_NetCfgGet(SL_IPV4_AP_P2P_GO_GET_INFO,&dhcpIsOn,&len,(uint8_t *)&ipV4);
dflet 0:400d8e75a8d0 252
dflet 0:400d8e75a8d0 253 printf("IP %d.%d.%d.%d MASK %d.%d.%d.%d GW %d.%d.%d.%d DNS %d.%d.%d.%d\n",
dflet 0:400d8e75a8d0 254 SL_IPV4_BYTE(ipV4.ipV4,3),SL_IPV4_BYTE(ipV4.ipV4,2),SL_IPV4_BYTE(ipV4.ipV4,1),SL_IPV4_BYTE(ipV4.ipV4,0),
dflet 0:400d8e75a8d0 255 SL_IPV4_BYTE(ipV4.ipV4Mask,3),SL_IPV4_BYTE(ipV4.ipV4Mask,2),SL_IPV4_BYTE(ipV4.ipV4Mask,1),SL_IPV4_BYTE(ipV4.ipV4Mask,0),
dflet 0:400d8e75a8d0 256 SL_IPV4_BYTE(ipV4.ipV4Gateway,3),SL_IPV4_BYTE(ipV4.ipV4Gateway,2),SL_IPV4_BYTE(ipV4.ipV4Gateway,1),SL_IPV4_BYTE(ipV4.ipV4Gateway,0),
dflet 0:400d8e75a8d0 257 SL_IPV4_BYTE(ipV4.ipV4DnsServer,3),SL_IPV4_BYTE(ipV4.ipV4DnsServer,2),SL_IPV4_BYTE(ipV4.ipV4DnsServer,1),SL_IPV4_BYTE(ipV4.ipV4DnsServer,0));
dflet 0:400d8e75a8d0 258
dflet 0:400d8e75a8d0 259 \endcode
dflet 0:400d8e75a8d0 260
dflet 0:400d8e75a8d0 261
dflet 0:400d8e75a8d0 262 */
dflet 0:400d8e75a8d0 263 #if _SL_INCLUDE_FUNC(sl_NetCfgGet)
dflet 0:400d8e75a8d0 264 int32_t sl_NetCfgGet(const uint8_t ConfigId ,uint8_t *pConfigOpt, uint8_t *pConfigLen, uint8_t *pValues);
dflet 0:400d8e75a8d0 265 #endif
dflet 0:400d8e75a8d0 266
dflet 0:400d8e75a8d0 267 uint32_t SL_IPV4_VAL(uint8_t add_3,uint8_t add_2,uint8_t add_1,uint8_t add_0);
dflet 0:400d8e75a8d0 268 uint8_t SL_IPV4_BYTE(uint32_t val,uint8_t index);
dflet 0:400d8e75a8d0 269
dflet 0:400d8e75a8d0 270 private:
dflet 0:400d8e75a8d0 271
dflet 0:400d8e75a8d0 272 cc3100_driver &_driver;
dflet 0:400d8e75a8d0 273
dflet 0:400d8e75a8d0 274 };//class
dflet 0:400d8e75a8d0 275
dflet 0:400d8e75a8d0 276 }//namespace mbed_cc3100
dflet 0:400d8e75a8d0 277
dflet 0:400d8e75a8d0 278 /*!
dflet 0:400d8e75a8d0 279
dflet 0:400d8e75a8d0 280 Close the Doxygen group.
dflet 0:400d8e75a8d0 281 @}
dflet 0:400d8e75a8d0 282
dflet 0:400d8e75a8d0 283 */
dflet 0:400d8e75a8d0 284
dflet 0:400d8e75a8d0 285
dflet 0:400d8e75a8d0 286 #endif /* __NETCFG_H__ */
dflet 0:400d8e75a8d0 287
dflet 0:400d8e75a8d0 288