首先上位机中通过新建一个tcpserver:
tcpServer = new QTcpServer(this);来实现与下位机的对接。
connect(tcpServer,SIGNAL(newConnection()), this, SLOT(sendFortune()));
建立一个新的QTcpSocket:
tcpServerConnection=new QTcpSocket(this);
一般产生的信号都要包括以下四个(三个connect,和一个监听,先监听)
tcpServerConnection = tcpServer->nextPendingConnection();//设置监听
connect(tcpServerConnection,SIGNAL(disconnected()),tcpServerConnection,SLOT(deleteLater()));
connect(tcpServerConnection,SIGNAL(readyRead()),this,SLOT(Read_Data()));//当有数据到来时,触发slot
connect(tcpServerConnection,SIGNAL(error(QAbstractSocket::SocketError)),this,SLOT(DisplayError(QAbstractSocket::SocketError)));
当tcpServer和下位机的tcpSocket建立了通讯的时候发出newConnection()信号,出发槽信号