- 論壇徽章:
- 0
|
大家好,前一段時(shí)間做了簡(jiǎn)單的RS232C串口顯示程序,效果還可以
這兩天想把GPGAA格式數(shù)據(jù)中的時(shí)間提取出來(lái),但是出現(xiàn)了錯(cuò)誤,不知道怎么回事,希望各位朋友幫忙,代碼如下
void CSCommTestDlg::OnComm()
{
// TODO: ]
VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
int id=0;//逗號(hào)
BYTE rxdata[2048];
CString strtemp;
if(m_ctrlComm.GetCommEvent()==2)
{
variant_inp=m_ctrlComm.GetInput();
safearray_inp=variant_inp;
len=safearray_inp.GetOneDimSize();
for(k=0;k<len;k++)
safearray_inp.GetElement(&k,rxdata+k);
for(k=0;k<len;k++)
{
BYTE bt=*(char*)(rxdata+k);
strtemp.Format("%c",bt);
m_strRXData+=strtemp;
m_strRXData1+=strtemp;
if(strtemp=='$')
{
id=0;
m_strRXData1.Empty();
m_strRXData2.Empty();
}
if(strtemp==',')
{
id++;
}
switch(id)
{
case 1:
m_strRXData2+=strtemp;
break;
default:
break;
}
}
}
UpdateData(FALSE);
}
其中RXDATA是我設(shè)置的三個(gè)對(duì)話(huà)框的名字,多謝大家了 |
|