修改RS232通信
This commit is contained in:
@@ -55,9 +55,7 @@ CPSerial::CPSerial()
|
||||
m_RXTimeout = CS_DEFAULT_RX_TIMEOUT;
|
||||
m_TXTimeout = CS_DEFAULT_TX_TIMEOUT;
|
||||
m_iRecvState=FALSE;
|
||||
m_csRecv=_T("");
|
||||
m_iRecvByte=0;
|
||||
m_iReadDataNum=255;
|
||||
m_iRecvBytes=0;
|
||||
// Everything else set to NULL
|
||||
m_ThreadHandle = NULL;
|
||||
//m_TXHead = NULL;
|
||||
@@ -482,33 +480,19 @@ void CPSerial::ReceiveTask( void )
|
||||
void CPSerial::OnReceive()
|
||||
{
|
||||
// Dummy OnReceieve if not used
|
||||
char s[255]={0};
|
||||
char s[MAX_RECIEVE_BUFFER_SIZE]={0};
|
||||
|
||||
CStringA csTemp;
|
||||
s[1]='\0';
|
||||
CurrentPointer = 0;
|
||||
int num=0;
|
||||
num = ReadPort(s, MAX_RECIEVE_BUFFER_SIZE);
|
||||
|
||||
num = ReadPort(s, m_iReadDataNum);
|
||||
//for (int i=0;i<num;i++)
|
||||
//{
|
||||
// csTemp
|
||||
// m_csRecv+=csTemp;
|
||||
//}
|
||||
|
||||
if (num!=0)
|
||||
if (num>0)
|
||||
{
|
||||
for (int i=0;i<255;i++)
|
||||
{
|
||||
m_RecvData[i]=0;
|
||||
}
|
||||
for (int i=0;i<num;i++)
|
||||
{
|
||||
m_RecvData[i]=s[i];
|
||||
}
|
||||
csTemp.Format("%s",m_RecvData);
|
||||
m_csRecv=csTemp;
|
||||
m_iRecvByte=num;
|
||||
memset(m_RecvData,0,MAX_RECIEVE_BUFFER_SIZE);
|
||||
memcpy(m_RecvData,s, num);
|
||||
m_iRecvBytes=num;
|
||||
|
||||
m_iRecvState=TRUE;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user