找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2852|回复: 2
打印 上一主题 下一主题
收起左侧

51单片机与ESP8266源程序

[复制链接]
跳转到指定楼层
楼主
ID:188427 发表于 2017-4-11 13:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <AT89X51.H>
#include <stdio.h>
unsigned int a;
int b=1;
int c =1;
int d =1;
int e=1;
int f=0;
void main(void)  
{
unsigned char ldat;
    PCON |=0X80;  //是否波特率倍增
SCON=0x50;
TMOD=0X20;    //设置定时器1为模式2,做为波特率发生器
TL1=0xFF;    //57600波特率的初值,板子使用11.592M晶振,初值=256-12000000/32/12/2400
TH1=0xFF;    //
TI = 1;
TR1=1;     //启动波特率发生
   //设置串口方式2
   do{
for (a=0; a<50000; a++);
printf ("AT+CIPMUX=1\n");
  do{
if(RI){    //查询是否有数据接收
   ldat=SBUF;  //数据暂存于变量中
   RI=0;
    if (ldat=='K')
    {b=0 ;
    d=0;}
      c++;
   if (c==1000)
   {c=1;
   d=0;}}
  }while (d);  
}while(b) ;
b=1;
c =1;
d =1;

     do{
for (a=0; a<50000; a++);
printf ("AT+CIPSERVER=1,7671\n");
  do{
if(RI){    //查询是否有数据接收
   ldat=SBUF;  //数据暂存于变量中
   RI=0;
    if (ldat=='K')
    {b=0 ;
    d=0;}
      c++;
   if (c==1000)
   {c=1;
   d=0;}}
  }while (d);  
}while(b) ;  
b=1;
c =1;
d =1;


  while(1)
{
    if(RI){    //查询是否有数据接收
   ldat=SBUF;  //数据暂存于变量中
   RI=0;   //重新清0等待接收


//命令接收开始
   if (ldat=='}')
   { char k[50] ;




       do{

    if(RI){    //查询是否有数据接收
   ldat=SBUF;  //数据暂存于变量中
   RI=0;   //重新清0等待接收
       k[f]=ldat;
f++ ;
if(ldat==0x0A){e=0;}
  }
    } while (e) ;
     printf("%s\n", k);
  f=0;
  e=1;
   for (a=0; a<50; a++){
   k[a]=0;

   }


}
//命令结束


  }
}

}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:185329 发表于 2017-4-12 23:15 | 只看该作者
这个程序应该不是你原创的吧...我见过一个一模一样的...连重复的那一部分都一样
回复

使用道具 举报

板凳
ID:243748 发表于 2017-12-6 18:35 来自手机 | 只看该作者
学习中
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表