求助 串口发送hex数据

就喜欢小狮子 2013-04-14 03:41:38
需要向串口 hex发送: ff_01_00_04_ff_00_04 (_为空格)
我的代码

char ch_OutBuffer[]={0xff , ' ', 0x01 , ' ', 0x00 , ' ', 0x04, ' ',
0xff, ' ', 0x00, ' ', 0x04};
DWORD w_BytesWrite = 8;
WriteFile(hCom, ch_OutBuffer, w_BytesWrite, &w_BytesWrite, NULL);

但是没有收到数据。
我觉得是我ch_OutBuffer这个格式不对...

char ch_OutBuffer[]={'f ', 'f' , ' ', '0' , '1' ,' ' , '0', '0', ' ', '0', '4', ' '
, 'f', 'f', ' ', '0', '0', ' ', '0', '4'};

这样设置就没有16进制了。

就是串口助手里有一个选项“hex发送”这个的功能~~~
注:dcb已经设置无误。
...全文
1265 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
就喜欢小狮子 2013-04-14
  • 打赏
  • 举报
回复
引用 3 楼 baichi4141 的回复:
楼主你先弄清楚你要发送的数据是几个字节 如果是ff_01_00_04_ff_00_04这个字符串,那就是2+1+2+1+2+1+2+1+2+1+2+1+2=20个字节 如果是{0xff,0x01,0x00,0x04,0xff,0x00,0x04}这个字符数组,那就是7个字节 串口助手的“hex发送/显示”指的是“按十进制或十六进制来处理用户输入的字符串/显示接收到的数据”,说白了就是让你……
[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/2.gif][/img谢谢!
就喜欢小狮子 2013-04-14
  • 打赏
  • 举报
回复
引用 3 楼 baichi4141 的回复:
楼主你先弄清楚你要发送的数据是几个字节 如果是ff_01_00_04_ff_00_04这个字符串,那就是2+1+2+1+2+1+2+1+2+1+2+1+2=20个字节 如果是{0xff,0x01,0x00,0x04,0xff,0x00,0x04}这个字符数组,那就是7个字节 串口助手的“hex发送/显示”指的是“按十进制或十六进制来处理用户输入的字符串/显示接收到的数据”,说白了就是让你……
您说的很对!
baichi4141 2013-04-14
  • 打赏
  • 举报
回复
楼主你先弄清楚你要发送的数据是几个字节 如果是ff_01_00_04_ff_00_04这个字符串,那就是2+1+2+1+2+1+2+1+2+1+2+1+2=20个字节 如果是{0xff,0x01,0x00,0x04,0xff,0x00,0x04}这个字符数组,那就是7个字节 串口助手的“hex发送/显示”指的是“按十进制或十六进制来处理用户输入的字符串/显示接收到的数据”,说白了就是让你脑子里省点事少算一次进制转换,跟串口功能本身没有任何关系
图灵狗 2013-04-14
  • 打赏
  • 举报
回复
ch_OutBuffer这个格式并没有问题,w_BytesWrite应该为13才对。
就喜欢小狮子 2013-04-14
  • 打赏
  • 举报
回复
谁来抚慰下我幼小的心灵....

64,652

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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