|
在去年年底发现了一个比较便宜的WIFI模块,便果断的买了一套回来进行测试,也希望自己能够使用这个模块,为后期的物联网的开发打下基础。当然我想现在已经有相当多的高手已经使用过该模块,只是没有拿出来而已,我再次就把资料分享出来,希望入手WIFI模块的人员少走弯路,加快脚步往前走!
WIFI模块是使用的ESP8266,在某宝上该模块只需要十几元钱,相比其他模块而言是比较便宜的了,而且该模块可以作为客户端模式,服务器模式和两个模式合并,这对于做开发的来说是性价比相当高的模块了。
接下来我对该模块进行简单介绍:
1、该模块使用串口进行数据传输,使得大家当前用的单片机都支持该模块的使用。
2、该模块操作简单,只需要简单的代码就能够完成配置。
配置代码说明:
一、连接路由器(路由器名:CDSTE_Xiaomi,密码:********==>AT+CWJAP="CDSTE_Xiaomi","********")
printf("AT+CWJAP=\"CDSTE_Xiaomi\",\"********\"");
二、启用多连接
printf("AT+CIPMUX=1");
三、开启TCP服务器
printf("AT+CIPSERVER=1,8888");
四、数据发送
printf("AT+CIPSEND=0,2");//0和2表示想0号连接(每一个客户端进入会分配一个连接编号)发送2个字符
printf("OK");//发送的字符
代码范例为NUCLEO-072开发板编写。大家如有疑问请联系我,我会尽我所能为大家解答!
|
wifi引脚
模块连接图
手机端控制图
电脑端控制
连接图
- #include "stm32f0xx.h"
- #include "led.h"
- #include "uart.h"
- #include "rtc.h"
- #include "esp8266.h"
- #include "delay.h"
- /**********************************************/
- /* 函数功能;简单的延迟函数 */
- /* 入口参数:无 */
- /**********************************************/
- void delay()
- {
- int i,j;
- for(i=0;i<1000;i++)
- {
- for(j=0;j<1000;j++);
- }
- }
- /**********************************************/
- /* 函数功能;主函数 */
- /* 入口参数:无 */
- /**********************************************/
- int main(void)
- {
- uint8_t LinkPort=0,t;
- SystemInit();
- LED_Init();
- delay_init(72);
- USART_Configuration();
- ESP_WorkMode(3);
- USART_RX_STA=0;
- //连接路由器
- ESP_LinkModen();
- delay_ms(1800);
- delay_ms(1800);
- USART_RX_STA=0;
- //启动多链接
- ESP_LinkMux();
- USART_RX_STA=0;
- //启动tcp服务器
- ESP_StartTCPServer();
- USART_RX_STA=0;
- //设置超时连接
- ESP_STO();
- USART_RX_STA=0;
- LED_Close();
- while(1)
- {
- if(USART_RX_STA&0x80)
- {
- if(USART_RX_BUF[1]=='1')
- LED_Open();
- else if(USART_RX_BUF[1]=='0')
- LED_Close();
- ESP_SendAckMsg(0);
- USART_RX_STA=0;
- USART_RX_BUF[0]=0x0;
- }
-
- }
- }
复制代码
|
|