ESP8266 手机调试助手
包含手机TCP&UDP调试助手.apk与USR-TCP232-Test.exe
全部资料51hei下载地址:
手机调试助手.rar
(3.93 MB, 下载次数: 56)
esp_iot_sdk(完整,还差模块从调试助手获得数据传给手机)源程序如下:
- /******************************************************************************
- * Copyright 2013-2014 Espressif Systems (Wuxi)
- *
- * FileName: user_main.c
- *
- * Description: entry file of user application
- *
- * Modification history:
- * 2014/1/1, v1.0 create this file.
- *******************************************************************************/
- #include "ets_sys.h"
- #include "user_interface.h"
- #include "user_devicefind.h"
- //#include "user_webserver.h"
- #include "version.h"
- #include "espmissingincludes.h"
- #include "osapi.h"
- #include "driver/uart.h"
- //#if ESP_PLATFORM
- //#include "user_esp_platform.h"
- //#endif
- #ifdef SERVER_SSL_ENABLE
- #include "ssl/cert.h"
- #include "ssl/private_key.h"
- #else
- #ifdef CLIENT_SSL_ENABLE
- unsigned char *default_certificate;
- unsigned int default_certificate_len = 0;
- unsigned char *default_private_key;
- unsigned int default_private_key_len = 0;
- #endif
- #endif
- #include "user_smartconfig.h"
- #include "driver/uart.h"
- #include "espconn.h"
- #include "mem.h"
- #define NET_DOMAIN "cn点bing点com.sherry"
- #define pheadbuffer "GET / HTTP/1.1\r\nUser-Agent: curl/7.37.0\r\nHost: %s\r\nAccept: */*\r\n\r\n"
- #define INTRODUCTION "connect succeed!I am ESP8266!"
- #define packet_size (2 * 1024)
- #define MY_SSID "miwalk_office"
- #define MY_PASSWORD "cqmyg14dss.miwalk"
- LOCAL os_timer_t test_timer;
- LOCAL struct espconn user_tcp_conn;
- LOCAL struct _esp_tcp user_tcp;
- ip_addr_t tcp_server_ip;
- /******************************************************************************
- * FunctionName : user_tcp_recv_cb
- * Description : receive callback.
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_tcp_recv_cb(void *arg, char *pusrdata, unsigned short length)
- {
- //received some data from tcp connection
- //os_printf("tcp recv !!! %s \r\n", pusrdata); //init command
- os_printf("server: %s \r\n", pusrdata);
- //sherry add below
- struct espconn *pesp_conn = arg;
- remot_info *premot = NULL;
- sint8 value = ESPCONN_OK;
- if (espconn_get_connection_info(pesp_conn,&premot,0) == ESPCONN_OK){
- pesp_conn->proto.tcp->remote_port = premot->remote_port;
- pesp_conn->proto.tcp->remote_ip[0] = premot->remote_ip[0];
- pesp_conn->proto.tcp->remote_ip[1] = premot->remote_ip[1];
- pesp_conn->proto.tcp->remote_ip[2] = premot->remote_ip[2];
- pesp_conn->proto.tcp->remote_ip[3] = premot->remote_ip[3];
- espconn_sent(pesp_conn , "\r\n me: " , os_strlen("\r\n me: "));
- espconn_sent(pesp_conn , pusrdata , os_strlen(pusrdata));
- }
- }
- /******************************************************************************
- * FunctionName : user_tcp_sent_cb
- * Description : data sent callback.
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_tcp_sent_cb(void *arg)
- {
- }
- /******************************************************************************
- * FunctionName : user_tcp_discon_cb
- * Description : disconnect callback.
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_tcp_discon_cb(void *arg)
- {
- //tcp disconnect successfully
- os_printf("tcp disconnect succeed !!! \r\n");
- }
- /******************************************************************************
- * FunctionName : user_esp_platform_sent
- * Description : Processing the application data and sending it to the host
- * Parameters : pespconn -- the espconn used to connetion with the host
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_sent_data(struct espconn *pespconn)
- {
- char *pbuf = (char *)os_zalloc(packet_size);
- os_sprintf(pbuf, INTRODUCTION);
- espconn_sent(pespconn, pbuf, os_strlen(pbuf));
- os_free(pbuf);
- }
- /******************************************************************************
- * FunctionName : user_tcp_connect_cb
- * Description : A new incoming tcp connection has been connected.
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_tcp_connect_cb(void *arg)
- {
- struct espconn *pespconn = arg;
- os_printf("connect succeed !!! \r\n");
- espconn_regist_recvcb(pespconn, user_tcp_recv_cb);
- espconn_regist_sentcb(pespconn, user_tcp_sent_cb);
- espconn_regist_disconcb(pespconn, user_tcp_discon_cb);
- user_sent_data(pespconn);
- }
- /******************************************************************************
- * FunctionName : user_tcp_recon_cb
- * Description : reconnect callback, error occured in TCP connection.
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_tcp_recon_cb(void *arg, sint8 err)
- {
- //error occured , tcp connection broke. user can try to reconnect here.
- os_printf("reconnect callback, error code %d !!! \r\n",err);
- }
- #ifdef DNS_ENABLE
- /******************************************************************************
- * FunctionName : user_dns_found
- * Description : dns found callback
- * Parameters : name -- pointer to the name that was looked up.
- * ipaddr -- pointer to an ip_addr_t containing the IP address of
- * the hostname, or NULL if the name could not be found (or on any
- * other error).
- * callback_arg -- a user-specified callback argument passed to
- * dns_gethostbyname
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_dns_found(const char *name, ip_addr_t *ipaddr, void *arg)
- {
- struct espconn *pespconn = (struct espconn *)arg;
- if (ipaddr == NULL)
- {
- os_printf("user_dns_found NULL \r\n");
- return;
- }
- //dns got ip
- os_printf("user_dns_found %d.%d.%d.%d \r\n",
- *((uint8 *)&ipaddr->addr), *((uint8 *)&ipaddr->addr + 1),
- *((uint8 *)&ipaddr->addr + 2), *((uint8 *)&ipaddr->addr + 3));
- if (tcp_server_ip.addr == 0 && ipaddr->addr != 0)
- {
- // dns succeed, create tcp connection
- os_timer_disarm(&test_timer);
- tcp_server_ip.addr = ipaddr->addr;
- os_memcpy(pespconn->proto.tcp->remote_ip, &ipaddr->addr, 4); // remote ip of tcp server which get by dns
- pespconn->proto.tcp->remote_port = 80; // remote port of tcp server
- pespconn->proto.tcp->local_port = espconn_port(); //local port of ESP8266
- espconn_regist_connectcb(pespconn, user_tcp_connect_cb); // register connect callback
- espconn_regist_reconcb(pespconn, user_tcp_recon_cb); // register reconnect callback as error handler
- espconn_connect(pespconn); // tcp connect
- }
- }
- /******************************************************************************
- * FunctionName : user_esp_platform_dns_check_cb
- * Description : 1s time callback to check dns found
- * Parameters : arg -- Additional argument to pass to the callback function
- * Returns : none
- *******************************************************************************/
- LOCAL void ICACHE_FLASH_ATTR
- user_dns_check_cb(void *arg)
- {
- struct espconn *pespconn = arg;
- espconn_gethostbyname(pespconn, NET_DOMAIN, &tcp_server_ip, user_dns_found); // recall DNS function
- os_timer_arm(&test_timer, 1000, 0);
- }
- #endif
- /******************************************************************************
- * FunctionName : user_check_ip
- * Description : check whether get ip addr or not
- * Parameters : none
- * Returns : none
- *******************************************************************************/
- void ICACHE_FLASH_ATTR
- user_check_ip(void)
- {
- struct ip_info ipconfig;
- //disarm timer first
- os_timer_disarm(&test_timer);
- //get ip info of ESP8266 station
- wifi_get_ip_info(STATION_IF, &ipconfig);
- if (wifi_station_get_connect_status() == STATION_GOT_IP && ipconfig.ip.addr != 0)
- {
- os_printf("got ip !!! \r\n");
- // Connect to tcp server as NET_DOMAIN
- user_tcp_conn.proto.tcp = &user_tcp;
- user_tcp_conn.type = ESPCONN_TCP;
- user_tcp_conn.state = ESPCONN_NONE;
- #ifdef DNS_ENABLE
- tcp_server_ip.addr = 0;
- espconn_gethostbyname(&user_tcp_conn, NET_DOMAIN, &tcp_server_ip, user_dns_found); // DNS function
- os_timer_setfn(&test_timer, (os_timer_func_t *)user_dns_check_cb, user_tcp_conn);
- os_timer_arm(&test_timer, 1000, 0);
- #else
- const char esp_tcp_server_ip[4] = {192, 168, 0, 153}; // remote IP of TCP server,
- os_memcpy(user_tcp_conn.proto.tcp->remote_ip, esp_tcp_server_ip, 4);
- user_tcp_conn.proto.tcp->remote_port = 1234; // remote port
- user_tcp_conn.proto.tcp->local_port = espconn_port(); //local port of ESP8266
- espconn_regist_connectcb(&user_tcp_conn, user_tcp_connect_cb); // register connect callback
- espconn_regist_reconcb(&user_tcp_conn, user_tcp_recon_cb); // register reconnect callback as error handler
- espconn_connect(&user_tcp_conn);
- #endif
- }
- else
- {
- if ((wifi_station_get_connect_status() == STATION_WRONG_PASSWORD ||
- wifi_station_get_connect_status() == STATION_NO_AP_FOUND ||
- wifi_station_get_connect_status() == STATION_CONNECT_FAIL))
- {
- os_printf("connect fail !!! \r\n");
- }
- else
- {
- //re-arm timer to check ip
- os_timer_setfn(&test_timer, (os_timer_func_t *)user_check_ip, NULL);
- os_timer_arm(&test_timer, 100, 0);
- }
- }
- }
- /******************************************************************************
- * FunctionName : user_set_station_config
- * Description : set the router info which ESP8266 station will connect to
- * Parameters : none
- * Returns : none
- *******************************************************************************/
- void ICACHE_FLASH_ATTR
- user_set_station_config(void)
- {
- // Wifi configuration
- char ssid[32] = MY_SSID;
- char password[64] = MY_PASSWORD;
- struct station_config stationConf;
- os_memset(stationConf.ssid, 0, 32);
- os_memset(stationConf.password, 0, 64);
- //need not mac address
- //stationConf.bssid_set = 0;
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
|