标题: STC单片机驱动ESP8266 用手机APP 实现远程控制 [打印本页]

作者: 光翟11    时间: 2017-4-26 16:23
标题: STC单片机驱动ESP8266 用手机APP 实现远程控制
STC89C52驱动ESP8266-01 云连接 手机APP远程控制程序


单片机与wifi模块接线
单片机         wifi模块
    TX--------RX
    RX--------TX
    GND-------GND
             外接3.3V GND也可外接

注意   接好TX  RX GND后 先给单片机上电  再给wifi模块接3.3v电源


首先注册一个账号

登陆进去后

设置wifi模块
  Usb转串口连接wifi   进行配网操作
   首先烧写固件 (看资料)
打开串口调试助手

第一步:测试AT 看是否返回ok  若没有重启一下
第二步:设置station模式  AT+CWMODE=1 返回OK
第三步:启动云连接   AT+CLDSTART
        本条指令发送后
        Wifi模块进入智能配网模式
        此时打开手机app 点击右上角的+号  使模块连上指定的wifi
        入网后  模块自动连接云服务器
        之后手机端会显示连接服务器
    100%后  返回设备界面  多刷新几次  直到有未绑定的设备出现  点击绑定
    之后可以进行数据透传了

当然  也可以实现远程控制单片机了



  1. #include<reg52.h>
  2. #define uint unsigned int
  3. #define uchar unsigned char
  4. //#include<reg51.h>
  5. sbit led1=P1^0;
  6. sbit led2=P1^1;
  7. sbit beef=P3^6;
  8. sbit relay=P0^0;
  9. uchar k = 0;
  10. uchar Receive;
  11. uchar Receive_table[30];
  12. void Delay_Ms(uint ms)
  13. {
  14. uint i,j;                              
  15. for(i = ms; i > 0; i--)
  16. for(j = 110; j > 0; j--);
  17. }
  18. void Delay_Us(uchar us)
  19. {
  20. while(us--);
  21. }
  22. void InitUART(void)
  23. {
  24.         TMOD=0x21;
  25.         TH0=(65536-87)/256;
  26.         TL0=(65536-87)%256;
  27.         EA=1;
  28.         ET0=1;
  29.         TR0=0;
  30.         
  31.         

  32. //    SCON = 0x50;
  33. //    TH1 = 0xFA;
  34. //    TL1 = TH1;
  35. //    PCON = 0x80;
  36. //    ES = 1;
  37. //    EA = 1;
  38. //    TR1 = 1;
  39. SCON = 0X50;
  40. TH2=0XFF;
  41. TL2=0XFD;
  42. RCAP2H=0XFF;
  43. RCAP2L=0XFD;
  44. TCLK=1;
  45. RCLK=1;
  46. C_T2=0;
  47. EXEN2=0;
  48. TR2=1;
  49. ES = 1;
  50. EA = 1;

  51. }


  52. void Uart_Send_Char(uchar dat)
  53. {
  54. ES = 0;
  55. TI = 0;
  56. SBUF = dat;
  57. while(!TI);
  58. TI = 0;
  59. ES = 1;
  60. }
  61. void Uart_Send_String(uchar *string)
  62. {
  63.     while(*string)
  64.     {
  65.       Uart_Send_Char(*string++);
  66.       Delay_Us(5);
  67.     }
  68.     Delay_Ms(1000);
  69. }
  70. void ESP8266_Send(uchar *puf)
  71. {
  72.         Delay_Ms(20);
  73.    Uart_Send_String("AT+CLDSENDRAW=9\r\n");
  74.         Delay_Ms(20);
  75.    Uart_Send_String(puf);
  76. }
  77. void ESP8266_Init()
  78. {
  79. //   Uart_Send_String("AT+CIPMUX=1\r\n");
  80. //   Uart_Send_String("AT+CIPSERVER=1,5000\r\n");
  81.            Uart_Send_String("AT+CLDSTART\r\n");
  82. }
  83. void main(void)
  84. {
  85.           led1=0;
  86.           led2=0;
  87.     InitUART();
  88.           ESP8266_Init();
  89.         while(1)
  90.         {
  91.           if((Receive_table[0]=='+')&&(Receive_table[1]=='C')&&(Receive_table[2]=='R'))//MCU???????+IPD???????0\1???????
  92.     {
  93.     if((Receive_table[3]=='A')&&(Receive_table[6]=='1'))
  94.      {

  95.         switch(Receive_table[8])
  96.         {
  97.           case '0':
  98.                  led1=1;
  99.                  ESP8266_Send("LED1 OPEN\r\n");
  100.                                                Receive_table[8]='f';
  101.                  break;
  102.           case '1':
  103.                  led1=0;
  104.                  ESP8266_Send("LED1  OFF\r\n");
  105.                                                Receive_table[8]='f';
  106.                  break;
  107.                   case '2':
  108.                  led2=1;
  109.                  ESP8266_Send("LED2 OPEN\r\n");
  110.                                                Receive_table[8]='f';
  111.                  break;
  112.           case '3':
  113.                  led2=0;
  114.                  ESP8266_Send("LED2  OFF\r\n");
  115.                                                Receive_table[8]='f';
  116.                  break;
  117.                   case '4':
  118.                             TR0=1;break;
  119.                   case '5':
  120.                             TR0=0;break;
  121.           case '6':
  122.                  relay=0;
  123.                  ESP8266_Send("relayOPEN\r\n");
  124.                                                Receive_table[8]='f';
  125.                  break;
  126.                   case '7':
  127.                  relay=1;
  128.                  ESP8266_Send("relay OFF\r\n");
  129.                                                

  130. …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码


下载:
STC89c52RC驱动ESP8266-01 实现远程控制.zip (13.93 MB, 下载次数: 1587)


作者: hymtnzc    时间: 2017-5-16 11:57
小白,远程可以发数据,不错。
作者: hymtnzc    时间: 2017-5-16 19:20
接单片机ESP8266连不了云端,是程序问题吗?懂的指点一下?
作者: jxdianqi    时间: 2017-5-16 23:16
谢谢楼主分享,下载学习
作者: 337241773    时间: 2017-5-27 14:07
感谢楼主,正需要这个
作者: YQS    时间: 2017-5-27 18:53

谢谢楼主分享好资源.不过下载后打开中文部分乱码,可否将文件名改英文?谢谢!
作者: 啦啦啦1234    时间: 2017-5-30 05:59
请问要led1=1,发送什么?我发送0,不行啊。
作者: qjyjack612510    时间: 2017-6-20 23:16
谢谢楼主!学习中。。。。。
作者: qq704661078    时间: 2017-8-3 23:44
问下楼主,怎样才能实现模块和手机连接不同网络时(比如手机用移动网络时)也能进行透传???
作者: zhao9988    时间: 2017-9-6 14:35
不错的尝试!
作者: zhao9988    时间: 2017-9-6 14:38
感谢楼主,正想尝试一下,借鉴学习!
作者: 563285921    时间: 2017-10-14 19:34
学习学习~~谢谢楼主~~`
作者: koenlee93    时间: 2017-10-26 00:58
写的不错标记
作者: faridzled    时间: 2017-10-26 06:22
Thanks for sharing
作者: GOD丿小男孩    时间: 2017-10-26 23:48
好东西,谢谢楼主
作者: tkf008    时间: 2017-10-27 08:00
这些对初学者来说有难度,挑战一下!谢谢分享
作者: janson    时间: 2017-11-30 23:09
感谢楼主的雷锋精神
作者: 15638218949    时间: 2017-12-21 11:03
赞赞赞赞
作者: 开机后即可看    时间: 2017-12-29 20:28
app用不了
作者: tieq1952    时间: 2017-12-30 13:36
谢谢楼主奉献
作者: yy191039855    时间: 2018-1-8 11:29
很好的帖子
学习了,谢谢楼主
作者: qjzyx    时间: 2018-1-8 15:18
谢谢分享!
作者: miqi0708    时间: 2018-1-19 12:29
谢谢楼主分享,下载学习
作者: 小潘哥    时间: 2018-2-4 14:44
谢谢楼主无私分享,学习学习
作者: cvgjhuor    时间: 2018-3-3 12:18
努力学习,谢谢楼主

作者: aking991    时间: 2018-3-5 08:41
很不错,谢谢分享
作者: ltp    时间: 2018-3-16 13:24
谢谢楼主分享.很实用.
作者: lingang10000    时间: 2018-3-18 20:39
app用不了
作者: zonghao111    时间: 2018-3-18 22:44
感谢楼主分享,很实用

作者: sanshisui    时间: 2018-3-21 12:16
学习学习~~谢谢楼主~~`
作者: wang8128    时间: 2018-3-22 12:03
谢谢楼主分享,下载学习
作者: jingboxu    时间: 2018-3-22 13:41

谢谢楼主分享,下载学习
作者: 76711031    时间: 2018-3-22 15:22
感谢楼主的雷锋精神
作者: 龙。。。    时间: 2018-3-31 16:29
hymtnzc 发表于 2017-5-16 11:57
小白,远程可以发数据,不错。

不错

作者: 么么了    时间: 2018-4-15 19:47
黑比 不足  哎

作者: HWZ3366    时间: 2018-5-10 00:33
请问能不能发个APP的代码?谢谢
作者: HWZ3366    时间: 2018-5-10 00:34
求APP程序代码,谢谢
作者: FangLai    时间: 2018-5-25 22:13
感谢楼主
作者: FangLai    时间: 2018-5-25 22:15
学习了,谢谢楼主
很好的帖子

作者: qdove    时间: 2018-5-26 20:27
正是我想要的,一直想学习
作者: 小树树    时间: 2018-5-30 09:39
小白,想尽快上手试试,最近刚好有这方面的需要
作者: zjmike123    时间: 2018-5-30 13:29
等我有了黑币我就可以了
作者: 余大哥    时间: 2018-6-7 14:32
楼主是好人
作者: 余大哥    时间: 2018-6-7 14:32
继续努力学习模块和单片机,好东西
作者: wauuvs    时间: 2018-6-25 16:36
学习学习
作者: molibaobei    时间: 2018-6-25 22:44
谢谢楼主分享,下载学习
作者: gnalorange    时间: 2018-7-9 22:37

正是我想要的,一直想学习
作者: canxin520    时间: 2018-7-18 16:06
厉害了我的哥
作者: 364611194    时间: 2018-7-19 12:39
ESP8266的32位mcu很强悍的,用51驱动感觉小马拉大车
作者: wgb12    时间: 2018-7-28 22:09
压缩包怎么没有APK?

作者: linwenqiang    时间: 2018-7-30 23:43
不错的东西,学习一下
作者: linwenqiang    时间: 2018-7-30 23:43
不错的东西,一直想学习
作者: 18239311863    时间: 2018-8-6 03:32
谢谢分享
作者: 林伟的    时间: 2018-8-6 17:12
正是我想要的,一直想学习
作者: wycok    时间: 2018-8-7 10:08
谢谢楼主的奉献,让我这些小白可以参考学习了!
作者: xsj1877578806    时间: 2018-8-8 06:36
很好的资料,学习一下
作者: kpfss    时间: 2018-8-8 19:26
求APP代码

作者: kpfss    时间: 2018-8-10 20:42
找了好久,谢谢
作者: 517656771    时间: 2018-8-18 10:39
楼主 注册的那个软件是什么啊


作者: gxlin    时间: 2018-9-4 20:40
下载资料,好好学习。
作者: qq35404085    时间: 2018-9-5 17:03
看上去很强大
作者: bibh    时间: 2018-10-5 08:38
不错哦,学习一下
作者: bibh    时间: 2018-10-5 08:39
不错,学习一下
作者: ahandsomeboy    时间: 2018-11-22 23:19
app为什么用不了呢。连接不上
作者: 快乐眼泪    时间: 2018-11-23 21:04
下来学习一下
作者: ig.wxz    时间: 2018-11-23 22:37
谢谢楼主的分享!
作者: 快乐眼泪    时间: 2018-11-24 20:12
下载了,怎么不是完整的汉字啊?
作者: zzhnzyh    时间: 2018-11-29 14:21
怎么注册不上

作者: wytopkk    时间: 2018-11-29 17:32
学习一下,是个很好的尝试
作者: zhuangj2001    时间: 2018-12-2 17:11
感谢无私的奉献
作者: 2307393235    时间: 2018-12-9 19:32
点注册收不到手机验证码
作者: Livynwa    时间: 2018-12-23 09:19
谢谢楼主分享
作者: asd111111    时间: 2019-1-3 21:56
谢谢楼主分享
作者: 熬夜对身体不好    时间: 2019-1-4 21:34
谢谢楼主
作者: jialishoushi    时间: 2019-1-5 22:23
学习了,谢谢楼主
作者: liyoujie    时间: 2019-1-6 20:44
谢谢分享
作者: z123321131    时间: 2019-2-8 19:27
感谢提供资料学习~~~~~~~~~~~
作者: 八岁age8    时间: 2019-2-8 19:47

学习学习~~谢谢楼主~~`
作者: kangzhao    时间: 2019-3-15 00:20
云端是申请的域m ing么?怎么去检测云端呀!
作者: 12qwert    时间: 2019-3-15 10:08
好东西,学习一下,谢谢!
作者: wanglx    时间: 2019-4-10 20:42
感谢楼主
作者: 1063941314li    时间: 2019-4-11 09:21
楼主程序打不开了,怎么回事啊,能不能再发一遍。
作者: qq1007429789    时间: 2019-4-26 00:08
谢谢楼主分享,下载学习
作者: 893462999    时间: 2019-4-29 11:44
正要做远程控制的,还没用,希望能参考一下
作者: 终极小馒头啦    时间: 2019-5-2 12:49
正需要资料,感谢
作者: woojoon1981    时间: 2019-5-2 20:06
正好在找这个资料
作者: jovew    时间: 2019-5-3 11:10
好东西, 谢谢大家的分享。。。
作者: lhklcb    时间: 2019-5-4 21:54
感谢楼主,正想尝试一下,借鉴学习!
作者: yangxiaowei    时间: 2019-5-5 14:25
不错很好  学习了
作者: lxl246    时间: 2019-6-21 14:18
好东西,学习
作者: 73453453783    时间: 2019-6-23 02:22
学习一下~太棒了!
作者: Xiaoyf88888    时间: 2019-10-8 10:17

谢谢楼主分享,下载学习
作者: hupl    时间: 2019-10-9 14:19
感谢楼主,你的程序比较易读
作者: hupl    时间: 2019-10-9 14:20
这个贴子不错,我正好想让尝试一下
作者: 何为轻狂    时间: 2019-10-15 00:31
固件地址是多少
作者: zgchen    时间: 2019-10-18 21:22
要是能脱离云就好了!!万一网络出问题呢??就用不了啊!!
作者: C51hq    时间: 2019-10-21 22:04
好贴,我想借鉴一下
作者: 依恋晓    时间: 2019-10-24 14:18
好东西,正在学习
作者: 黄呵呵    时间: 2019-11-5 19:53
楼主,远程不需要租用云服务器吗
作者: pcbboy    时间: 2019-11-29 08:49
还能用吗?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1