1527|6

7219

帖子

192

TA的资源

五彩晶圆(高级)

楼主
 

【正点原子阿尔法 IMX6ULL Linux开发板】第11篇 TCP编程测试(Python编程) [复制链接]

 

TCP的PYTHON编程,我主要参考了两本书,分别是《python核心编程》和《python网络编程》两本书

 

TCP基本概念(网络)

 

TCP有专门的传递保证机制,收到数据时会自动发送确认消息,发送方收到确认消息后才会继续发送消息,否则继续等待。

这样的好处是传输的数据是可靠的,此外它是有连接的传输。

TCP协议是TCP/IP协议族中另外一个重要的协议,作为传输层上的协议,它更靠近应用程序,所以具有更强的可操作性。  

Socket(套接字)是一种通讯机制,它包含一整套的调用接口和数据结构的定义,它给应用进程提供了使用如 TCP/UDP 灯网络协议进行网络通讯的手段

 

TCP测试图下图所示(图片来源于网络)

 

先了解下基本的

 

 

有了这两个基础,基本python的TCP简单应用也不在话下了

 

开始操作,首先

 

SSH登录开发板,root登录免密

 

1创建文件夹

 

 

2复制py文件到test文件夹

 

Py文件程序

 

查看下基本代码

SERVER_IP = "192.168.0.107"  # 服务器机的IP地址
SERVER_PORT = 8888

print("Starting socket: TCP...")
server_addr = (SERVER_IP, SERVER_PORT)
socket_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

while True:
    try:
        print("Connecting to server @ %s:%d..." % (SERVER_IP, SERVER_PORT))
        socket_tcp.connect(server_addr)
        break
    except Exception:
        print("Can't connect to server,try it latter!")
        time.sleep(1)
        continue
print("Please input:")
while True:
    try:
        data = socket_tcp.recv(512)
        if len(data) > 0:
            print("Received: %s" % data)
            command = input()
            socket_tcp.send(command.encode())

 

 

3主机打开网络助手

 

 

4运行py文件

sudo python3 computer_mx.py

 

5.查看测试结果

注意这里的IP填写的是本机主机的IP

端口号与开发板的端口号保持一致

 

 

6 主机运行 Py文件

 

 

运行结果测试:

 

 

最新回复

这东西是不是有驱动包啊     详情 回复 发表于 2023-6-26 10:29
点赞(1) 关注(1)

回复
举报

670

帖子

0

TA的资源

纯净的硅(高级)

沙发
 

楼主,使用python来建立tcp server的优势是个啥啊?

点评

我也不太清楚 感觉Pyton跨平台方便一些  详情 回复 发表于 2023-6-25 11:14
 
 

回复

7219

帖子

192

TA的资源

五彩晶圆(高级)

板凳
 
jobszheng5 发表于 2023-6-25 10:54 楼主,使用python来建立tcp server的优势是个啥啊?

我也不太清楚

感觉Pyton跨平台方便一些

 
 
 

回复

670

帖子

0

TA的资源

纯净的硅(高级)

4
 

我曾经对比过 使用socket接口搭建server,单链接数。——感觉代码量也挺少的。

使用C语言,借助开源的封装库,如libuv,建立服务器的代码量也非常少。

使用C++,代码量也挺少的

关键,上述三个方法都挺好用的。

点评

大佬 你研究的比较透 我请教过专门做网络的同学,python做网络效率是比较低的  详情 回复 发表于 2023-6-26 16:48
 
 
 

回复

6502

帖子

9

TA的资源

版主

5
 

这东西是不是有驱动包啊  

点评

是的 Python 提供了基本的 socket 模块  详情 回复 发表于 2023-6-26 16:51
 
个人签名

在爱好的道路上不断前进,在生活的迷雾中播撒光引

 
 

回复

7219

帖子

192

TA的资源

五彩晶圆(高级)

6
 
jobszheng5 发表于 2023-6-25 14:39 我曾经对比过 使用socket接口搭建server,单链接数。——感觉代码量也挺少的。 使用C语言,借 ...

大佬 你研究的比较透

我请教过专门做网络的同学,python做网络效率是比较低的

 
 
 

回复

7219

帖子

192

TA的资源

五彩晶圆(高级)

7
 
秦天qintian0303 发表于 2023-6-26 10:29 这东西是不是有驱动包啊  

是的

Python 提供了基本的 socket 模块

 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/8 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表