文档章节

带以太网的MicroPython开发板:TPYBoardv201温湿度上传实例

bodasisiter
 bodasisiter
发布于 2017/09/09 15:57
字数 1251
阅读 95
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

  转载请以链接形式注明文章来源,MicroPythonQQ交流群:157816561,公众号:MicroPython玩家汇。

  历来关于温湿度的检测都是没有间断过的,这次我们继续检测温湿度,同样还是使用DHT11来检测。但是这次检测到的温湿度不进行显示,也不进行报警,这次要把检测到的数据通过以太网上传到服务器上去。

  先来说一下需要的器件:

  TPYBoard_V201开发板一块;

  DHT11温湿度模块一个;

  面包板一个(可省略);

  杜邦线若干;

  先来简单介绍一下各个器件。

  TPYBoard_V201开发板

  TPYBoard_V201是以遵照MIT许可的MicroPython为基础,由TurnipSmart公司制作的一款MicroPython开发板,它基于STM32F405单片机,通过USB接口进行数据传输。该开发板内置4个LED灯、板载V201网口功能,可在3.3V-10V之间的电压正常工作。可以说这个开发板在网络稳定方面是一霸也不为过,板上其他硬件资源也非常丰富,像单总线,i2c,spi,串口等接口也是应有尽有,这次我们就要用到串口和单总线的功能。

  DHT11

  DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。

  上面介绍了所需器件,下面我们来说一下实验所需的环境。这里只需要能给开发板供电,以及可以支持有线网络连接(可以给开发板接上网线)即可。

  下面实验开始

  一.按照下表进行接线

DHT11

V201开发板

GND

GND

VCC

VIN

DATA

X8

  其次就是给开发板进行供电和插上网线,看到V201网口上的绿色指示灯亮起来,说明已经连接上网络。

  二.配置V201网口

  这一步是为了设置V201网口模块的目的地址,本地端口,波特率,数据位,校验位等一系列信息。

  接着我们来说一下基本的逻辑流程:

  1.我们这次是为了把温湿度数据上传服务器,第一步肯定是现在开发板上获取到温湿度的数据,关于DHT11的使用,开发板这边提供了非常详细的使用方法和DHT11的库,这里就不做多余介绍啦。

  2.在我们成功获取到温湿度以后,把温湿度数据进行分割处理,说白了就是把温度和湿度分开。

  3.前面把要传的数据都处理好了,接下来就是进行传输,在保证网络通畅的前提下,设置串口6,也就是Y1和Y2,具体的波特率这个要参照你前面设置给V201网口的波特率来定。

  4.在这里需要说一句的是,这个开发板在使用以太网功能的时候,Y1,Y2,Y3这三个引脚是被占用的,其中Y1和Y2是串口,执行通信功能。

  5.这里需要介绍一下Y3,Y3是V201网口的设置引脚,当Y3不为低电平时,V201网口处于正常工作状态,可以进行数据上传,也可以利用设置软件通过网络进行配置。当Y3为低电平时,V201网口进入串口配置模式,可利用设置软件通过串口进行配置,此时不能进行数据上传。

  6.以上工作全部完成后,剩下的就是把配置好的数据,通过串口6发送出去。

  7.最后我们只需要监控数据是不是上传正常就可以了。

  实物及数据图

  下面是我做实验的实物图和数据监控截图,我是在我的电脑上开了个模拟的端口,虽然low了点,但是效果一样的。

  实物图


  数据监控截图

  源代码

  下面是我做的源代码,共享给大家。

import pyb
from pyb import UART
from pyb import Pin
from ubinascii import hexlify
from ubinascii import *
from DHT11 import DHT11#定义温湿度传感器的库

ulan = UART(6, 115200)#定义串口,我的网口设置了115200的波特率
K=1
#*******************************主程序**********************************
print('while')
while (K>0):
    S=DHT11()#调用温湿度传感器的方法
    A=S.read_temps()#读取温湿度的值
    print('A:',A)
    print('A:',A[0:2])
    print('A:',A[3:5])#打印温湿度的值
    ulan.write('temperature is:'+A[0:2]+'\r\n')#上传温度
    pyb.delay(2000)#做延时是为了让给模拟服务器一个反应时间
    ulan.write('wet is:'+A[3:5]+'%'+'\r\n')#上传湿度
    pyb.delay(12000)


  

© 著作权归作者所有

bodasisiter
粉丝 31
博文 209
码字总数 196976
作品 0
潍坊
私信 提问
加载中

评论(0)

TPYBoard开发板带你轻松玩转MicroPython

说到MicroPython,也许有人会感到陌生。而说到和它密切相关的Python,是否会恍然大悟呢?Python属于解释型语言,1989年才开发完成的Python显然非常年轻。然而经过数十年的磨砺,如今Python已...

bodasisiter
2019/03/28
488
0
玩转MicroPython开发板!你和Ta会有什么火花?

  说到MicroPython,也许有人会感到陌生。而说到和它密切相关的Python,是否会恍然大悟呢?Python属于解释型语言,1989年才开发完成的Python显然非常年轻。然而经过数十年的磨砺,如今Pyt...

bodasisiter
2017/06/03
1
0
MicroPython支持的开发板:高性能、低成本会python就能做创客

Python的开放、简洁、黏合正符合了现发展阶段对大数据分析、可视化、各种平台程序协作产生了快速的促进作用。自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢...

bodasisiter
2017/04/11
7
0
MicroPython入门:能跑MicroPython开发板大盘点!

相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPython开...

bodasisiter
2018/07/06
5.6K
0
MicroPython入门|开发板种类那么多,哪块才适合你玩?

  相信对于很多刚刚接触MicroPython的DIY创客来说,首先是被一些大神的作品吸引,然后有冲动自己动手,却发现入门很难,特别是面对各式各样的开发板不知如何选择。目前市面上关于MicroPyth...

bodasisiter
2017/06/20
5
0

没有更多内容

加载失败,请刷新页面

加载更多

QT 执行shell命令

(1)首先包含头文件: #include <QProcess> (2)执行shell命令: QProcess::execute("ls");

悲催的古灵武士
9分钟前
15
0
osgEarth使用笔记3——加载倾斜摄影数据

目录 1. 概述 2. 详论 2.1. 位置 2.2. 着色 2.3. 其他 3. 结果 4. 参考 1. 概述 我在《OSG加载倾斜摄影数据》这篇博文中论述了如何通过OSG生成一个整体的索引文件,通过这个索引文件来正确显...

osc_7oc4d1en
10分钟前
11
0
cesium加载gltf模型点击以及列表点击定位弹窗

前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材。 之前有部分订阅者咨询我,...

osc_cx8uhydz
10分钟前
14
0
思维导图软件如何插入图片?具体步骤?

学习思维导图制作的过程中,会遇到很多没有学过的知识,需要我们不断地去改进和学习,这样增强自己的学习能力,才能更好地掌握制图软件。以后帮助我们快速方便地完成制图,今天我们就要来看看...

深蓝月上
11分钟前
16
0
Notepad++ 列块模式编辑,替换换行符

一、列块模式编辑: 1、数据准备 2、按住 “Alt + 鼠标左键” 选择需要列块模式编辑的区域,可以看到多了一条竖线 3、之后批量可以添加,修改内容 二、替换换行符 上面说了列块模式的编辑,后...

osc_itgved4p
12分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部