树莓派与PC端在局域网内运用python实现即时通讯
2019-06-22 13:47
946 查看
电脑和树莓派在同一局域网内,先在电脑和树莓派创建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)
以上就是本文的全部内容,希望对大家的学习有所帮助
您可能感兴趣的文章:
相关文章推荐
- 局域网即时通讯软件的实现
- 局域网即时通讯软件的实现
- 要开发一个android项目,以android为客户端,pc为服务器端,如果实现通讯交互?
- Android实现基于TCP和UDP协议的即时通讯,含android端和服务器端
- 局域网之间的通讯实现
- 树莓派驱动步进式电机python编程实现
- 局域网即时通讯的可管理性
- 源码推荐(7.09):iOS简单即时通讯 自定义协议实现 了解传输基本原理,仿陌陌的可滑动Segment
- 关于Socket的解析以及双方即时通讯的java实现方法
- python实现局域网ip地址扫描
- 要开发一个android项目,以android为客户端,pc为服务器端,如果实现通讯交互?
- 树莓派实现远程开机局域网电脑(WOL协议+etherwake+华硕主板Z97)秒变花生壳开机棒
- python实现socket通讯(UDP)
- 基于XMPP协议的即时通讯工具的服务器端实现
- python编写简易聊天室实现局域网内聊天
- 独家 | 手把手教你运用深度学习构建视频人脸识别模型(Python实现)
- 树莓派学习笔记2: 用python实现C/S方式远程控制双色LED灯
- Android手机终端与PC实现socket通讯 Socket编程
- C#即时通讯系统设计与实现(一)
- 局域网即时通讯的可管理性