重构上面代码,读取串口并输出串口编号,打印是否连接成功
时间: 2024-02-21 13:01:25 浏览: 27
以下是重构后的代码,读取串口并输出串口编号,同时打印是否连接成功:
```python
import serial
import time
# 打开串口 com13,波特率为 9600
ser = serial.Serial('com13', 9600)
# 判断是否成功打开串口
if ser.isOpen():
print("Serial port " + ser.name + " opened successfully!")
else:
print("Failed to open serial port " + ser.name + " !")
# 待发送的消息列表
messages = [
"state=4 [MMPS,EE,EE]",
"state=4 [MMPS,3361232,51.288]",
"state=4 [MMPS,2814428,42.945]"
]
# 循环发送消息
while True:
for message in messages:
# 发送消息
ser.write(message.encode())
# 等待 1 秒钟
time.sleep(1)
# 检查是否发送成功
response = ser.readline().decode().strip()
if response != "OK":
print("Failed to send message: " + message)
print("Error: " + response)
# 关闭串口
ser.close()
```
这段代码在打开串口后,通过判断 `ser.isOpen()` 的返回值,输出串口编号和连接状态。同时,仍然循环发送消息,并检查发送结果。在程序结束时,通过 `ser.close()` 方法关闭串口。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)