网上下的串口助手 带源码的1.0版本不行 但是3.0版本可以。。
bbc.put_CommPort(3);
bbc.put_InBufferSize(1024);
if (!bbc.get_PortOpen()) bbc.put_PortOpen(true);
else AfxMessageBox(L"cannot open serial port");
bbc.put_InputMode(1);
bbc.put_Settings(L"4800,e,7,2");
bbc.put_RThreshold(1);
bbc.put_InputLen(0);
//初始化 VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
BYTE rxdata[2048];
CString strtemp;
if(bbc.get_CommEvent()==2)
{
variant_inp=bbc.get_Input();
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++)
{
if (rxdata[k]<=126&&rxdata[k]>=32)
{
abc+=rxdata[k];
} } }
UpdateData(FALSE);
//接受
试了好几种接受 根本就没反映 但是超级终端就能发送:
string a
bbc。发送(转换(a))我是想和亮度计通讯 在超级终端或者串口助手下 发送 MES 他就返回测量结果 可是我自己编写的就没有反映啊。。
bbc.put_CommPort(3);
bbc.put_InBufferSize(1024);
if (!bbc.get_PortOpen()) bbc.put_PortOpen(true);
else AfxMessageBox(L"cannot open serial port");
bbc.put_InputMode(1);
bbc.put_Settings(L"4800,e,7,2");
bbc.put_RThreshold(1);
bbc.put_InputLen(0);
//初始化 VARIANT variant_inp;
COleSafeArray safearray_inp;
LONG len,k;
BYTE rxdata[2048];
CString strtemp;
if(bbc.get_CommEvent()==2)
{
variant_inp=bbc.get_Input();
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++)
{
if (rxdata[k]<=126&&rxdata[k]>=32)
{
abc+=rxdata[k];
} } }
UpdateData(FALSE);
//接受
试了好几种接受 根本就没反映 但是超级终端就能发送:
string a
bbc。发送(转换(a))我是想和亮度计通讯 在超级终端或者串口助手下 发送 MES 他就返回测量结果 可是我自己编写的就没有反映啊。。
一步一步定位问题吧你可以先用你的串口程序与串口助手调试一下,看看问题在哪里