2611浏览
查看: 2611|回复: 1

[入门教程] 掌控板: UDP的那些事儿(一) -- 漫谈通“信”

[复制链接]
本帖最后由 yywudao 于 2019-12-4 17:35 编辑

掌控板带有wifi功能,可以通过连接wifi,利用网络进行数据间的相互传输。
在掌控板的固件中,通过网络进行数据传输,一般会通过 socket 模块来进行相关设置。具体的通信协议,又分为两种,TCP和UDP。此次,我们来简单聊聊UDP的那些事儿

官方定义:UDP(User Datagram Protocol,用户数据报协议)是一种无连接、不可靠、基于数据报的传输层通信协议。

数据要相互传输,自然就有发送方和接受方,好比写信,有收件人和寄件人。

掌控板: UDP的那些事儿(一) -- 漫谈通“信”图1

发送:
写信,准备通过邮局传递
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)   (定义UDP模式)

信封上要写上寄件人的姓名和地址,方便对方回信
s.bind(("IP", PORT))               (绑定 IP 地址和 PORT 端口号)

信件的内容就是要传递的数据
data.encode("utf-8")               (字节类型)

投递信件,信封上写明收件人和收件地址
s.sento(data, ("IP", PORT))     (发送数据到接收方(指定 IP 地址和 PORT 端口号))

掌控板: UDP的那些事儿(一) -- 漫谈通“信”图2

掌控板: UDP的那些事儿(一) -- 漫谈通“信”图5

接受:
收件人收到信件
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)   (接收方定义UDP模式)

收件人拆开信件
r = s.recvfrom(1024)   (接收1024字节的数据, 元祖,其中有 数据 和 发送方的IP地址和端口号)

收件人阅读信件内容
data = r[0].decode("utf-8")

掌控板: UDP的那些事儿(一) -- 漫谈通“信”图3

掌控板: UDP的那些事儿(一) -- 漫谈通“信”图4

rzyzzxw  版主

发表于 2019-12-6 16:41:15

高级啊,豪
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail