贴一下 发送数据的代码
void CGKtDlg::OnReadregister(void)
{
BYTE buff[256];
CString temp;
CByteArray arraySend;
memset(buff, 0x00, 255);
Sleep(100);
buff[0]=0x01;
buff[1]=0x03;
buff[2]=0x00;
buff[3]=0x0A;
buff[4]=0x00;
buff[5]=0x02;
USHORT CRC=MBCRC16((UCHAR *)buff,6);//CRC校验
buff[6]=(CHAR)(CRC & 0xFF);
buff[7]=(CHAR)((CRC & 0xFF00)>>8);
arraySend.RemoveAll();
arraySend.SetSize(8);
m_txd="";
for(int i=0;i<8;i++)
{
arraySend.SetAt(i,buff[i]);
}
m_Comm.put_Output(COleVariant(arraySend));
for(int i=0;i<8;i++)
{
BYTE bt=*(char *)(buff+i);
temp.Format(_T("%02X "),bt);
m_txd+=temp;
}
m_txd+="\r\n";
int LineNum=TXD.GetLineCount();
if(LineNum<=14)
{
TXD.SetSel(-1,-1);
TXD.ReplaceSel(m_txd);
}
else
{
TXD.SetSel(0,-1);
TXD.Clear();
TXD.SetSel(-1,-1);
TXD.ReplaceSel(m_txd);
}
}
1 个解决方案
#1
安装个CommMonitor,监控一下,看看是没发出去还是下位机没收到。
#1
安装个CommMonitor,监控一下,看看是没发出去还是下位机没收到。