first commit

This commit is contained in:
jeffrey 2015-11-17 10:30:14 +08:00
parent 48de61fed7
commit 28cd8da44d
1181 changed files with 784669 additions and 0 deletions

View file

@ -0,0 +1,23 @@
#ifndef GOOGLENEST_H
#define GOOGLENEST_H
#include <polarssl/ssl.h>
typedef struct {
int socket;
char *host;
ssl_context ssl;
} googlenest_context;
int gn_connect(googlenest_context *googlenest, char *host, int port);
void gn_close(googlenest_context *googlenest);
int gn_put(googlenest_context *googlenest, char *uri, char *content);
int gn_patch(googlenest_context *googlenest, char *uri, char *content);
int gn_post(googlenest_context *googlenest, char *uri, char *content, unsigned char *out_buffer, size_t out_len);
int gn_get(googlenest_context *googlenest, char *uri, unsigned char *out_buffer, size_t out_len);
int gn_delete(googlenest_context *googlenest, char *uri);
int gn_stream(googlenest_context *googlenest, char *uri);
void google_retrieve_data_hook_callback(void (*callback)(char *));
#endif

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,166 @@
#include <platform/platform_stdlib.h>
#include "gpio_api.h" // mbed
#include "gpio_irq_api.h" // mbed
/******************************************************
* Macros
******************************************************/
#define UA_ERROR 0
#define UA_WARNING 1
#define UA_INFO 2
#define UA_DEBUG 3
#define UA_NONE 0xFF
#define UA_DEBUG_LEVEL UA_INFO
#define UA_UART_THREAD_PRIORITY 5
#define UA_UART_THREAD_STACKSIZE 512
#if (UA_DEBUG_LEVEL== UA_NONE)
#define ua_printf(level, fmt, arg...)
#else
#define ua_printf(level, fmt, arg...) \
do {\
if (level <= UA_DEBUG_LEVEL) {\
if (level <= UA_ERROR) {\
printf("\r\nERROR: " fmt, ##arg);\
} \
else {\
printf("\r\n"fmt, ##arg);\
} \
}\
}while(0)
#endif
/******************************************************
* Constants
******************************************************/
typedef enum
{
UART_CTRL_MODE_SET_REQ = 0,
UART_CTRL_MODE_SET_RSP = 1,
UART_CTRL_MODE_GET_REQ = 2,
UART_CTRL_MODE_GET_RSP = 3,
}ua_ctrl_mode_t;
typedef enum
{
UART_CTRL_TYPE_BAUD_RATE = 0x01,
UART_CTRL_TYPE_WORD_LEN = 0x02,
UART_CTRL_TYPE_PARITY = 0x04,
UART_CTRL_TYPE_STOP_BIT = 0x08,
UART_CTRL_TYPE_FLOW_CTRL = 0x10,
}ua_ctrl_type_t;
/******************************************************
* Structures
******************************************************/
typedef long time_t;
typedef struct _uartadapter_timeval_st{
long tv_sec; //秒
long tv_hmsec; //百毫秒
}UARTTHROUGH_TIMEVAL_st;
//获取网络DHCP参数时存储返回的IPMAC,GWMASKDNS等
typedef struct _ua_net_para {
char dhcp;
char ip[16]; // such as string "192.168.1.1"
char gate[16];
char mask[16];
char dns[16];
char mac[16]; // such as string "7E0000001111"
char broadcastip[16];
} ua_net_para_st;
//softAP模式时存储搜索到的 AP列表信息
typedef struct _ua_ApList_str
{
char ssid[32];
char ApPower; // min:0, max:100
char channel;
char encryption;
}ua_ApList_str;
//softAP模式时存储搜索到的 AP列表信息
typedef struct _ua_UwtPara_str
{
char ApNum; //AP number
ua_ApList_str * ApList;
} ua_UwtPara_str;
//获取UART配置信息时存储获得的串口配置信息
typedef struct _ua_uart_get_str
{
int BaudRate; //The baud rate
char number; //The number of data bits
char parity; //The parity(0: none, 1:odd, 2:evn, default:0)
char StopBits; //The number of stop bits
char FlowControl; //support flow control is 1
}ua_uart_get_str;
//配置UART参数时存储相关的配置信息
typedef struct _ua_uart_set_str
{
char UartName[8]; // the name of uart
int BaudRate; //The baud rate
char number; //The number of data bits
char parity; //The parity(default NONE)
char StopBits; //The number of stop bits
char FlowControl; //support flow control is 1
}ua_uart_set_str;
//启动wifi连接时存储WIFI的配置信息
typedef struct _ua_network_InitTypeDef_st
{
char wifi_mode; // SoftAp(0)station(1)
char wifi_ssid[32];
char wifi_key[32];
char local_ip_addr[16];
char net_mask[16];
char gateway_ip_addr[16];
char dnsServer_ip_addr[16];
char dhcpMode; // disable(0), client mode(1), server mode(2)
char address_pool_start[16];
char address_pool_end[16];
int wifi_retry_interval;//sta reconnect interval, ms
char channel;
char encryption;
} ua_network_InitTypeDef_st;
#pragma pack(1)
struct ua_ieee80211_frame
{
unsigned char i_fc[2];
unsigned char i_dur[2];
unsigned char i_addr1[6];
unsigned char i_addr2[6];
unsigned char i_addr3[6];
unsigned char i_seq[2];
};
#pragma pack()
//extern void uartadapter_netcallback(ua_net_para_st *pnet);
//extern void uartadapter_wifistatushandler(int status);
extern int uartadapter_init();
//extern void uartadapter_deinit();
//extern void uartadapter_wifipoweron(void);
//extern void uartadapter_wifipoweroff(void);
//extern int uartadapter_startnetwork(ua_network_InitTypeDef_st* pNetworkInitPara);
//extern void uartadapter_wifidisconnect (void);
extern int uartadapter_getnetpara(ua_net_para_st * pnetpara);
//extern int uartadapter_sethostname(char* name);
extern int uartadapter_readuart(int fd, void *read_buf, size_t size);
void uartadapter_tcp_data_fd_handler();
extern void uartadapter_tcpsend(char *buffer, int size, u8 isctrl);
//extern void uartadapter_test(void *param);
//extern void uartadapter_tcp_control_server_handler(void *param);
//extern void uartadapter_tcp_data_server_handler(void *param);
//extern void uartadapter_gpio_irq (uint32_t id, gpio_irq_event event);
void example_uart_adapter_init();
extern void cmd_uart_adapter(int argc, char **argv);
//#define cmd_uart_adapter cmd_ua