乐鑫esp8266应用详解esp8266可以做什么? 点击:897 | 回复:0



动能世纪-黄晓敏

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:7帖 | 1回
  • 年度积分:0
  • 历史总积分:0
  • 注册:2019年4月28日
发表于:2019-04-28 14:16:58
楼主

一、概述

ESP8266是由乐鑫公司出品的一款物联网芯片,因为价格较低,性能稳定等收到很大关注。该芯片可工作于三种种模式下,分别是:AP模式,station模式以及混合模式,通过常用的AT指令进行控制。自芯片面世以来发行过多种型号。单单我用过的就有ESP8266-01,ESP8266-12F,ESP8266-12E这三种。当然,我没接触到过的型号还有很多。在使用这三种芯片时均是使其工作在AP模式下。所以,就拿这三个型号说一下ESP8266在AP模式下的配置吧(AP模式下通信协议为TCP,也就是说AP模式下的ESP8266相当于一个TCP服务器)

二、ESP8266 应用:

  智能电源插头

  家庭自动化

  网状网络

  工业⽆无线控制

  婴儿监控器

  网络摄像机

  传感器网络

  可穿戴电子产品

  无线位置感知设备

  安全ID标签

  无线定位系统信号

三、ESP8266简单的串口应用:

  ESP8266共有两组UART接⼝,分别为:

  UART0:

  U0TXD: pin26(U0TXD)

  U0RXD: pin25(U0RXD)

  U0CTS: pin12(MTCK)

  U0RTS: pin13(MTDO)

  UART1:

  U1TXD: pin14(GPIO2)

  UART0作为数据通信接⼝口,UART1作为debug信息的打印。不过在最新发布的SDK1.0.1中,debug信息的默认打印也改到通过UART0接口了,可以直接利用os_printf()进行信息输出。当你想通过UART1输出debug信息时,通过以下接⼝可以设置从uart0或者uart1口输出打印。void UART_SetPrintPort(uint8 uart_no);

  由于ESP8266的开发环境没有在线调试功能,所以利用os_printf()进行信息输出在程序调试过程中尤为重要。

  串口发送举例

  www.tansoo.cn

  */

  #include 《ets_sys.h》

  #include 《osapi.h》

  #include 《os_type.h》

  #include 《gpio.h》

  #include “driver/uart.h”

  //定义一个时间定时器变量hello_TImer

  LOCAL os_TImer_t hello_TImer;

  LOCAL void ICACHE_FLASH_ATTR hello_cb(void *arg)

  {

  os_printf(“Hello World!\r\n”);

  }

  void user_init(void)

  {

  // 设置 UART0与UART1的通讯速率

  uart_init(BIT_RATE_115200, BIT_RATE_115200);

  //UART_SetPrintPort(UART1); // SDK V1.0.1 有效;

  // 取消(停止)定时器hello_TImer

  os_timer_disarm(&hello_timer);

  // 将时间定时器变量hello_timer关联到一个函数hello_cb(),这个函数会在到达定时时间时执行一次,

  os_timer_setfn(&hello_timer, (os_timer_func_t *)hello_cb, (void *)0);

  // 设置时间定时器变量hello_timer的时间周期为3秒钏,第三个参数为0时,hello_cb()只会执行一次,当为1时,hello_cb()会循环执行。

  os_timer_arm(&hello_timer, 3000, 1);



热门招聘
相关主题

官方公众号

智造工程师