请教向串口写数据时碰到的现象!

txhby0395 2003-09-29 01:52:45
自动打开了端口1(1200,E,1),点击"数据库"按钮,自动向端口写入"/?!\r\n",我通过端口调试程序也收到了数据,可是写入后会出现莫名其妙的错误,请指教!!!!

发送代码如下:
COMSTAT ComStat;
DWORD dwErrorFlags;
CString stringsend;
BYTE send[100];
memset(send,0,sizeof(send));
DWORD num=sizeof(send);
m_pInbuffer=(char*)send;
strcpy(m_pInbuffer,"/?!\r\n" );
//////////////////////////////////////////////
for(; ;)
{
ClearCommError(h_Com,&dwErrorFlags,&ComStat);
if(ComStat.cbOutQue==0)//发送缓冲区中的数据全部发送完毕
break;
}
WriteComm(m_pInbuffer,num);
delete []m_pInbuffer;

//其中m_pInbuffer类型为char*
...全文
25 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
txhby0395 2003-09-29
  • 打赏
  • 举报
回复
代码在:http://www.vchelp.net/cndevforum/subject_view.asp?subject_id=54496&forum_id=34
把其中的void CSEVC_DDlg::OnDatabase() 改为如下代码!!!!!!!!!!!!!!!!!!!
{
// TODO: Add your control notification handler code here
COMSTAT ComStat;
DWORD dwErrorFlags;
CString stringsend;
BYTE send[100];
memset(send,0,sizeof(send));
DWORD num=sizeof(send);
m_pInbuffer=(char*)send;
strcpy(m_pInbuffer,"/?!\r\n" );
//////////////////////////////////////////////
for(; ;)
{
ClearCommError(h_Com,&dwErrorFlags,&ComStat);
if(ComStat.cbOutQue==0)//发送缓冲区中的数据全部发送完毕
break;
}
WriteComm(m_pInbuffer,num);
delete []m_pInbuffer;}
zxm521b 2003-09-29
  • 打赏
  • 举报
回复
m_pInbuffer=(char*)send;
m_pInbuffer并不是new出来的,为什么要delete?

2,640

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 硬件/系统
社区管理员
  • 硬件/系统社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧