当前位置: 首页 > news >正文

网站开发高级工程师国内付费代理ip哪个好

网站开发高级工程师,国内付费代理ip哪个好,wordpress可以做企业网站,网站平台建设及运营推广策划方案HC-08蓝牙模块: 蓝牙 -- 最好用的 串口透传 模块 透传 -- 透明传送#xff0c;指的是在数据传输的过程中#xff0c;通过无线的方式这组数据不发生任何形式的改变#xff0c; 仿佛传输过程是透明的#xff0c;同时保证传输质量#xff0c;最终原封不动的传送到接收者手… HC-08蓝牙模块:  蓝牙 -- 最好用的 串口透传 模块 透传 -- 透明传送指的是在数据传输的过程中通过无线的方式这组数据不发生任何形式的改变 仿佛传输过程是透明的同时保证传输质量最终原封不动的传送到接收者手里 只要通过串口编程 获得数据即可 波特率: 9600 MHZ // 学会串口 就能使用蓝牙模块   -- 就能通过蓝牙 模块进行交互-- 比如通过蓝牙在串口上发送指令让单片机执行 通过USB转TTL 来插入电脑就可以实现手机和电脑的串口数据传输 AT命令修改蓝牙名称:  AT NAME 新的名字 wifi模块: 基本概念 通过wifi模块 让 51单片机上网: 使用的wifi模块 -- ESP-8266  -- 高度基础的wifi MCU -- 支持RTOS(实时系统) 和 wifi协议栈 基于AT指令设计: AT指令 --是从终端设备 or 数据终端设备 or 数据电路终端设备发送的 每条AT命令行只能包含一条AT指令对于由终端设备主动向PC段报告的URC or response响应也要求一行最多有一个 不允许上限的一行有多条指令 or 响应 -- AT指令以回车作为结尾 响应 or 上报 以回车 换行作为结尾  ESP-8266   -- 一般 默认波特率 -- 115200 因为都是AT指令去驱动so玩wifi模块都是 通过 串口调试助手 接下来玩以下 AT指令: 通过命令 配置 9600 的波特率: AT UART 9600,8,1,0,0 //8 个 数据位 1 个停止位 常用AT指令: 1.设置3种工作模式:  ATCWMODE3 //1.是station(设备模式)  2.AP路由模式 3.双模 2. 以设备模式接入家中的路由器配置: ATCWJAPCU_a2ry,c5m66yaa   // 第一个“”填wifi名字第二个“”填 wifi密码 //连接成功 弹出: WIFI CONNECTED WIFI GOT IP 3.查询IP地址: ATCIFSR CIFSR:APIP,192.168.4.1 CIFSR:APMAC,ce:50:e3:77:dd:4e CIFSR:STAIP,192.168.1.17 CIFSR:STAMAC,cc:50:e3:77:dd:4e 4.接收发送数据 1.先通过网络调试助手创建服务器 2.在通过AT指令连接服务器  ATCIPSTARTTCP,192.168.1.9,8880 //连接成功: CONNECT OK 3. 发送数据: ATCIPSEND4 //设置即将发送数据的长度--4个字节 发出上面AT指令后出现   就可以在发送框里面传输 后面传输(注意不能添加新行) --------------------------------------- 这种模式效率太低:  每次都 ATCIPSEND4  5.透传: 我们就可以设置为透传: 1. ATCIPMODE1 //开启透传模式 2. ATCIPSEND    //带回车 -- 开始发送接收数据 3. 随便怎么 发送接收 4.退出透传模式 发送 不带换新行 程序 代码实现 51 和wifi模块的连接 code 关键字 -- 单独空间存储数据 #includereg52.h #includestring.h #define SIZE 12 sfr AUXR 0x8E; sbit D5 P3^7; char cmd[SIZE]; code char LJWL[]ATCWJAP\CU_a2ry\,\c5m66yaa\\r\n;  //通过\r\n输出新行 -- 连接网络 code char LJFWQ[] ATCIPSTART\TCP\,\192.168.1.9\,8880\r\n; // 链接服务器 char TCMS[]ATCIPMODE1\r\n; //开启透传模式 char SJCS[]ATCIPSEND\r\n; //数据接收 void Delay1000ms()        //11.0592MHz {     unsigned char i, j, k;          i 43;     j 6;     k 203;     do     {         do         {             while (--k);         } while (--j);     } while (--i); } void UartInit(void)        //9600bps11.0592MHz {     AUXR0x01; //减少定时器辐射 -- 抗干扰     SCON 0x50; //配置 串口口工作方式1REN 使能接收     //不配 PCON  -- 不设置倍数关系     //配置定时器1为 8位自动重装     TMOD 0xF0; //高位清零   TMOD |0x20;  //00 10  -- 配置为定时器1为: 1 0 模式 -- 8位自动重装        //定义初值   TL10xFD;     TH10xFD; // 9600 波特率的初值   TR1 1; // 定时器 -- 启动          EA 1; // 开启总中断     ES1;  // 开启串口中断      } void sendByte(char a) { SBUF a; while(!TI); TI0;     } void sendString(char *str) {  while(*str!\0)  {  sendByte(*str);  str;  }  } void main() {          D51;     //配置C51串口的 通信方式:     UartInit(); while(1){    //Delay1000ms();   //往发送缓冲区 写入数据-- 就完成数据的发送   //sendString(mengxianggiegie\r\n);          sendString(LJWL); // 链接网络 Delay1000ms();     Delay1000ms();     Delay1000ms();     Delay1000ms();      Delay1000ms();   sendString(LJFWQ); //连接服务器      Delay1000ms();     Delay1000ms();     Delay1000ms();     Delay1000ms();      Delay1000ms();     sendString(TCMS); //开启透传      Delay1000ms();     Delay1000ms();     Delay1000ms();     Delay1000ms();      Delay1000ms();     sendString(SJCS); //接收数据      Delay1000ms();     Delay1000ms();     Delay1000ms();     Delay1000ms();      Delay1000ms();  } } void uartHandler() interrupt 4 {     static i 0;  if(RI) // 中断处理函数中对于接收中断的响应  {     RI0; //清楚接收中断标志位       cmd[i] SBUF;       i;       if(iSIZE)              i0;           if(strstr(cmd,en)){//收到 o-pen 开灯      D50;          i0;              memset(cmd,\0,SIZE);     }         else if(strstr(cmd,se)){//收到c-lose 关灯      D51;          i0;              memset(cmd,\0,SIZE);     }               }         } 优化 上面代码 通过TCP 通信点灯:  #includereg52.h #includestring.h #define SIZE 12 sfr AUXR 0x8E; sbit D5 P3^7; char cmd[SIZE]; code char LJWL[]ATCWJAP\CU_a2ry\,\c5m66yaa\\r\n;  //通过\r\n输出新行 -- 连接网络 code char LJFWQ[] ATCIPSTART\TCP\,\192.168.1.9\,8880\r\n; // 链接服务器 char TCMS[]ATCIPMODE1\r\n; //开启透传模式 char SJCS[]ATCIPSEND\r\n; //数据接收 void Delay1000ms()        //11.0592MHz {     unsigned char i, j, k;          i 43;     j 6;     k 203;     do     {         do         {             while (--k);         } while (--j);     } while (--i); } void UartInit(void)        //9600bps11.0592MHz {     AUXR0x01; //减少定时器辐射 -- 抗干扰     SCON 0x50; //配置 串口口工作方式1REN 使能接收     //不配 PCON  -- 不设置倍数关系     //配置定时器1为 8位自动重装     TMOD 0xF0; //高位清零   TMOD |0x20;  //00 10  -- 配置为定时器1为: 1 0 模式 -- 8位自动重装        //定义初值   TL10xFD;     TH10xFD; // 9600 波特率的初值   TR1 1; // 定时器 -- 启动          EA 1; // 开启总中断     ES1;  // 开启串口中断      } void sendByte(char a) { SBUF a; while(!TI); TI0;     } void sendString(char *str) {  while(*str!\0)  {  sendByte(*str);  str;  }  } void main() {     int mark 0;     D51;     //配置C51串口的 通信方式:     UartInit(); while(1){    //Delay1000ms();   //往发送缓冲区 写入数据-- 就完成数据的发送   //sendString(mengxianggiegie\r\n);     if(!mark){ //第一次打开链接服务器 和网络     sendString(LJWL); // 链接网络 Delay1000ms();     Delay1000ms();     Delay1000ms();     Delay1000ms();   sendString(LJFWQ); //连接服务器      Delay1000ms();      Delay1000ms();      Delay1000ms();              sendString(TCMS); //开启透传      Delay1000ms();      Delay1000ms();      Delay1000ms();              sendString(SJCS); //接收数据      Delay1000ms();      Delay1000ms();          Delay1000ms();               mark1;   }     else{    sendString(mengxianggiegie\r\n);      Delay1000ms();   }  } } void uartHandler() interrupt 4 {     static i 0;  if(RI) // 中断处理函数中对于接收中断的响应  {     RI0; //清楚接收中断标志位       cmd[0] SBUF;                 if(cmd[0] 1){//收到 o-pen 开灯      D50;          i0;                  }         else if(cmd[0] 0 ){//收到c-lose 关灯      D51;          i0;                  }               }         } 上方代码优化 -- 读取返回 结果以便 观察进度 #includereg52.h #includestring.h #define SIZE 12 sfr AUXR 0x8E; sbit D5 P3^7; sbit D6 P3^6; char buffer[SIZE]; code char LJWL[]ATCWJAP\CU_a2ry\,\c5m66yaa\\r\n;  //通过\r\n输出新行 -- 连接网络 code char LJFWQ[] ATCIPSTART\TCP\,\192.168.1.9\,8880\r\n; // 链接服务器 char TCMS[]ATCIPMODE1\r\n; //开启透传模式 char SJCS[]ATCIPSEND\r\n; //数据接收 char AT_OK_Flag 0;  char AT_Connect_Net_Flag 0; void Delay1000ms()        //11.0592MHz {     unsigned char i, j, k;          i 43;     j 6;     k 203;     do     {         do         {             while (--k);         } while (--j);     } while (--i); } void UartInit(void)        //9600bps11.0592MHz {     AUXR0x01; //减少定时器辐射 -- 抗干扰     SCON 0x50; //配置 串口口工作方式1REN 使能接收     //不配 PCON  -- 不设置倍数关系     //配置定时器1为 8位自动重装     TMOD 0xF0; //高位清零   TMOD |0x20;  //00 10  -- 配置为定时器1为: 1 0 模式 -- 8位自动重装        //定义初值   TL10xFD;     TH10xFD; // 9600 波特率的初值   TR1 1; // 定时器 -- 启动          EA 1; // 开启总中断     ES1;  // 开启串口中断      } void sendByte(char a) { SBUF a; while(!TI); TI0;     } void sendString(char *str) {  while(*str!\0)  {  sendByte(*str);  str;  }  } void main() {     int mark 0;     D51; //状态灯一开始是熄灭状态     //配置C51串口的 通信方式:      UartInit();      Delay1000ms(); //给esp wifi 模块上电时间          sendString(LJWL); // 链接网络 Delay1000ms();   while(!AT_Connect_Net_Flag); // 等到有效才去执行下面的代码     while(!AT_OK_Flag);     AT_OK_Flag0;        sendString(LJFWQ); //连接服务器     while(!AT_OK_Flag);     AT_OK_Flag0;  //用完清零 方便下次做判断          sendString(TCMS); //开启透传     while(!AT_OK_Flag);     AT_OK_Flag0;          sendString(SJCS); //接收数据     while(!AT_OK_Flag);          if(AT_Connect_Net_Flag){     D50; // 通过灯判断是否联网成功  -- 点亮表示成功    }      if(AT_OK_Flag){    D60; //代表连接服务器并且打开 透传 成功    }      while(1){    Delay1000ms();   //往发送缓冲区 写入数据-- 就完成数据的发送   //sendString(mengxianggiegie\r\n);    sendString(mengxianggiegie\r\n);     } } void uartHandler() interrupt 4 {     static i 0;     char tmp;       if(RI) // 中断处理函数中对于接收中断的响应  {     RI0; //清楚接收中断标志位             tmp SBUF;       if(tmp W || tmp O|| tmp L ){ //匹配到W开头的时候把下标定义为0方便后面的[0] [5]的位置比较      i0;     }       buffer[i]tmp;                if(buffer[0]W buffer[5]G){//联网成功 WIFI GOT       AT_Connect_Net_Flag1; //标志修改为联网状态          memset(buffer,\0,SIZE);     }         if(buffer[0]O buffer[1]K){//联网成功 WIFI GOT       AT_OK_Flag1;          memset(buffer,\0,SIZE);     }         /*           if(buffer[0]F buffer[1]A){//联网失败 FAIL       for(i0;i3;i){      D50;          Delay1000ms();          D51;          Delay1000ms();     }                  sendString(LJWL);          memset(buffer,\0,SIZE);     }         */              if(buffer[0] L buffer[2] 1){//收到 o-pen 开灯      D50;          memset(buffer,\0,SIZE);     }         else if(buffer[0] L buffer[2] 0){//收到c-lose 关灯      D51;          memset(buffer,\0,SIZE);              }         if(i12)             i0;  }         } 注释部分为进一步优化没能连接成功就 ATRET -- 重启 or 重新连接
http://www.dnsts.com.cn/news/189154.html

相关文章:

  • 网站管理是什么工作wordpress数据库优化
  • wordpress安装后查看站点失败照明设计师培训
  • 哪个网站可以做临时工吉林省建设集团网站
  • 重庆seo整站优化外包服务国外哪个网站专做展厅
  • 网站网站怎么优化关键词排名办公室装修设计效果
  • 中国电力建设企业协会网站江苏易销 网站建设
  • 云服务器 可以做网站吗网上商城系统概述
  • c2c模式的网站有哪些公司网络规划与设计
  • 做片头片尾比较好的网站线上WordPress移到本地
  • 网站建设中山优化上海网站公司哪家好
  • 做学校和企业对接的网站广西送变电建设公司铁塔厂网站
  • 应聘网站优化的简历怎么做葫芦岛做网站公司
  • 专业的个人网站建设湖北省和建设厅网站
  • 站长平台社区做啊网站
  • 公司做网站做什么类型的网站好微信开放平台 网站开发
  • 重庆网站开发 公司西安网站建设个人
  • 响应式购物网站模板哈尔滨百度搜索排名优化
  • 做淘客网站怎么phpcms内容管理系统
  • 网站footer怎么做纯手工seo公司
  • 网站后台与前台山西太原建站哪家强
  • 网站添加在线qq聊天app制作软件公司
  • 站酷设计网站官网入wordpress必装
  • 莱州网站制作网站开发能做什么
  • 公司网站如何被收录删除wordpress 后台
  • python做网站项目桂林象鼻山附近的酒店
  • 创建电子商务网站的步骤太仓网站开发公司
  • 网站焦点图制作教程开发安卓软件需要学什么
  • 网站建设公司平台朝阳网络科技有限公司
  • iis 设置此网站的访问权限中国互联网金融协会
  • 汕头网站制作全过程wordpress主题商城主题