加个延时试下
serial.iswaiting启动接收,并返回接收数据的长度,然后用read(n)将这指定的数据读出来。但现实中的问题是两者的中间需要加延时(根据波特率计算发送内容所需的时间,这样就不会出现延时过短读出的不全;延时时间长了就会出现前后帧发出的内容重合到一起),此外如果需要判断什么时候串口不活动,可以再serial.iswaiting一直延时(超过几个字符的传送时间,软件延时计数器累加),而在循环体外将计数器清零,在累计的几个字符时间接受的数据长度还为0则认为通讯结束。
在Python3.7的环境下,每次都是执行到serial.read()就卡住了。
import serial
if name == '__main__':
serial = serial.Serial('COM3',115200)
if serial.isOpen():
print('串口打开成功!\n')
f = open('./test.txt','a')
print(1)
#pass
else :
print('串口打开失败!\n')
try:
getBytes=b''
while True:
count = serial.inWaiting()
if count > 0:
data = serial.read(count)
print('数据读取成功')
if data != getBytes:
print(data)
f.write(data.decode('utf-8'))
f.write('\n')
getBytes=data
except KeyboardInterrupt:
if serial != None:
f.close()
serial.close()
- 点赞
- 写回答
- 关注问题
- 收藏
- 复制链接分享
- 邀请回答
1条回答
为你推荐
- Python3.7中min()和max()实际上是如何推算的?
- python
- 3个回答
- python3.7在电脑屏幕指定区域截屏并保存
- python
- 3个回答
- 执行python manage.py runserver 0.0.0.0:8000无响应
- python3.8 字符串输入了中文字符 为什么没有报错
- python
- 2个回答
- 关于python自动化运维的一些问题
- python更新pip失败,困扰了我好久
- python
- 8个回答
- python 二维数组操作问题
- python
- 1个回答
- 关于Mac下python pip版本问题以及pycharm安装python第三方库失败问题
- python
- 1个回答
- python 3.7,日期格式处理和计算
- python
- 2个回答
- 报错 ,python 3.7,求解答
- python
- 1个回答
- centos7.6 安装python3.执行/configure时,gcc异常
- python中的waitKey语句总是出错,为何我执行完出来画面后就卡了?
- python
- 1个回答
- python3.7 安装requests报错,求大神支招?
- python
- 1个回答
- python3.7 互斥锁问题
- python
- 1个回答
- python3.7)print为什么不能打印出内容?
- python
- 3个回答
- python3.7 pycharm 环境配置中一直有错误提示
- python
- 1个回答
- python3.7爬虫 使用 selector.xpath('')爬取-线上等
- python
- 2个回答
- 有关python3.7中的输入问题
- python
- 2个回答
- win10环境下 python3.7安装pymssql遇到的问题
- Python 画一朵彩色玫瑰花
- python
- 1个回答