树莓派 USB转串口接收数据 TCP转发出
标签:
数据转发serial-to-tcpcom-to-tcp串口转发至tcp |
分类: 树莓派 |
1,硬件环境
树莓派, 2条USB转485,
其中一条宇泰的UT-891接到树莓派的USB上, 另一条帝特的DT-5019 接至电脑的USB端。
树莓派的RJ45网线和电脑的网线,接至同一个联网路由器上。
电脑端通过串口调试软件,通过USB转串口线向树莓派发送数据,树莓派接收数据后,通过网线走TCP转发至电脑端。
http://s3/bmiddle/001lQaoWzy7a59NEKKS02&690USB转串口接收数据 TCP转发出" TITLE="树莓派 USB转串口接收数据 TCP转发出" />
电脑端串口发送数据端:
http://s12/bmiddle/001lQaoWzy7a5apx4Thfb&690USB转串口接收数据 TCP转发出" TITLE="树莓派 USB转串口接收数据 TCP转发出" />
http://s4/mw690/001lQaoWzy7a5apAe2v43&690USB转串口接收数据 TCP转发出" TITLE="树莓派 USB转串口接收数据 TCP转发出" />
树莓派端接收数据:
http://s5/mw690/001lQaoWzy7a5aDOUW8d4&690USB转串口接收数据 TCP转发出" TITLE="树莓派 USB转串口接收数据 TCP转发出" />
电脑端TCP接收数据:
http://s2/mw690/001lQaoWzy7a5aL5ic901&690USB转串口接收数据 TCP转发出" TITLE="树莓派 USB转串口接收数据 TCP转发出" />
程序:
1,树莓派端的程序:
#!/usr/bin/env python
# -*- coding:utf8 -*-
import serial
import socket
#ser = serial.Serial("com3", baudrate=115200)
ser = serial.Serial("/dev/ttyUSB0", baudrate=115200)
print (ser.name)
while True:
line =
ser.read()
print(line)
client_socket = socket.socket()
client_socket.connect(('192.168.1.100', 999))
client_socket.sendall(line)
client_socket.close()
树莓派端程序的使用:
1,$ mkdir
delelop
#新建一个delelop 文件夹
2, $ cd
delelop
#跳转至 delelop 文件夹
3, $ touch
t4.py
# 新建一个名称为 t4.py的文件
4, $ nano
t4.py
#打开编辑 t4.py
5, 把上面的代码拷贝进去,保存,退出。
6,$python3
t4.py
# 运行 t4.py
2, 电脑端TCP接收数据程序
#!/usr/bin/env python
#coding:utf-8
import socket
#开启ip和端口
ip_port = ('192.168.1.100',999)
#生成一个句柄
sk = socket.socket()
#绑定ip端口
sk.bind(ip_port)
#最多连接数
sk.listen(5)
#开启死循环
count = 0
while True:
print ('server waiting...')
#等待链接,阻塞,直到渠道链接 conn打开一个新的对象 专门给当前链接的客户端 addr是ip地址
conn,addr =
sk.accept()
#获取客户端请求数据
client_data
= conn.recv(1024)
#打印对方的数据
count +=
1
print
(count, str(client_data,'utf8'))
#向对方发送数据
#conn.sendall(bytes('%s' % count,'utf8'))
#关闭链接
conn.close()
1, 打开CMD
2,输入:“python xx\xx\x\echo_server.py”
注意:
xx\xx\x\echo_server.py为文件所在路径。
电脑端串口发送数据端:
树莓派端接收数据:
电脑端TCP接收数据:
程序:
1,树莓派端的程序:
#!/usr/bin/env python
# -*- coding:utf8 -*-
import serial
import socket
#ser = serial.Serial("com3", baudrate=115200)
ser = serial.Serial("/dev/ttyUSB0", baudrate=115200)
print (ser.name)
while True:
树莓派端程序的使用:
1,$ mkdir
2,
3,
4,
5,
6,$python3
2, 电脑端TCP接收数据程序
#!/usr/bin/env python
#coding:utf-8
import socket
#开启ip和端口
ip_port = ('192.168.1.100',999)
#生成一个句柄
sk = socket.socket()
#绑定ip端口
sk.bind(ip_port)
#最多连接数
sk.listen(5)
#开启死循环
count = 0
while True:
1, 打开CMD
2,输入:“python xx\xx\x\echo_server.py”
注意:
前一篇:采集Hokuyo激光扫描仪数据
后一篇:树莓派 文件共享(samba)

加载中…