树莓派与PC端在局域网内运用python实现即时通讯


Posted in Python onJune 22, 2019

电脑和树莓派在同一局域网内,先在电脑和树莓派创建python运行环境,然后在树莓派中用python运行rpi.py;在电脑上运行computer.py;电脑上输入字符即可在树莓派上即时显示!

rpi.py

#coding:utf-8
#import necessary package
import socket
import time
import sys


HOST_IP = "192.168.31.151" #树莓派的IP地址
HOST_PORT = 8888
print("Starting socket: TCP...")
#1.create socket object:socket=socket.socket(family,type)
socket_tcp = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
print("TCP server listen @ %s:%d!" %(HOST_IP, HOST_PORT) )
host_addr = (HOST_IP, HOST_PORT)
#2.bind socket to addr:socket.bind(address)
socket_tcp.bind(host_addr)
#3.listen connection request:socket.listen(backlog)
socket_tcp.listen(1)
#4.waite for client:connection,address=socket.accept()
socket_con, (client_ip, client_port) = socket_tcp.accept()
print("Connection accepted from %s." %client_ip)
socket_con.send("Welcome to RPi TCP server!")

print("Receiving package...")

###主循环
while True:
 try:
  data=socket_con.recv(512)
  if len(data)>0:
   print("Received:%s"%data)
   socket_con.send(data)
   time.sleep(1)
   continue
 except Exception:
   socket_tcp.close()
   sys.exit(1)

computer.py

import socket
import time
import sys

SERVER_IP = "192.168.31.151" #树莓派的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=raw_input()
   socket_tcp.send(command)
   time.sleep(1)
   continue
 except Exception:
  socket_tcp.close()
  socket_tcp=None
  sys.exit(1)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分析在Python中何种情况下需要使用断言
Apr 01 Python
简述Python中的面向对象编程的概念
Apr 27 Python
python中管道用法入门实例
Jun 04 Python
python 连接各类主流数据库的实例代码
Jan 30 Python
windows下python和pip安装教程
May 25 Python
Python学习小技巧总结
Jun 10 Python
python 用opencv调用训练好的模型进行识别的方法
Dec 07 Python
浅谈Python批处理文件夹中的txt文件
Mar 11 Python
深入了解Python iter() 方法的用法
Jul 11 Python
Python 解决OPEN读文件报错 ,路径以及r的问题
Dec 19 Python
Django生成数据库及添加用户报错解决方案
Oct 09 Python
Python re.sub 反向引用的实现
Jul 07 Python
树莓派采用socket方式文件传输(python)
Jun 22 #Python
树莓派用python中的OpenCV输出USB摄像头画面
Jun 22 #Python
树莓派使用USB摄像头和motion实现监控
Jun 22 #Python
树莓派动作捕捉抓拍存储图像脚本
Jun 22 #Python
python+openCV利用摄像头实现人员活动检测
Jun 22 #Python
树莓派实现移动拍照
Jun 22 #Python
树莓派+摄像头实现对移动物体的检测
Jun 22 #Python
You might like
用php实现的下载css文件中的图片的代码
2010/02/08 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
THINKPHP支持YAML配置文件的设置方法
2015/03/17 PHP
学习php设计模式 php实现桥梁模式(bridge)
2015/12/07 PHP
Code:findPosX 和 findPosY
2006/12/20 Javascript
JAVASCRIPT style 中visibility和display之间的区别
2010/01/22 Javascript
jquery showModelDialog的使用方法示例详解
2013/11/19 Javascript
推荐10个2014年最佳的jQuery视频插件
2014/11/12 Javascript
学习使用grunt来打包JavaScript和CSS程序的教程
2016/01/04 Javascript
JS实现回到页面顶部动画效果的简单实例
2016/05/24 Javascript
jQuery回到顶部的代码
2016/07/09 Javascript
JQuery遍历元素的后代和同胞实现方法
2016/09/18 Javascript
完美实现js选项卡切换效果(二)
2017/03/08 Javascript
作为老司机使用 React 总结的 11 个经验教训
2017/04/08 Javascript
Bootstrap里的文件分别代表什么意思及其引用方法
2017/05/01 Javascript
vue.js实现用户评论、登录、注册、及修改信息功能
2020/05/30 Javascript
分享vue.js devtools遇到一系列问题
2017/10/24 Javascript
vue.js学习笔记之v-bind和v-on解析
2018/05/03 Javascript
对Vue.js之事件的绑定(v-on: 或者 @ )详解
2018/09/15 Javascript
小程序scroll-view组件实现滚动的示例代码
2018/09/20 Javascript
详解vue 在移动端体验上的优化解决方案
2019/05/20 Javascript
jQuery实现朋友圈查看图片
2020/09/11 jQuery
详解Python程序与服务器连接的WSGI接口
2015/04/29 Python
详解Django缓存处理中Vary头部的使用
2015/07/24 Python
Python OpenCV实现图片上输出中文
2018/01/22 Python
python3 enum模块的应用实例详解
2019/08/12 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
2019/08/28 Python
Django重设Admin密码过程解析
2020/02/10 Python
pytorch __init__、forward与__call__的用法小结
2021/02/27 Python
Wedgwood英国官方网站:英式精致骨瓷餐具、礼品与生活精品,源于1759年
2019/09/02 全球购物
机电一体化大学生求职信
2013/11/08 职场文书
升职自荐信
2013/11/28 职场文书
高职教师岗位职责
2013/12/24 职场文书
新教师培训心得体会
2014/09/02 职场文书
丧事答谢词
2015/01/05 职场文书
十大经典日本动漫排行榜 海贼王第三,犬夜叉仅第八
2022/03/18 日漫