首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

关于使用WriteFile发送数据的有关问题

2012-03-14 
关于使用WriteFile发送数据的问题String Tempchar *SendDataintlnDWORD lrc,BSif (hComm0) return

关于使用WriteFile发送数据的问题
String Temp;
  char *SendData;
  int ln;
  DWORD lrc,BS;
  if (hComm==0) return; //检查Handle值
  Temp = mSend->Text;//取得发送的字符串
 
  SendData=Temp.c_str(); //字符串转换
  BS = Temp.Trim().Length();
  WriteFile(hComm,SendData,BS,&lrc,NULL);

使用串口助手接收所发送的数据时:如果不选择16进制显示一切正常,如果选择16进制显示会显示相应的ASCII码,不清楚是什么原因。
例: 如果发送0011 串口16进制显示为30 30 31 31
  如果发送00 11 串口16进制显示为30 30 20 31 31 //空格都显示上了
本人想使用WriteFile发送00 11,用串口助手接收到的是16进制数据00 11
本人刚刚接触C++Builder,想做一个串口通讯,不知那位大侠能帮帮忙指点一二.

 

[解决办法]
SendData[0]=0x00;
SendData[1]=0x11;


然后再发送

你在编辑框里填入00 11,发送的时候是字符型的,所以,接受的时候,显示的是ascii吗

热点排行