一、什么是TPYBoardV702

TPYBoardV702是山东萝卜电子科技有限公司最新开发的,目前市面上唯一支持通信通信功能的MicroPython开发板:支持Python3.0及以上版本直接运行。支持GPS+北斗双模通信、GPRS通信、短信功能、电话功能;板载温湿度、光敏、三轴加速度传感器、蜂鸣器、LCD5110显示屏。免费提供通信测试服务平台。实物如下图:

二、利用TPYBoardV702完成利用GPRS功能把数据上传至服务器

1、具体要求
利用TPYBoardV702完成利用GPRS功能把数据上传至服务器
2、所需器件
TPYBoardV702开发板一块
Gsm手机卡一张
TPYBoardV702开发板板载GPRS通信功能,无需外接
3、板载通信功能及使用介绍
V702的开发板的整体整体亮点置一就是能板载通信功能,只要在开发板的卡槽上插上一张可以使用的手机卡(不支持电信),即可使用该功能。 开发板板载的通信功能包括了电话,短信,GPRS等功能,在这个实验里面我们只使用GPRS这个功能。 我们使用GPRS功能,主要是为了借助这个功能向服务器透传数据,所以我们第一步是要打开透传功能。然后我们要和服务器建立连接,这时我们需要知道服务器的地址和端口。这个实验我们借用官方提供的测试平台,发送一个自己编辑的数据包,来学习一下GPRS功能的使用方法。

下面仔细说一下制作过程。

三、制作主要过程

先上个图,下面再开始说代码的问题。


Putty数据监控图


示例定位图

1、制作过程
(1)第一步是先把手机卡插到开发板开槽上,需要保证手机卡可以使用;
(2)在上面工作完成后,我们开始main().py文件代码的编辑;
(3)对需要用到的类库进行声明和定义;
(4)把我们需要使用的变量进行一下定义;
(5)把我们需要用到的接口进行声明和定义,这里我们主要用到了串口4这个接口,声明串口4的时候,需要把串口波特率设置为115200;
(7)下面开始主函数的编写,这个实验里面我们用到了数据包,我们先新建一个符合格式的数据包;
(8)完成以上之后,我们需要做一个最重要的事情,那就是定义“Y6”引脚为输出,然后把:“Y6”引脚拉低两秒以上,之后把此引脚拉高。因为“Y6”引脚是控制整个板载通信系统开启的开关,如果平时我们没有用到通信系统的话,为了节省功耗,板载通信系统是处于关闭状态的,需要使用时只需要拉低“Y6”引脚两秒以上;
(9)当看到开发板上的红色直插LED灯快速闪烁的时候,说明板载通信系统正在启动,当这个红色直插指示灯结束快闪(如果插在开发板卡槽上的手机可用,指示灯处于慢闪状态)说明板载通信系统已经启动;
(10)完成以上工作后,准备工作就已经完成了,下面我们需要先把通信系统的通信方式设置为透传,之后再和相应的服务器地址和端口进行连接;
(11)和服务器建立连接后,就可以开始想服务器发送数据了,直接把数据从串口4送出去就可以了,通信系统会原封不动的把你发的数据发送到服务器。

2、具体代码:

import pyb
import upcd8544
from machine import SPI,Pin
from pyb import UART
from ubinascii import hexlify
from ubinascii import *#以上为声明使用到的类库
  leds = [pyb.LED(i) for i in range(1,5)]
P,L,SHUCHU=0,0,0
SPI = pyb.SPI(1) #DIN=>X8-MOSI/CLK=>X6-SCK
#DIN =>SPI(1).MOSI 'X8' data flow (Master out, Slave in)
#CLK =>SPI(1).SCK  'X6' SPI clock
RST    = pyb.Pin('X20')
CE     = pyb.Pin('X19')
DC     = pyb.Pin('X18')
LIGHT  = pyb.Pin('X17')
lcd_5110 = upcd8544.PCD8544(SPI, RST, CE, DC, LIGHT)#以上为初始化显示屏的函数,虽然                                                                                   #这次没有用到显示,但是备用
count_=0
N2 = Pin('Y3', Pin.OUT_PP)
N1 = Pin('Y6', Pin.OUT_PP)#定义通信系统启动引脚
N1.low()
pyb.delay(2000)
N1.high()
pyb.delay(10000)#拉高拉低引脚,启动通信系统
u2 = UART(4, 115200)#定义串口4,设置 波特率为115200
K=5#设置一个选择变量K
while (K==5):#这个循环是为了设置通信区域模式为透传模式。u2.write('AT+CIPMODE=1\r\n')pyb.delay(500)if(u2.any()>0):print('透传')_dataRead=u2.readall()print('透传',_dataRead.decode('utf-8'))if(_dataRead.find(b'OK')>-1):K=0pyb.delay(20)
u2.write('AT+CIPSTART="TCP","139.196.109.178",30000\r\n')#这个语句是为了搭建通信连                                                                                         #接。
pyb.delay(10000)
print('123')
while (K==0):#这里是为了判断通信连接是否已经建立起来,如果没有建立起来通信的连接,                    #则等待。pyb.delay(3000)if(u2.any()>0):_dataRead=u2.readall()print('oo',_dataRead)if(_dataRead.find(b'CONNECT OK')>-1):#这个判断是为了判断是否已经和服务器建                                                                   #立起连接来K=1#开发板已经和服务器建立起连接来,则改变选择变量的值,使其进入下                     #一个循环pyb.LED(1).on()
while (K==1):#这个循环是执行数据传输命令的执行所在,在这个循环中进行各种数据的裁                #剪拼接和发送。print('DOU')#u2.write('+++')  此时整个系统进入透传通信模式,想要退出,则发送‘+++’,即可    #退出;#u2.write('ATO0') 想让系统从指令模式进入透传模式,则发送‘ATO0’,则进入透传;#pyb.delay(1500)pyb.LED(2).off()pyb.LED(3).off()pyb.LED(2).on()u2.write('TPGPS,1234567890abcde,36.67191670,119.17200000,201701120825,25,50,END')#这个报文详细格式参照服务平台示例报文格式。#把这格式里面的经纬度数据换成从定位系统获取到的经纬度,就可以实时定位了。pyb.delay(13000)#延时一下时间,官方提供的测试平台有上传频率限制if(u2.any()>0):#在向服务器发送了数据后,服务器会对数据进行判断,并返相应的报文                      #(报文参数详见服务平台)#这个返回仅适用于官方提供的服务平台,客户自己搭建的平台是否                              #存在这个功能,客户自主搭建。_dataRead=u2.readall()print('1212',_dataRead)pyb.LED(3).on()pyb.delay(10000)

转载于:https://www.cnblogs.com/xxosu/p/9203727.html

Micropython开发实例之TPYBoard v702GPRS功能测试相关推荐

  1. micropython做产品开发_Micropython开发实例之TPYBoard制作简易超声波测距仪

    1.实验目的 1.学习在PC机系统中扩展简单I/O接口的方法. 2.进一步学习编制数据输出程序的设计方法. 3.学习超声波模块的测距原理. 4.学习LCD5110接线方法 5.学习TPYboard控制 ...

  2. MicroPython开发板:TPYBoard v102 播放音乐实例

    2019独角兽企业重金招聘Python工程师标准>>> 0x00 前言 前段时间看到TPYBoard的技术交流(q群号:157816561)里有人问关于TPYBoard播放音乐的问题 ...

  3. Python开发实例:TPYBoard开发板制作声光控开关

    2019独角兽企业重金招聘Python工程师标准>>> 声光控开关在我们日常生活中已经非常普遍了,几乎每个小区的楼道里都能有声光控开关的影子.现在也逐渐出现了声光控的小夜灯,晚上起夜 ...

  4. MicroPython开发实例之TurniBit开发板DIY自动窗帘模拟系统

    2019独角兽企业重金招聘Python工程师标准>>> 一.准备工作     üTurnipBit 开发板 一块     ü下载数据线 一条     ü微型步进电机(28BYJ-48 ...

  5. TPYBoard:一款可以发挥无限创意的MicroPython开发板

    2019独角兽企业重金招聘Python工程师标准>>> 今天给大家带来一款MicroPython开发板的拆解和测评.所谓MicroPython也就是运行在单片机上的Python.Py ...

  6. 乐鑫esp8266模块MicroPython开发板MQTT物联网人工智能最小系统

    简 介: ※对于购买自网络的基于ESP8266的实验模块进行了初步的测试,它其中的一些示例进行了练习.特别是对于基于ESP8266的特殊的一些外设的测试. 关键词: ESP8266,MicroPyth ...

  7. 测试逐飞的MM32F3277 MicroPython开发板的基本功能

    简 介: 对于给定的MicroPython移植版本进行了初步的测试.对比之下,MCU中还有很多的模块尚未支持.这些工作需要近期尽快补充测试完毕. 关键词: MM32,MicroPython #merm ...

  8. TurnipBit:可以带着孩子一起玩编程的MicroPython开发板!

    2019独角兽企业重金招聘Python工程师标准>>> 从小就编程"有可能不只是名人传记里才能看到的故事,现在"全民编程"已成一股热潮,那么让孩子接触编 ...

  9. python 开发版-高性能、低成本、支持MicroPython开发板有哪些?

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

最新文章

  1. windows 同时安装 python2 python3
  2. Halcon初学者知识【15】图像的定义域Domain
  3. ios使用自带git respository管理项目
  4. Nginx 模块开发
  5. ARM发表白皮书:物联网的过去、现在与未来
  6. 关于Resnet50和ResNeXt50的参数量的简单计算(只考虑卷积层和全连接层)
  7. Eclipse安装git插件以及关联导入GitHub项目
  8. 腾讯通如何修改服务器,rtx如何设置服务器地址
  9. java编程语言的常用快捷方式
  10. 2.1~3 32位及64位x86处理器介绍
  11. 通过Git WebHooks+脚本实现自动更新发布代码之Shell脚本(二)
  12. 四菱天线怎么加强_白话天线(2)---什么是天线?
  13. html中半透明效果,CSS半透明效果的属性和场景
  14. 网上十大经典黑客软件大曝光(转)
  15. win7每次打开计算机都是小框,win7电脑为什么每次开机都会自动启动记事本文档?...
  16. 入职B站一年,被裁员了,我思考了哪些?
  17. 专访马云:下一个星辰大海是百货商店
  18. Windows下QT设置应用程序(exe)图标、任务栏托盘图标、任务栏窗口图标
  19. 72---百钱买百鸡问题
  20. ClassFormatException:Invalid byte tag in constant pool: 18

热门文章

  1. 为什么AI感知与人类感知无法直接比较?
  2. 人工智能、核聚变、碳捕捉……最有可能帮助拯救地球的10项技术
  3. 69张图看懂Elon Musk的脑机接口芯片项目
  4. 一文看透汽车芯片!巨头布局技术路线全解密【附下载】| 智东西内参
  5. 薛定谔的猫跳进了生物学界,化学家表示:没有我可能办不到
  6. 李飞飞重返斯坦福后的大动作:开启「以人为中心的AI计划」
  7. Gartner:人工智能将改变个人设备领域的游戏规则
  8. 10 年 IT 老兵给新人程序员的几点建议
  9. 那些逃离互联网大厂的年轻人
  10. Python核心资料:Django+Scrapy+Hadoop+数据挖掘+机器学习+精选视频(免费领)