双机串行通信是指通过串行接口在两台计算机之间进行数据传输。下面的示例代码展示了如何在Python中使用`pyserial`库实现简单的双机串行通信。假设有两台计算机:计算机A和计算机B。

安装依赖
在开始之前,你需要安装`pyserial`库,可以通过以下命令安装:
bash
pip install pyserial
计算机A(发送端)
下面是计算机A的代码示例,它将向计算机B发送消息。
python
import serial
import time
# 设置串行端口和波特率
ser = serial.Serial('COM1', 9600) # 根据实际情况修改端口号
try:
while True:
msg = input("输入要发送的消息: ")
ser.write(msg.encode('utf-8')) # 发送消息
print("已发送:", msg)
time.sleep(1) # 发送间隔
except KeyboardInterrupt:
print("程序终止")
finally:
ser.close()
计算机B(接收端)
下面是计算机B的代码示例,它将接收计算机A发送的消息。
python
import serial
# 设置串行端口和波特率
ser = serial.Serial('COM2', 9600) # 根据实际情况修改端口号
try:
while True:
if ser.in_waiting > 0: # 检查是否有数据可读
msg = ser.read(ser.in_waiting).decode('utf-8') # 读取消息
print("接收到的消息:", msg)
except KeyboardInterrupt:
print("程序终止")
finally:
ser.close()
注意事项
1. 串口配置:请确保`COM1`和`COM2`替换为你实际使用的串口号,波特率(如9600)应在两台设备上保持一致。
2. 硬件连接:确保两台计算机通过串行线正确连接。
3. 权限问题:在某些操作系统中,访问串行端口可能需要管理员权限。
4. 异常处理:在实际应用中,可以增加更多的异常处理来增强程序的稳健性。
运行程序
1. 在一台计算机上运行计算机A的代码,打开终端或命令行窗口。
2. 在另一台计算机上运行计算机B的代码,打开另一个终端或命令行窗口。
3. 在计算机A中输入消息后,计算机B应能够接收到这些消息。
此代码仅为基本示范,实际应用中可能需要根据具体需求进行更改和完善。

查看详情

查看详情