串口 助手 接收
好不容易把接收的显示搞定了,但是不能显示16进制,不知道为何,上图,上代码
接收代码
def SerRead(self):
while self.ser.alive:
n = self.ser.serSer.inWaiting()
#print ("n=%s" % n)
try:
self.receive_data = ''
if n:
#print u"开始读取"
self.receive_data += self.ser.serSer.read(n).replace(binascii.unhexlify("00"), "")
print ("receive_data is %s" % ord(self.receive_data))
if self.m_rcvBox.GetValue() == 1:
print 'hex16'
self.receive_data = self.receive_data - 18
print 'read5'
print ("receive_data1 is %s" % (self.receive_data))
self.m_rcvtext.AppendText( self.receive_data )
print 'read6'
self.receive_data = ""
print 'read end'
except Exception as e:
#logging.error(e)
print 'read error'
self.receive_data = ""
self.ser.stop()
self.ser = None
我设定的是自发自收,有个问题,本来是串口发送实现任意个发送的,但是接收只能收1个,多个就出异常,见图
很是不解。哪位高手不吝指点一下。
发稿与2018年1月26日深夜
更多回帖