设为首页 加入收藏

TOP

Yeelink初步体验(一)
2017-10-11 15:12:56 】 浏览:8845
Tags:Yeelink 初步 体验

环境

Qemu: 2.8.0
开发板:vexpress-ca9
 

概述

    前面的博文已经使我们的虚拟开发板具备了访问外网的目的,离物联网越来越近了。要玩物联网, Yeelink不得不说,它提供了云平台,可以将设备的数据上传到云端,也可以联网获得云端的数据,我们可以通过手机客户端或在网页端查看或修改,从而达到用手机客户端跟嵌入式设备通信的目的。
    下面我们实现一个非常简单的功能: 添加一个虚拟开关,通过Yeelink的手机客户端或在网页端可以查看和修改这个开端的状态,而我们的板子会每隔2s联网读取一次这个虚拟开关的状态,最后板子根据开关的状态打印不同的提示。
 

正文

一、首先登陆Yeelink官网,手动添加一个device,然后在该device下面再创建一个sensor用来代表虚拟开关。
二、为Python添加requests模块
Requests 是用Python语言编写,基于urllib,采用Apache2 Licensed开源协议的HTTP库。它比urllib更加方便,可以节约我们大量的工作,完全满足HTTP测试需求。
1、下载requests模块
下载地址:  https://pypi.python.org/pypi/requests/2.3.0 或  requests-2.3.0.tar.gz
解压后:
$ls
HISTORY.rst  NOTICE      requests/           setup.cfg
LICENSE      PKG-INFO    requests.egg-info/  setup.py*
MANIFEST.in  README.rst  requirements.txt    test_requests.py*

其中的requests既可以用于Python2也可以用于Python3,然后将这个requests目录拷贝到对应Python的site-packages下面。

在导入requests模块的时候,会提示找不到zlib模块。
2、重新编译Python,支持zlib
  • 编译zlib:
1 #!/bin/bash
2 
3 export CC=arm-none-linux-gnueabi-gcc
4 
5 ../zlib-1.2.11/configure \
6     --prefix=`pwd`

 修改Makefile,修改AR和RANLIB如下:

AR=arm-none-linux-gnueabi-ar
RANLIB=arm-none-linux-gnueabi-ranlib
然后执行make && make install, 安装完成之后不要忘了把lib下的so和include下的头文件拷贝到板子上
  • 编译Python3:
 1 #!/bin/bash
 2 
 3 ../Python-3.6.0/configure \
 4     --host=arm-none-linux-gnueabi \
 5     --build=armv7 \
 6     --prefix=`pwd` \
 7     --enable-ipv6 \
 8     --enable-shared \
 9     ac_cv_file__dev_ptmx="yes" \
10     ac_cv_file__dev_ptc="no" \
11     LDFLAGS="-L/home/pengdonglin/disk_ext/Third_Part/SQlite3/aarch32/lib \
12     -L/home/pengdonglin/disk_ext/Third_Part/Readline/aarch32/lib \
13     -L/home/pengdonglin/disk_ext/Third_Part/Termcap/aarch32/lib \
14     -L/home/pengdonglin/disk_ext/Third_Part/Zlib/aarch32/lib"\
15     CPPFLAGS="-I/home/pengdonglin/disk_ext/Third_Part/SQlite3/aarch32/include \
16     -I/home/pengdonglin/disk_ext/Third_Part/Readline/aarch32/include \
17     -I/home/pengdonglin/disk_ext/Third_Part/Termcap/aarch32/include \
18     -I/home/pengdonglin/disk_ext/Third_Part/Zlib/aarch32/include"\
19     LDLAST="-L/home/pengdonglin/disk_ext/Third_Part/Readline/aarch32/lib \
20     -L/home/pengdonglin/disk_ext/Third_Part/Termcap/aarch32/lib \
21     -L/home/pengdonglin/disk_ext/Third_Part/Zlib/aarch32/lib"
22 
23 make -j4
24 make install

安装完成后,也可以直接将lib/python3.6/lib-dynload/zlib.cpython-36m-arm-linux-gnueabi.so拷贝到板子上面的/usr/lib/python3.6/lib-dynload/下面即可, 而不必全部更新

  • 编译Python2:
mk1_conf.sh:
 1 #!/bin/bash
 2 
 3 ../Python-2.7.13/configure --prefix=`pwd` \
 4     --host=arm-none-linux-gnueabi \
 5     --build=x86_64-linux-gnu \
 6     --enable-ipv6 \
 7     --enable-shared \
 8     ac_cv_file__dev_ptmx="yes" \
 9     ac_cv_file__dev_ptc="no" \
10     LDFLAGS="-L/home/pengdonglin/disk_ext/Third_Part/SQlite3/aarch32/lib \
11     -L/home/pengdonglin/disk_ext/Third_Part/Readline/aarch32/lib \
12     -L/home/pengdonglin/disk_ext/Third_Part/Termcap/aarch32/lib \
13     -L/home/pengdonglin/disk_ext/
首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇STC90C51单片机《八月桂香》程序 下一篇51单片机 | 实现按键查询并灯闪烁..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目