查看: 79353|回复: 684
打印 上一主题 下一主题

Arduino 通过ESP8266与手机通讯调试笔记

? [复制链接]
  • TA的每日心情
    开心
    2016-5-12 09:23
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    跳转到指定楼层
    楼主
    发表于 2016-4-16 11:16 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 圣刚 于 2016-5-30 16:49 编辑

    ESP8266-14
    当初从网店买配件,因为wifi比蓝牙传输距离更远,所以选择了ESP8266作为开发环境,但当时听说ESP8266-14更简单,所以买了这款,实际上应该购买ESP8266-12F,这个可以直接用Arduino IDE开发。不过既然买了,还是尽可能的利用起来。

    ESP8266-14简介
    ESP8266-14是一款低成本WIFI-MCU通讯/控制模块,内置ESP8266 WIFI通讯ICSTM8003
    片机,拥有业内极富竞争力的封装尺寸和超低能耗技术,可广泛应用于智能家居和物联网网领域,??用于将用户的物理设备连接到Wi-Fi??无线网络上,进行互联网或局域网通信,实现联网控制功能。
    ??该模块内置了一个功能强大的STM8003的芯片,所有管脚全部接出来,其串口与ESP8266的串口相连,用户可以编写STM8程序,通过AT指令控制ESP8266的实现绝大部分智能灯家居和WIFI物联网功能。

    ESP8266-14内置ESP8266 WIFI通讯ICSTM8003单片机,可以绕过单片机,直接通过串口使用ESP8266-14内置的8266模块,只是不能利用它的GPIO来作其他事情了,只能作为一个单纯的串口WiFi使用,不过对于目前的应用场景,也差不多了。

    第一步调试,需要知道这模块从网上买来之后是否好用,那么一般需要用USB_TTL来接PC查看串口消息,不过Arduino可以使用软串口,不过更直接的,可以使用Arduino当作USB TTL来直连PC,是不是很方便呢?呵。大家可以参考这个贴子配置USB_TTL环境
    在进行USB_TTL上传的时候,不要把TX,RX插到板子上。以免失败。

    Esp8266引脚图


    按此接线方式,接入Arduino Mega(UNO).
    8266TX(PD6)<-> Arduino Tx0
    8266RX(PD5)<-> Arduino Rx0
    8266ESP_VDD<->Arduino 3.3V
    8266GND<->ArduinoGND
    Arduino VIN <->电池7.4V??(为确保供电充足,不然USB口接电脑供电不足)
    Arduino GND<->电池GND
    上面的插座是自己焊上去的,这个引脚不是标准的距离,比较费事,需要把引脚掰弯之后焊接。买回来的时候是没有的。
    之后,如果通过串口能获取到信息,则证明芯片是好的。可以进行下一步.

    这里可以手动下一些AT命令对ESP8266进行控制测试


    第二步 接线方式 与第一步的区别是,TX,RX要反着接,以便Arduino8266发串口命令。


    8266RX(PD5)<-> Arduino Tx1
    8266TX(PD6)<-> Arduino Rx1
    8266ESP_VDD<->Arduino 3.3V
    8266GND<->ArduinoGND
    Arduino VIN <->电池7.4V??(为确保供电充足,不然USB口接电脑供电不足)
    Arduino GND<->电池GND

    手机设置为便携热点(如果用8266作为热点,可能因为客户端没去连接它,而休眠,所以使用手机作为热点)



    手机上安装“网线调试助手”,安装成功之后,在 tcp server选项下,点击“配置”,弹出服务配置界面,默认5000端口,点击右边的“激活”,激活成功会显示手机的IP与端 口,则在手机上创建了一个服务,我手机的IP192.168.43.15000.

    通过Arduino8266发串口命令,使其连接手机:
    WIFISerial.begin(115200);
    ??delay(1000);
    ??WIFISerial.println("AT+RST");
    ??delay(6000);
    //??WIFISerial.println("AT+CIPMUX=1");
    //??delay(3000);
    //??WIFISerial.println("AT+CIPSESVER=1,1001");
    ??WIFISerial.println("AT+CIPSTART=\"TCP\",\"192.168.43.1\",5000");
    ??delay(2000);
    ??WIFISerial.println("AT+CIPMODE=0");//
    ??delay(2000);
    ??WIFISerial.println("AT+CIPSEND");//

    手机上会显示已有设备连接上了。


    连接好之后,输入LEFTOK 会收到Arduino 通过 8266传输回来的left.

    完整代码如下 :
    游客,如果您要查看本帖隐藏内容请回复
  • TA的每日心情
    开心
    2016-4-24 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    板凳
    发表于 2016-4-16 20:08 | 只看该作者
    赞 楼主好棒啊
  • TA的每日心情
    开心
    2016-6-4 08:36
  • 签到天数: 2 天

    [LV.1]初来乍到

    8#
    发表于 2016-4-19 09:02 | 只看该作者
    新手学习,请多多指教。。。

    该用户从未签到

    9#
    发表于 2016-4-19 11:52 | 只看该作者
    输入LEFTOK 会收到Arduino 通过 8266传输回来的left,这个有什么用?
  • TA的每日心情
    开心
    2016-5-12 09:23
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    10#
    ?楼主| 发表于 2016-4-19 11:53 | 只看该作者
    bruceli 发表于 2016-4-19 11:52
    输入LEFTOK 会收到Arduino 通过 8266传输回来的left,这个有什么用?

    这个证明Arduino收到左转信号,可以用来控制小车左转。或者做其他事情也可以。
    您需要登录后才可以回帖 登录 | 立即注册 ?

    本版积分规则

    热门推荐

    关于温湿度传感器在LCD显示上的问题
    关于温湿度传感器在LCD显
    我建立了一个程序,想要将dht11传感器得到的数据显示在LCD1602上,但是LCD显的都是乱
    【原创】全球最小口袋3D打印机mini one直播教程贴
    【原创】全球最小口袋3D打
    最近闲得蛋疼,没事搞个掌上3D打印机,先放效果图吧。 搞了半天,终于能正常打印,
    【Arduino】108种传感器模块系列实验(74)--- 4位LED数码管模块
    【Arduino】108种传感器模
    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是
    (开源)ESP8266改装小风扇,app远程控制+天猫精灵控制
    (开源)ESP8266改装小风
    材料准备 [*]USB风扇一个 [*]ESP8266一块 [*]3.3继电器一块 拆解风扇 第一次,没有
    基于机器视觉的智能分拣机械臂
    基于机器视觉的智能分拣机
    本作品是一个基于机器视觉的智能机械臂操作平台,其采用atmega32单片机作为主控制系统
    Copyright ???2015-2016??Arduino中文社区??Powered by?Discuz! ??( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表