source: arduino-1-6-7/trunk/fuentes/arduino-ide-amd64/hardware/arduino/avr/firmwares/wifishield/wifiHD/src/wifi_spi.h @ 4837

Last change on this file since 4837 was 4837, checked in by daduve, 2 years ago

Adding new version

File size: 3.1 KB
Line 
1/*
2 * wifi_spi.h
3 *
4 *  Created on: Jul 4, 2010
5 *      Author: mlf by Metodo2 srl
6 */
7#ifndef WiFi_Spi_h
8#define WiFi_Spi_h
9
10#include "wl_definitions.h"
11
12#define CMD_FLAG        0
13#define REPLY_FLAG      1<<7
14#define DATA_FLAG               0x40
15
16#define WIFI_SPI_ACK        1
17#define WIFI_SPI_ERR        0xFF
18
19#define TIMEOUT_CHAR    1000
20
21//#define       MAX_SOCK_NUM            4       /**< Maxmium number of socket  */
22#define NO_SOCKET_AVAIL     255
23
24#define START_CMD   0xE0
25#define END_CMD     0xEE
26#define ERR_CMD         0xEF
27#define CMD_POS                 1               // Position of Command OpCode on SPI stream
28#define PARAM_LEN_POS   2               // Position of Param len on SPI stream
29 
30enum {
31        SET_NET_CMD             = 0x10,
32        SET_PASSPHRASE_CMD      = 0x11,
33        SET_KEY_CMD             = 0x12,
34        TEST_CMD                = 0x13,
35        SET_IP_CONFIG_CMD       = 0x14,
36        SET_DNS_CONFIG_CMD  = 0x15,
37
38        GET_CONN_STATUS_CMD     = 0x20,
39        GET_IPADDR_CMD          = 0x21,
40        GET_MACADDR_CMD         = 0x22,
41        GET_CURR_SSID_CMD       = 0x23,
42        GET_CURR_BSSID_CMD      = 0x24,
43        GET_CURR_RSSI_CMD       = 0x25,
44        GET_CURR_ENCT_CMD       = 0x26,
45        SCAN_NETWORKS           = 0x27,
46        START_SERVER_TCP_CMD= 0x28,
47        GET_STATE_TCP_CMD   = 0x29,
48        DATA_SENT_TCP_CMD       = 0x2A,
49    AVAIL_DATA_TCP_CMD  = 0x2B,
50    GET_DATA_TCP_CMD    = 0x2C,
51    START_CLIENT_TCP_CMD= 0x2D,
52    STOP_CLIENT_TCP_CMD = 0x2E,
53    GET_CLIENT_STATE_TCP_CMD = 0x2F,
54    DISCONNECT_CMD              = 0x30,
55        GET_IDX_SSID_CMD        = 0x31,
56        GET_IDX_RSSI_CMD        = 0x32,
57        GET_IDX_ENCT_CMD        = 0x33,
58        REQ_HOST_BY_NAME_CMD= 0x34,
59        GET_HOST_BY_NAME_CMD= 0x35,
60        START_SCAN_NETWORKS     = 0x36,
61        GET_FW_VERSION_CMD      = 0x37,
62        GET_TEST_CMD            = 0x38,
63        SEND_DATA_UDP_CMD       = 0x39,
64        GET_REMOTE_DATA_CMD = 0x3A,
65
66    // All command with DATA_FLAG 0x40 send a 16bit Len
67
68        SEND_DATA_TCP_CMD               = 0x44,
69    GET_DATABUF_TCP_CMD         = 0x45,
70    INSERT_DATABUF_CMD          = 0x46,
71
72};
73
74#if 0
75enum wl_tcp_state {
76  CLOSED      = 0,
77  LISTEN      = 1,
78  SYN_SENT    = 2,
79  SYN_RCVD    = 3,
80  ESTABLISHED = 4,
81  FIN_WAIT_1  = 5,
82  FIN_WAIT_2  = 6,
83  CLOSE_WAIT  = 7,
84  CLOSING     = 8,
85  LAST_ACK    = 9,
86  TIME_WAIT   = 10
87};
88#endif
89
90enum numParams{
91    PARAM_NUMS_0,
92    PARAM_NUMS_1,
93    PARAM_NUMS_2,
94    PARAM_NUMS_3,
95    PARAM_NUMS_4,
96    PARAM_NUMS_5,
97    MAX_PARAM_NUMS
98};
99
100#define MAX_PARAMS MAX_PARAM_NUMS-1
101#define PARAM_LEN_SIZE 1
102
103typedef struct  __attribute__((__packed__))
104{
105        uint8_t     paramLen;
106        char*       param;
107}tParam;
108
109typedef struct  __attribute__((__packed__))
110{
111        uint16_t     dataLen;
112        char*        data;
113}tDataParam;
114
115
116typedef struct  __attribute__((__packed__))
117{
118        unsigned char   cmd;
119        unsigned char   tcmd;
120        unsigned char   nParam;
121        tParam  params[MAX_PARAMS];
122}tSpiMsg;
123
124typedef struct  __attribute__((__packed__))
125{
126        unsigned char   cmd;
127        unsigned char   tcmd;
128        unsigned char   nParam;
129        tDataParam              params[MAX_PARAMS];
130}tSpiMsgData;
131
132
133typedef struct  __attribute__((__packed__))
134{
135        unsigned char   cmd;
136        unsigned char   tcmd;
137        //unsigned char totLen;
138        unsigned char   nParam;
139}tSpiHdr;
140
141typedef struct  __attribute__((__packed__))
142{
143        uint8_t     paramLen;
144        uint32_t        param;
145}tLongParam;
146
147typedef struct  __attribute__((__packed__))
148{
149        uint8_t     paramLen;
150        uint16_t        param;
151}tIntParam;
152
153typedef struct  __attribute__((__packed__))
154{
155        uint8_t     paramLen;
156        uint8_t param;
157}tByteParam;
158
159#endif
160uint8_t param;
Note: See TracBrowser for help on using the repository browser.