ESP8266+51单片机WIFI控制多路遥控开关程序设计
2019-11-15 来源:51hei
这是一个基于单片机WIFI多路遥控开关设计,里面有文档,程序,图片等资料
制作出来的实物图如下:
电路原理图如下:
Wifi开关元件清单
1) 9*15万用板
2) STC89C52单片机
3) 40脚IC座
4) 11.0592MHz晶振
5) 30pF瓷片电容*2
6) 10uF电解电容
7) ESP8266模块
8) 2*4P排母
9) 2P排母*2
10) 3.3V稳压模块
11) 2P接线端子*3
12) 继电器*3
13) 3MM LED灯*3(红、绿、蓝)
14) 8550三极管*3
15) 按键
16) 1k电阻*6
17) 10k电阻
18) 自锁开关
19) DC电源插座
20) USB电源线
21) 导线
22) 手机APP(赠送)
1、单片机是通用的无论51还是52、无论stc还是at都一样,引脚功能都一样。
程序也是一样的。
2、原理图中的.ddb、.Bkp等格式是要用protelse打开的,没有软件的不要紧,
我已帮您转换成word格式和pdf格式的了。
3、程序中的.c文件可以用记事本(文本文档)打开,就是程序了。其他的是写程序是自动
生成的,没什么用的。
4、可以按照正面布局,不要按照实物的背面焊接,要按照原理图焊接。
单片机多路遥控开关源程序如下:
/********************************************************************/
#include #define uint unsigned int #define uchar unsigned char sbit LED0=P2^0; //红灯 sbit LED1=P2^3; //黄灯 sbit LED2=P2^6; //绿灯 /*****************相关变量**************/ uchar Receive,i,qj,yz,zz,ht; uint n; uchar Recive_table[40]; //用于接收wifi模块反馈到MCU上的数据 /******************************************************************* 名称:延时函数 作用:毫秒级延时,微妙级延时函数,为数据收发完成作等待....... ********************************************************************/ void ms_delay(uint t) { uint i,j; for(i=t;i>0;i--) for(j=110;j>0;j--); } void us_delay(uchar t) { while(t--); } void Uart_Init() //使用定时器1作为波特率发生器(STC89C52、STC89C51、AT89C51等均可) { TMOD = 0x20; SCON = 0x50; //设置串行方式 TH1 = 0xFD; //波特率9600 TL1 = TH1; PCON = 0x00; EA = 1; //总中断打开 ES = 1; //开串口中断 TR1 = 1; //启动定时器1 } /******************************************************************** 名称:串口发送函数 功能:MCU向无线WIFI模块ESP8266发送数据 ********************************************************************/ void Send_Uart(uchar value) { ES=0; //关闭串口中断 TI=0; //清发送完毕中断请求标志位 SBUF=value; //发送 while(TI==0); //等待发送完毕 TI=0; //清发送完毕中断请求标志位 ES=1; //允许串口中断 } /******************************************************************** 名称:WIFI模块设置函数 作用: 启动模块,以便可以实现无线接入和控制 ********************************************************************/ void ESP8266_Set(uchar *puf) // 数组指针*puf指向字符串数组 { while(*puf!='