带以太网的MicroPython开发板:TPYBoardv201温湿度上传实例
转载请以链接形式注明文章来源,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)
带以太网的MicroPython开发板:TPYBoardv201温湿度上传实例的更多相关文章
- 带以太网的MicroPython开发板:TPYBoardv201建立云加法器实例
转载请注明文章来源,MicroPythonQQ技术交流群:157816561,公众号:MicroPython玩家汇 前面的一篇文档向大家介绍了v201的开发板作为客户端终端向TCPS上传数据的基本过程 ...
- OneNET麒麟座应用开发之四:数据上传测试
已经测试过OneNET麒麟座开发板了,这次来尝试与OneNET的连接和数据上传.这也是我们测试这块开发办的主要原因,因为在十几种我们有这种将分散的采集点数据上传到后台的需求. 先看看麒麟座这块开发板, ...
- MicroPython可视化编程开发板—TurnipBit自制MP3教程实例
转载请以链接形式注明文章来源(MicroPythonQQ技术交流群:157816561,公众号:MicroPython玩家汇) 当前我们都生活在一个有声有色的社会当中,欣赏美丽的景色,享受动人的音乐, ...
- iOS开发中文件的上传和下载功能的基本实现-备用
感谢大神分享 这篇文章主要介绍了iOS开发中文件的上传和下载功能的基本实现,并且下载方面讲到了大文件的多线程断点下载,需要的朋友可以参考下 文件的上传 说明:文件上传使用的时POST请求,通常把要上传 ...
- SNF开发平台WinForm之六-上传下载组件使用-SNF快速开发平台3.3-Spring.Net.Framework
6.1运行效果: 6.2开发实现: 1.先在要使用的项目进行引用,SNF.WinForm.Attachments.dll文件. 2.在工具箱内新建选项卡->选择项,浏览找到文件SNF.WinFo ...
- 斗牛app上架应用宝、牛牛手机游戏推广、百人牛牛app应用开发、棋牌游戏上传、手游APP优化
联系QQ:305-710439斗牛app上架应用宝.牛牛手机游戏推广.百人牛牛app应用开发.棋牌游戏上传.手游APP优化 iOS开发iPhone/iPad平台安卓手机软件开发机型覆盖范围 超过113 ...
- IOS开发 APP提交程序上传流程
由于苹果的机制,在非越狱机器上安装应用必须通过官方的App Store,开发者开发好应用后上传App Store,也需要通过审核等环节.AppCan作为一个跨主流平台的一个开发平台,也对ipa包上传A ...
- 详细阐述Web开发中的图片上传问题
Web开发中,图片上传是一种极其常见的功能.但是呢,每次做上传,都花费了不少时间. 一个"小功能"花费我这么多时间,真心不愉快. So,要得认真分析下原因. 1.在最初学习Java ...
- Plupload上传实例《模仿微云上传实例》,带源码
Plupload上传实例<模仿微云上传实例>,带源码,作者:鱼塘总裁 如有疑问,加群交流:646104701 一.实例截图 1.上传过程 2.上传成功 3.上传失败 4.最小化 二.所需文 ...
随机推荐
- ElasticSearch 学习记录之ES短语匹配基本用法
短语匹配 短语匹配故名思意就是对分词后的短语就是匹配,而不是仅仅对单独的单词进行匹配 下面就是根据下面的脚本例子来看整个短语匹配的有哪些作用和优点 GET /my_index/my_type/_sea ...
- ASP.NET没有魔法——ASP.NET MVC使用Oauth2.0实现身份验证
随着软件的不断发展,出现了更多的身份验证使用场景,除了典型的服务器与客户端之间的身份验证外还有,如服务与服务之间的(如微服务架构).服务器与多种客户端的(如PC.移动.Web等),甚至还有需要以服务的 ...
- Jarvis OJ - [XMAN]level1 - Writeup——简单shellcode利用
100分的pwn 简单查看一下,果然还是比较简单的 放到ida中查看一下,有明显的溢出函数,并且在函数中打印出了字符串的地址,并且字符串比较长,没有NX保护 所以我们很容易想到构造shellcode, ...
- textarea高度自适应,随着内容增加高度增加
$(function(){ $.fn.autoHeight = function(){ function autoHeight(elem){ ...
- 深入浅出了解frame和bounds
frame frame的官方解释如下: The frame rectangle, which describes the view's location and size in its supervi ...
- Windows Azure系列-- 配置Azure Power Shell
1.下载Azure Power shell https://azure.microsoft.com/en-us/documentation/articles/powershell-install-co ...
- 用IFeatureWorkspaceAnno.CreateAnnotationClass 创建注记图层时报“The application is not licensed to modify or create schema”的错误的解决方案。
用IFeatureWorkspaceAnno.CreateAnnotationClass 的方法创建注记图层的时候报"The application is not licensed to m ...
- 随聊——Python的前世今生
1989年圣诞节前夕,山雨欲来风满楼,计算机程序设计语言界隐隐有大事要发生,果然不出所料.江湖人称龟叔(Guido von Rossum),就是这位祖籍荷兰的大能,在圣诞节百无聊赖的期间,发明了Pyt ...
- 【python】for循环
>>> exp='welcom to python'>>> for i in exp: print(i,end=' ') w e l c o m t o p y t ...
- JAVA多线程统计日志计数时的线程安全及效率问题
最近工作上遇到一个需求:需要根据nginx日志去统计每个域名的qps(Query Per Second,每秒查询率)数据. 解决了日志读取等问题之后,为了写一个尽可能高效的统计模块,我决定用多线程去计 ...