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