6、数据会附加到数据缓冲区的尾部。可以使用setReadBufferSize()方法限制内部读缓冲区的大小。串口数据读取的另一个关键是读取的时机的选择,这通常有两种选择,一是用一个循环不断的读取串口直到接收到所有需要的数据,但这会阻塞掉其他任务,一般只用于非GUI的应用;另一种选择是使用Qt强大的信号槽机制,连接QSerialPort的readyRead()信号到自己的串口数据读取槽函数,这样串口一旦接收到数据,槽函数就会被调用,在这里可以编写串口接收数据的处理代码,可以在该函数中,将收到的数据存入一个数据队列,方便后续对数据的解包操作,可参考如下代码。 v