COMTool icon indicating copy to clipboard operation
COMTool copied to clipboard

自动换行超时时间机制不对

Open zfz1120 opened this issue 2 years ago • 3 comments

经常出现连续数据帧被错误换行的情况。超时时间应该是前一个字节到下一个字节的间隔时间

zfz1120 avatar May 25 '22 06:05 zfz1120

应该和 #52 问题一样

Neutree avatar May 25 '22 08:05 Neutree

应该和 #52 问题一样

 length = max(1, self.com.in_waiting) 
 data = self.com.read(length) 
 if data: 
     t = time.time() 
     if length == 1 and not buffer: # just start receive 
         buffer += data 
         continue 
     buffer += data 
 if buffer and (time.time() - t > 0.001): # no new data in 1ms 
     try: 
         self.onReceived(buffer) 
     except Exception as e: 
         print("-- error in onReceived callback:", e) 
     buffer = b'' 

if buffer and (time.time() - t > 0.001): # no new data in 1ms 老哥,这个0.001应该是从界面上设置的自动换行时间啊

zfz1120 avatar May 30 '22 07:05 zfz1120

尝试修复了 fe37bf8a02fed6a4ed4c609204d61a323e46d569 , 可以试试是否符合预期

Neutree avatar Aug 21 '22 16:08 Neutree