1 #include "readwrteat.h" 2 ReadWrteAT(QObject * parent)3ReadWrteAT::ReadWrteAT(QObject *parent):QObject(parent) 4 { 5 6 } 7 ~ReadWrteAT()8ReadWrteAT::~ReadWrteAT() 9 { 10 this->stop(); 11 } 12 processMessage(const QString & info)13void ReadWrteAT::processMessage(const QString &info) 14 { 15 m_message += info; 16 QByteArray cmdData; 17 18 QString cmd; 19 for(int i=0; i<m_message.size(); i++) 20 { 21 cmdData += m_message.at(i); 22 if(cmdData.right(2)=="OK" || cmdData.right(5) =="ERROR") 23 { 24 cmd = getCmd(); 25 this->cmdData(cmd, cmdData); 26 } 27 } 28 //保存未处理完消息. 29 m_message = cmdData; 30 } 31 getCmd()32QString ReadWrteAT::getCmd() 33 { 34 QString result; 35 if(m_cmds.size() >0) 36 { 37 result = m_cmds.takeFirst(); 38 } 39 return result; 40 } 41