找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

帖子
查看: 5879|回復(fù): 10
打印 上一主題 下一主題
收起左側(cè)

溫濕度wifi手機(jī)控制89c52單片機(jī)芯片 含e4a源碼

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:396487 發(fā)表于 2018-10-21 22:29 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式



WIFI模塊如何傳送數(shù)據(jù)說明
用電腦串田口發(fā)送命令。來驗(yàn)證模塊與手機(jī)通信方法(波特率9600,每條命令后必須加換行回車符,命令一條一條發(fā)):

AT

AT+CWMODE=2

AT+CWSAP="ESP8266_001","12345678",11,4

AT+CIPMUX=1

AT+CIPSERVER=1,5000

AT+CIPSTO=0

發(fā)完以上命令后,打開手機(jī)WIFI,找到"ESP8266_001"這個(gè)WIFI名,連接,密碼:12345678

之后,再打開APP,點(diǎn)連接,用電腦串田口發(fā)送下面命令。就實(shí)現(xiàn)WIFI模塊傳送數(shù)據(jù)了。

AT+CIPSEND=0,7

T121210


電腦發(fā)送命令:
AT+CWMODE=2
AT+CWSAP="wifi_yuan","123456789",11,4
AT+CIPMUX=1
AT+CIPSERVER=1,5000
AT+CIPSTO=0
AT+CIPSEND=0,28 用這條命令就可以傳數(shù)據(jù)了

單片機(jī)源程序:
  1. #include "DHT11.h"
  2. #include <stdio.h>
  3. #include "string.h"
  4. extern unsigned char  F16T,F16RH;                //溫濕度數(shù)據(jù)
  5. sbit LED1=P2^0;
  6. sbit LED2=P2^3;
  7. sbit LED3=P2^6;
  8. #define uchar unsigned char
  9. #define uint unsigned int
  10. unsigned char idata Rxbuff[40],Rxnum,SF16T,SF16RH;
  11. unsigned char        Recwifi_data[5],led[2],n,x;
  12. char *strx=0;
  13. char clinetid;//連接ID
  14. unsigned char getflag;//獲取標(biāo)志
  15. void Get_Clinet(void);
  16. void InitUART(void)                         //這是串口的基本配置,配置他的波特率是9600.這些參數(shù)都是標(biāo)準(zhǔn)的。
  17. {
  18.     TMOD = 0x20;
  19.     SCON = 0x50;
  20.     TH1 = 0xFD;
  21.     TL1 = TH1;
  22.     PCON = 0x00;
  23.     EA = 1;
  24.     ES = 1;
  25.     TR1 = 1;
  26. }

  27. /******************************************************************************/
  28. void delayms(unsigned int x)
  29. {
  30.         unsigned int i;
  31.         while(x--)
  32.                 for(i=125;i>0;i--);
  33. }
  34. /*
  35. * UART 發(fā)送一字節(jié)
  36. */
  37. void UART_send_byte(char dat)
  38. {
  39.         SBUF = dat;                                        //發(fā)送
  40.         while (TI == 0);                        //等待發(fā)送完畢
  41.         TI = 0;                                                //清發(fā)送完畢中斷請(qǐng)求標(biāo)志位
  42. }

  43. /*
  44. * UART 發(fā)送字符串
  45. */
  46. void Send_Str(unsigned char *buf)
  47. {
  48.         while (*buf != '\0')
  49.         {
  50.                 UART_send_byte(*buf++);
  51.         }
  52. }

  53. void ESP8266_SERVER(void)//建立服務(wù)器
  54. {
  55.         Send_Str("AT\r\n");
  56.         delayms(500);
  57.         Send_Str("ATE0\r\n");
  58.         delayms(500);
  59.         Send_Str("AT+CWMODE=2\r\n");          //服務(wù)器搭建在WIFI模塊上
  60.         delayms(500);
  61.            Send_Str("AT+CWSAP=\"wifi\",\"12345678\",5,3\r\n");          //設(shè)置顯示名稱:wifi,密碼:12345678
  62.         delayms(500);
  63.         Send_Str("AT+CIPMUX=1\r\n");//啟動(dòng)多連接,建立服務(wù)器都需要配置
  64.         delayms(500);        
  65.         Send_Str("AT+CIPSERVER=1,5000\r\n");//建立服務(wù)器
  66.         delayms(500);        
  67.         Send_Str("AT+CIPSTO=0\r\n");

  68. }

  69. void Send_DATA(uchar *buffer)
  70. {
  71.     Send_Str("AT+CIPSEND=0,11\r\n");
  72.         delayms(10);
  73.     Send_Str(buffer);//發(fā)送數(shù)據(jù)
  74.         delayms(1000);
  75.         if((Rxbuff[0]=='1')&&(Rxbuff[1]=='1'))//關(guān)燈
  76.         {
  77.                 LED1=1;
  78.                 x=1;
  79.         }
  80.         if((Rxbuff[0]=='1')&&(Rxbuff[1]=='0'))//開燈
  81.         {
  82.                 LED1=0;
  83.                 x=0;
  84.         }
  85.         if(x==0)
  86.         {
  87.          if(F16T>=SF16T)
  88.                  LED2=0;
  89.                  else LED2=1;
  90.                  if(F16RH>=SF16RH)
  91.                  LED3=0;
  92.                  else LED3=1;
  93.         }
  94.         else
  95.         {
  96.                 if((Rxbuff[0]=='2')&&(Rxbuff[1]=='1'))        //關(guān)燈
  97.                         LED2=1;
  98.                  if((Rxbuff[0]=='2')&&(Rxbuff[1]=='0'))//開燈
  99.                         LED2=0 ;
  100.                 if((Rxbuff[0]=='3')&&(Rxbuff[1]=='1'))        //關(guān)燈
  101.                         LED3=1;
  102.                  if((Rxbuff[0]=='3')&&(Rxbuff[1]=='0'))//開燈
  103.                         LED3=0 ;
  104.         }
  105.         if((Rxbuff[0]=='5')&&(Rxbuff[1]=='1'))        //加溫度定值
  106.         {
  107.                 SF16T++;
  108.             if(SF16T>50)
  109.         SF16T=50;
  110.                 Rxbuff[1]=9;
  111.         }
  112.          if((Rxbuff[0]=='5')&&(Rxbuff[1]=='0'))//減溫度定值
  113.         {
  114.                 SF16T--;
  115.             if(SF16T<1)
  116.         SF16T=1;
  117.                 Rxbuff[1]=9;
  118.         }
  119.         if((Rxbuff[0]=='6')&&(Rxbuff[1]=='1'))        //加濕度定值
  120.         {
  121.                 SF16RH++;
  122.             if(SF16RH>90)
  123.         SF16RH=90;
  124.                 Rxbuff[1]=9;
  125.         }
  126.          if((Rxbuff[0]=='6')&&(Rxbuff[1]=='0'))//減濕度定值
  127.         {
  128.                 SF16RH--;
  129.             if(SF16RH<20)
  130.         SF16RH=20;
  131.                 Rxbuff[1]=9;
  132.         }


  133. }
  134. void main()
  135. {
  136.           unsigned char   Tx_Buf[12];
  137.           unsigned char LEDstatus;//燈的狀態(tài)
  138.         delayms(500);
  139.         delayms(1000);          //延時(shí)一段時(shí)間,讓W(xué)IFI模塊穩(wěn)定
  140.          InitUART();                        //初始化串口
  141.     ESP8266_SERVER();        //初始化ESP8266
  142.         SF16T=25;
  143.         SF16RH=50;
  144.         x=1;
  145.          while(1)        
  146.         {         
  147.                   getDHT11(); //獲取溫濕度值
  148.                   Tx_Buf[0]=F16T/10%10+0x30;                 //將溫濕度數(shù)據(jù)送往發(fā)送數(shù)組,送給模塊讓手機(jī)APP顯示
  149.                   Tx_Buf[1]=F16T%10+0x30;               
  150.                   Tx_Buf[2]=F16RH/10%10+0x30;
  151.                   Tx_Buf[3]=F16RH%10+0x30;
  152.                   Tx_Buf[4]=SF16T/10%10+0x30;                 //將溫濕度數(shù)據(jù)送往發(fā)送數(shù)組,送給模塊讓手機(jī)APP顯示
  153.                   Tx_Buf[5]=SF16T%10+0x30;               
  154.                   Tx_Buf[6]=SF16RH/10%10+0x30;
  155.                   Tx_Buf[7]=SF16RH%10+0x30;
  156.                 LEDstatus=LED1;
  157.                    Tx_Buf[8]=LEDstatus+0x30;//發(fā)送燈的狀態(tài)
  158.                 LEDstatus=LED2;
  159.                 Tx_Buf[9]=LEDstatus+0x30;
  160.                 LEDstatus=LED3;
  161.                 Tx_Buf[10]=LEDstatus+0x30;
  162.                    Send_DATA(Tx_Buf)        ;//發(fā)送數(shù)據(jù)
  163.         }
  164. }

  165. /*****************串口接收中斷函數(shù),接收數(shù)據(jù)*********************/
  166. void UARTInterrupt(void) interrupt 4
  167. {        
  168.         if(RI)
  169.     {
  170.                 ES=0;
  171.         RI = 0;
  172.               Rxbuff[Rxnum]=SBUF;
  173.                 if(Rxbuff[Rxnum]=='=')
  174.                 {
  175.                         Rxnum=0;
  176.                 }
  177.             else
  178.                 {
  179.                         Rxnum++;
  180.                         if(Rxnum>2)
  181.                         {
  182.                                 Rxnum=2;
  183.                         }
  184.                 }
  185.                 ES=1;
  186.     }         
  187. }
復(fù)制代碼

全部資料51hei下載地址:
A075_WIFI_溫度濕度控制.rar (990.49 KB, 下載次數(shù): 271)

評(píng)分

參與人數(shù) 1黑幣 +9 收起 理由
zqy181818 + 9 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:396487 發(fā)表于 2018-10-21 22:32 | 只看該作者
本人花錢買的,免費(fèi)提供給大了。
回復(fù)

使用道具 舉報(bào)

板凳
ID:396487 發(fā)表于 2018-10-22 15:00 來自觸屏版 | 只看該作者
admin 發(fā)表于 2018-10-22 02:21
插圖所示的軟件沒有?

哪個(gè)是是e4a,app編程用的,大家需要我上傳便是
回復(fù)

使用道具 舉報(bào)

地板
ID:458665 發(fā)表于 2018-12-30 17:49 | 只看該作者
請(qǐng)問有e4a編程APP的那個(gè)源碼嗎?
回復(fù)

使用道具 舉報(bào)

5#
ID:358930 發(fā)表于 2019-1-4 22:43 來自觸屏版 | 只看該作者
mykt2012 發(fā)表于 2018-10-22 15:00
哪個(gè)是是e4a,app編程用的,大家需要我上傳便是

大家都要上傳唄
回復(fù)

使用道具 舉報(bào)

6#
ID:63317 發(fā)表于 2019-1-5 09:13 | 只看該作者
有E4A源碼 很好
回復(fù)

使用道具 舉報(bào)

7#
ID:463537 發(fā)表于 2019-1-7 17:29 | 只看該作者
真的太六了,我試一下
回復(fù)

使用道具 舉報(bào)

8#
ID:525913 發(fā)表于 2019-5-2 12:45 來自觸屏版 | 只看該作者
問一下樓主這個(gè)在哪買的
回復(fù)

使用道具 舉報(bào)

9#
ID:739435 發(fā)表于 2020-4-27 18:26 | 只看該作者
請(qǐng)問樓主有實(shí)物圖嗎?
回復(fù)

使用道具 舉報(bào)

10#
ID:783912 發(fā)表于 2022-3-27 13:32 來自觸屏版 | 只看該作者
文件有e4a源碼嗎?
回復(fù)

使用道具 舉報(bào)

11#
ID:537276 發(fā)表于 2023-3-21 16:24 | 只看該作者
請(qǐng)問樓主有實(shí)物圖嗎?
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表