查看: 6749|回复: 6

app inventor 2牵手美科mcookie之esp8266

[复制链接]
  • TA的每日心情
    开心
    2019-8-24 21:42
  • 签到天数: 101 天

    [LV.6]常住居民II

    发表于 2016-11-1 23:11 | 显示全部楼层 |阅读模式
    本帖最后由 topdog 于 2018-9-6 01:41 编辑

    • Microduino mcookie 201和301套装都含有wifi模块,这个wifi模块是ESP8266构成的,官方提供的是4m flash的版本,刷入的是AT命令固件。就此固件而言,可以使用AT命令来实现,单连接 TCP Client ,udp传输,透传 ,多连接 TCP Server 等丰富的链接方式,实现数据的实时传输,完成智能化控制的需求。本节就结合app inventor 2来制作一个app,来控制led的开关。全部文件已经上传分享地址为:http://pan.baidu.com/s/1jH8cdZg

      材料准备coreusb,wifi,hub,led,一个笔记本电脑,一部安卓系统手机。大家把文件下载好,首先解压。Microduino_esp8266_control_LED.ino用arduino ide烧写入coreusb,烧写前,把程序里面的username,password改成你家的wifi用户名和密码。led接第13脚。程序用at命令来写的,这样可以使大家比较清楚的看到单片机的运行步骤。这个程序的目的是设置esp8266为多连接 TCP Server(服务端),手机作为Client(客户端)发送命令,esp8266接受到信号后,传递给coreusb再解析出来,从而实现led的开关。 下面解释一下程序的要点。
      1,设置esp8266为多连接 TCP Server(服务端)
      (1)AT+CWMODE=3    ESP8266 仅支持建⽴一个 TCP 服务器,且必须使能多连接,即可连接多个 TCP client。 本例 ESP8266 作为 station,接入家庭wifi网络,可在连接路由后,建立服务器。
      (2)AT+CWJAP=username,password  链接到你的wifi路由器
      (3)AT+RST  重启一下。
      (4)AT+CIPMUX=1 使能多连接。
      (5)  AT+CIPSERVER=1,8089  建⽴TCP server(服务器),端口为8089。如果不指定端口,默认值为333。
      (6)  AT+CIFSR   查询设备 IP 地址。调试的时候大家要看下路由器分配给esp8266的ip地址,后面在app inventor 2里面要填写的。调试结束Serial的都可以注释掉。
      (7)AT+CIPCLOSE=0   断开 TCP 连接。
        (8)使用String的state.endsWith()函数来解析手机发送的字符串。
        在手机上安装好MIT AI2 伴侣apk文件,在电脑上安装好谷歌浏览器(Google Chrome)。链接http://app.gzjkw.net/login/?locale=zh_CN  服务器在线编辑app,把我的Microduino_esp8266_control_LED.aia文件导入。
      esp8266-2.JPG


      在TextBox1的文字框输入你的esp8266的ip地址和端口,形式如10.0.0.9:8089,web组件发送GET命令给esp8266,那么esp8266收到后再传给coreusb解析,串口的效果如下:

      esp8266.JPG
      +IPD, 0, 170: xxxxxxxxxx    0表示网络连接 ID (0~4),用于多连接的情况 。收到170 bytes,  数据为xxxxxxxxxx 。 我用的是小米5,安卓6.0.1版本。

           选择编译apk并且显示二维码,这时电脑会出现进程条,结束后会出现一个二维码。打开手机MIT AI2 Companion,选择scan qr code,扫码,在上方的对话框里面会,出现apk的地址,保证手机和电脑在同一个wifi网络里面。点击connect with code,此时,会提醒你是否安装。安装好后,就能够led开关的控制,不过不能按得太急要间隔5秒呦。

         (完)



             



    打赏作者鼓励一下!
  • TA的每日心情
    擦汗
    2017-8-16 16:44
  • 签到天数: 229 天

    [LV.7]常住居民III

    发表于 2016-11-2 11:31 | 显示全部楼层
    谢谢分享      
  • TA的每日心情
    开心
    2019-8-24 21:42
  • 签到天数: 101 天

    [LV.6]常住居民II

     楼主| 发表于 2016-11-4 00:04 | 显示全部楼层

    谢谢关注,一起学习一起进步。
    打赏作者鼓励一下!
  • TA的每日心情
    开心
    2016-12-21 08:14
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2016-12-21 08:15 | 显示全部楼层
    太帅了,谢谢分享!正想找这方面的aia文件学习
  • TA的每日心情
    开心
    2019-8-24 21:42
  • 签到天数: 101 天

    [LV.6]常住居民II

     楼主| 发表于 2016-12-24 19:58 | 显示全部楼层

    谢谢指导,一起进步。
    打赏作者鼓励一下!
  • TA的每日心情
    开心
    2019-8-24 21:42
  • 签到天数: 101 天

    [LV.6]常住居民II

     楼主| 发表于 2017-1-30 19:18 | 显示全部楼层

    谢谢指导,一起进步。
    打赏作者鼓励一下!
    您需要登录后才可以回帖 登录 | 立即注册  

    本版积分规则

    热门推荐

    ArduinoJason6教程由ArduinoJson作者Benoit亲自出马一对一教学
    ArduinoJason6教程由Ardui
    这几天我觉得社区教学好像缺了点什么,呃呃~我想一想好像是缺少了ArduinoJson6的教学
    Arduino+L298N小车实例教程
    Arduino+L298N小车实例教
    (第一次写教程,如有错漏,敬请拍砖)Arduino+L298N小车实例教程Arduino小车是一个非
    零知开源分享-蓝牙模块与手机APP通信
    零知开源分享-蓝牙模块与
    本篇文章中将讲解蓝牙模块与安卓手机APP进行通信。1、说明MCU:零知开发板-标准板模
    DHT库无法被找到
    DHT库无法被找到
    今天在安装了DHT库之后在编译时却显示无法找到库,请问我是在哪里安装出错了,谢谢大
    (可远程)ESP8266读DHT11温湿度,APP inventor制作app实时显示
    (可远程)ESP8266读DHT11
    原理讲解 原理简述:利用发布订阅模式。第一步,先读取DHT11温湿度数值,第二步,新
    Copyright   ©2015-2016  Arduino中文社区  Powered by©Discuz!   ( 蜀ICP备14017632号-3 )
    快速回复 返回顶部 返回列表