树莓派和PC间TCP通信

在尝试使用Python的socket进行PC与树莓派之间的TCP通信,以控制LED。遇到TypeError错误,原因是字符串与字节对象不匹配。通过调整代码解决了编码问题,实现了两端的正确通信。在解决问题的过程中,参考了相关文章,并了解了Python异常捕获和错误日志生成。
摘要由CSDN通过智能技术生成

主要问题

在运行 PC和树莓派socket通信 控制LED.由于树莓派还没有到手,首先在同一台电脑中打开连个终端测试代码,注释掉与树莓派有关所有代码,本文基于Anconda python3.6.2,运行过程中发现

python3报错:TypeError: a bytes-like object is required, not ‘str’

主要是编码问题,
修改以后,测试结果如下所示:
首先打开server端,如下所示:接受效果
Client端如下所示:
在这里插入图片描述
修改以后代码如下所示:
server.py

// An highlighted block
#import necessary package
import socket
import time
import sys
'''
import RPi.GPIO as GPIO
'''
#define host ip: Rpi's IP
# HOST_IP = "192.168.1.106"注释一部分·
HOST_IP =socket.gethostname() # 获取本地主机名
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
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值