VC++MFC用API函数做串口通行,传递16进制数据问题
WriteFile函数写串口时我用的是char型数组存放数据的,把16进制数据进行单个字符拆分再放到char型数组中,如我发送0100AE,我先把他们拆成0100AE,让...
WriteFile函数写串口时我用的是char型数组存放数据的,把16进制数据进行单个字符拆分再放到char型数组
中,如我发送01 00 AE,我先把他们拆成0 1 0 0 A E,让后放到6个字符的char数组中,接收端直接用char型数组接收字符,然后对字符进行处理还原成原来的要发的16进制字符串。这种方法我试过不会出错,但感觉这个做传输的数据量变大了,然后直接把16进制的数放到char型数组,接收端readfile函数还是用char型函数接收,接收的是ascii,下面就遇到问题了
1.数据00那个发送不了。直接从00那断掉了;
2.readflie函数能不能直接用BYTE型数组接收二进制流,怎么用
3.怎么用WriteFlie函数发送16进制数据,我那种方式是不是效率很低,有什么好的方法没。
求大神指点。以前用VB做串口时直接调用控件的,好多参数没这么仔细研究过,望大神指教。 展开
中,如我发送01 00 AE,我先把他们拆成0 1 0 0 A E,让后放到6个字符的char数组中,接收端直接用char型数组接收字符,然后对字符进行处理还原成原来的要发的16进制字符串。这种方法我试过不会出错,但感觉这个做传输的数据量变大了,然后直接把16进制的数放到char型数组,接收端readfile函数还是用char型函数接收,接收的是ascii,下面就遇到问题了
1.数据00那个发送不了。直接从00那断掉了;
2.readflie函数能不能直接用BYTE型数组接收二进制流,怎么用
3.怎么用WriteFlie函数发送16进制数据,我那种方式是不是效率很低,有什么好的方法没。
求大神指点。以前用VB做串口时直接调用控件的,好多参数没这么仔细研究过,望大神指教。 展开
2个回答
展开全部
WriteFile 是不是这个
BOOL WINAPI WriteFile(
__in HANDLE hFile,
__in LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out LPDWORD lpNumberOfBytesWritten,
__in LPOVERLAPPED lpOverlapped
);
16进制数据怎么存放的 INT 类型 CHAR 类型
说清楚 我教你用二进Z的方法
BOOL WINAPI WriteFile(
__in HANDLE hFile,
__in LPCVOID lpBuffer,
__in DWORD nNumberOfBytesToWrite,
__out LPDWORD lpNumberOfBytesWritten,
__in LPOVERLAPPED lpOverlapped
);
16进制数据怎么存放的 INT 类型 CHAR 类型
说清楚 我教你用二进Z的方法
更多追问追答
追问
能具体说下么
追答
你没有回答我的问题
2014-05-09
展开全部
Visual C++_Turbo C串口通信编程实践
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询