您的位置:首页 > 移动开发 > IOS开发

Alios-Thins教程连载 ③ 图文并茂教你使用乐鑫esp8266轻松连接阿里飞燕平台,个人设备实现轻松对接天猫精灵 。(上篇)(附带demo)

2018-09-13 17:54 1881 查看
版权声明:本文为博主半颗心脏一心一血敲出来的原创作品,未经博主允许不得转载,多谢支持。 https://blog.csdn.net/xh870189248/article/details/82692224
  • 本博文目录:

文章目录

  • 三、 设备端代码跑起;
  • 四、 下载`APP`;
  • 五、 我们的设备重新上电,开始配置;
  • 一、 前言;

         阿里巴巴出来的

    天猫精灵x1
    早已经出来一年多来了,今年还出来了方糖等智能音箱,在去年时候,我还写了
    esp8266
    如何直连阿里智能平台,那个是属于直连模式;而这篇文章主要还是介绍如何介入阿里物联网生活2.0,无非就是阿里智能平台的升级,我们也叫飞燕平台;升级的内容也是很强大的,支持很多芯片,目前我看到都有
    20
    多种了,而且还有
    demo
    提供给我们;最重要的是,它是一条龙服务;

    1. 飞燕平台的接入使用阿里巴巴提供开源的
      alios-things
      嵌入式系统,并且提供一个叫
      linkkitapp
      的代码工程示范。
    2. alios-things
      嵌入式系统由阿里巴巴日常维护和适配各大芯片模组厂商,并且个人技术爱好者也可以贡献代码
      pull quest
      到仓库,可谓是福音啊!
    3. 阿里服务器的服务质量不容置疑,从
      UI
      到大数据都是一流的,有阿里服务器的支撑,可以实现如下功能:
    4. 这么强大,那肯定是收费的!!使用一码一设备,多少钱一个激活码自己查询下吧!这样保证了强大的安全性!
    5. 在前端部分提供了
      SDK
      包,支持自主开发
      APP
      ,也可以支持公版
      APP
      ,话说这个这真的是大大减少了入门门槛!
    6. 不足地方嘛!?部分芯片适配工作还没完全成熟,需要大家一起去开发和适配!不过底层的东西都是已经适配好了,不必担心!

    二、 飞燕平台新建产品并配置控制面板;

    ①:登录后台;
    1、先登录官网飞燕平台,新建项目,成功之后如下:

    2、项目里面包括多个产品,我们需要新建一个产品《灯》,协议选择
    iCA
    ,成功之后列表会有一个产品信息列表:

    3、新产品的建立之后,我们需要为他配置控制面板,我们选择公版
    APP
    ,之后点击设置面板:

    4、配置控制面板,下面几个属性是根据您定义什么属性自动生成的,编辑之后,记得保存并且发布到《智能家居》:

    5、因为正式生产是一码一设备,阿里提供给我们50个测试设备数量,这50个测试设备需要手动去获取设备码,之后成功之后,打开这个设备,会出现阿里分配给我们的信息,注意这几个参数后面我们会用到哦!

    6、其他的什么配网步骤,语言设置,我们先不管,我们到此为止,基本的产品新建就此弄好了!

    三、 设备端代码跑起;

           对于怎么搭建

    alios-things
    的环境搭建以及怎么烧录固件到
    esp8266
    ,这里我就不再累赘了!下面我们关注我们的核心工程
    <linkkitapp>
    ;

    • 首先,我们必须要打开

      AliOS-Things\framework\protocol\linkkit\iotkit\sdk-encap\imports
      的这个文件
      iot_import_product.h
      ,修改里面的信息:

      把我们项目的产品
      key
      secret
      以及我们新建的测试产品的
      name
      secret
      如下图覆盖:

    • 然后,我们要知道阿里的配网流程和我们之前不一样,先调取配网方法,再调取确认配网方法,以往我们是直接一个就可以了。具体的配网流程看这里点我 。我这里结合上篇的
      gpio
      的代码,实现按键确认配网。核心代码如下:
    #define GPIO_INPUT_IO 5
    gpio_dev_t input;
    
    static void gpio_enable_irq(){
    hal_gpio_clear_irq(&input);
    }
    
    static void gpio_isr_handler(){
    //for esp8266 ,need to disable interrupt
    hal_gpio_disable_irq(&input);
    printf("gpio_isr_handler()\n");
    do_awss_active();
    //delay 2s ,then enable interrupt
    aos_post_delayed_action(2000, gpio_enable_irq, NULL);
    }
    
    void aos_gpio_init(){
    
    /* input pin config */
    input.port = GPIO_INPUT_IO;
    /* set as interrupt mode */
    input.config = IRQ_MODE;
    /* configure GPIO with the given settings */
    hal_gpio_init(&input);
    
    /* gpio interrupt config  */
    hal_gpio_enable_irq(&input, IRQ_TRIGGER_FALLING_EDGE, gpio_isr_handler, (void *)GPIO_INPUT_IO);
    }
    • 之后,我们编译一下工程,打印信息中可能有警告,可以忽略:
    aos make linkkitapp@esp8266

    • 最后,我们烧录固件,我的是
      esp8266-12f
      模块:

    四、 下载
    APP

    • 第一步:因为我们使用配置的是公版

      APP
      ,所以,下载测试版
      APP
      : https://living.aliyun.com/doc#muti-app.html

    • 第二步:我们需要手动为我们的产品设置二维码,百度任意一个自动生成二维码的网址,我这里选择草料二维码,文本信息是根据我们的项目和设备名字生成,格式如下:

      比如我的项目的产品密钥是
      siod5624
      ,设备名字是
      xuhongTest
    http://www.taobao.com?pk=siod5624&dn=xuhongTest

    • 第三步:app扫码此二维码。之后的你懂的!

    五、 我们的设备重新上电,开始配置;

    • linkkitapp
      工程在首次运行时候,是默认进去配网模式的 ,首次运行之后2秒内我们要按键一下表示进去确认配网! 注意先让手机开始搜索设备,之后设备上电开启,然后2秒后按键一下确认配网,串口先打印下:
    chan 6
    chan 9
    chan 11
    chan 12
    chan 1
    chan 6
    chan 11
    chan 1
    chan 2
    chan 3
    chan 4
    chan 5
    chan 6
    chan 7
    chan 8
    chan 9
    chan 10
    chan 11
    chan 12
    chan 13
    chan 1
    chan 2
    chan 6
    chan 9
    chan 11
    • 然后,就会检测到手机发来的信号了,同时连接路由器,重启系统,手机提示连接成功,打开如下界面,是不是我们上面说的界面啊?

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: 
    相关文章推荐