- 物联网开发板——NuMaker Uni资料开源下载(硬件+软件+Android APP+用户指南)
- 物联网时代万能的开发模块 - “小哪吒“FPGA+Wifi开发模块
- (全部资料共享)极Q开发板——QQ物联开发(原理图、参考程序、视频教程等)
- WIOT board(无线物联开发板)
- 智能硬件开发平台—小e物联网WiFi开发板电路图+PCB+源代码
WIFI小车用小E开发板作为服务器(AP模式),然后用手机作为客户端进行连接。简单理解就是用小E开发板发出热点,然后手机连接上wifi热点,之后进行TCP协议进行通信。从而控制小车的方向和转速。
一、小E开发-wifi-AP模式配置
user_set_softap_config(void)
{
struct softap_config ap_config;
constchar *wifi_name = "四驱车"; //发出的热点名称
wifi_set_opmode(SOFTAP_MODE); //设置为AP模式,并保存到 flash
ap_config.ssid_len = strlen(wifi_name); //计算ssid长度
os_strcpy(ap_config.ssid,wifi_name); //设置ssid名字
os_strcpy(ap_config.password,"12345678"); //设置密码
ap_config.authmode=3; //设置加密模式
ap_config.beacon_interval=100; //信标间隔时槽100 ~ 60000 ms
ap_config.channel=1; //通道号1 ~ 13
ap_config.max_connection=4; //最大连接数
ap_config.ssid_hidden=0; //隐藏SSID
wifi_softap_set_config(&ap_config);
//定时查看wifi是否连成功 。。
os_timer_disarm(&test_timer);
os_timer_setfn(&test_timer,(os_timer_func_t *) user_esp_platform_check_ip,NULL);
os_timer_arm(&test_timer,1000, 0); //1S回调异常
}
二、建立TCP协议
1、先检查IP地址是否为零。
2、IP地址不为0,开始初始化配置TCP协议。
TCP协议初始化配置函数
user_tcpserver_init(uint32 port)
{
esp_conn.type = ESPCONN_TCP;
esp_conn.state = ESPCONN_NONE;
esp_conn.proto.tcp = &esptcp;
esp_conn.proto.tcp->local_port =port;
espconn_regist_connectcb(&esp_conn,tcp_server_listen);
//注册TCP 回调函数
espconn_regist_time(&esp_conn,0,0);
//设置超时断开时间 单位:秒,最大值:7200 秒
sint8 ret =espconn_accept(&esp_conn);
//创建TCP_Sevser服务器 监听
//if(ret==0)
//os_printf("\r\n创建TCP_Sevser监听成功!!\r\n");
}
TCP配置成功之后,创建事件回调函数。具体大家可以参考手册附录有详细说明
/****************************************************
*TCP服务器创建监听连接成功
*****************************************************/
LOCAL void ICACHE_FLASH_ATTR
tcp_server_listen(void*arg)
{
struct espconn *pesp_conn = arg;
//os_printf("tcp_server_listen !!! \r\n");
espconn_regist_recvcb(pesp_conn,tcp_server_recv_cb); //tcp收到数据后回调函数
espconn_regist_sentcb(pesp_conn,tcp_server_sent_cb); //TCP发送完成回调函数
espconn_regist_reconcb(pesp_conn,tcp_server_recon_cb); //tcp链接发送异常断开
espconn_regist_disconcb(pesp_conn,tcp_server_discon_cb); //TCP链接正常断开
tcp_server_multi_send(); //查询客户端接入ip地址
espconn_regist_time(&esp_conn,0,0); //设置超时断开时间 0 为一直连着不断开
//os_printf("注册各个回调函数完成 !!! \r\n");
}
三、TCP接收数据和处理数据函数
tcp_server_recv_cb(void *arg, char *pusrdata,
unsignedshort length)
{
//接收成功的回调函数
struct espconn *pespconn = arg;
uint8 i =0;
os_printf("%s",pusrdata); //UART透传出去
espconn_sent(pespconn,pusrdata, length);
If(..)
{
...........
}
}
四、PWM配置