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

向串口传值有关问题

2013-04-21 
向串口传值问题char ch_OutBuffer[]{ 0xff, 0x01, 0x00, 0x04, 0xff, 0x00, 0x04 }DWORD w_BytesWrite

向串口传值问题


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

为什么接受到的是 0xff 0x01 0x00 0x04
丢掉了三个字节?

很奇怪 求大神帮忙~~~
[解决办法]
调试看看w_BytesWrite传回的值是多少。
[解决办法]
writerfile(...)里面第三和第四个参数用不同变量来表示下,或者做一个循环写入,看还是不是这样
[解决办法]
0xff 把这个先去掉,看是否正常?
[解决办法]
可能是你的下位机视0xff为一个数据包的起始,你最好直接调试看看下位机串口所接收的数据。

引用:
引用:调试看看w_BytesWrite传回的值是多少。
传回来的值是7
我试了下 让w_BytesWrite为1、2、3、4...
发现 w_BytesWrite小于等于4的时候,传出的字节和返回值都对
但大于4以后就只能传出4个字节 而w_BytesWrite的返回值是对的
有点困惑....求教...

热点排行