首页 新闻 赞助 找找看

求 C++ 串口通讯程序 最好是VS2010的

0
悬赏园豆:50 [已解决问题] 解决于 2012-09-14 13:13

用C++实现

以下是 C# 中用 SerialPort 类 实现的

RunningPort--当前的串口

发送协议::

 RunningPort.DiscardInBuffer();//释放 缓存区域
 RunningPort.DiscardOutBuffer(); //释放 缓存区域

 //向缓存区域写入 协议 byteProtocolContent-》byte 数组
 RunningPort.Write(byteProtocolContent, 0, byteProtocolContent.Length);

 

接收协议::

ReceivedDataByte = new byte[RunningPort.BytesToRead];

//从缓存区读取 返回的值
RunningPort.Read(ReceivedDataByte, 0, ReceivedDataByte.Length);

需求::

用C++ 实现上述过程,主要是 Write 、Read 连个函数

即:协议是如何接收和返回的。

最好是源码,相应的C++类库也凑和吧,本人不会C++。。。 ~~~~(>_<)~~~~ 。。。

大家多帮帮忙啦 ,在线等。O(∩_∩)O~

提供源码,正确解决的一定加分!!

< >
分享
最佳答案
0

我有相关C++代码

收获园豆:45
眯妖 | 小虾三级 |园豆:820 | 2012-09-14 12:29

19442851@163.com 麻烦发一份 谢谢

二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 12:33

@眯妖: 多谢多谢!! 看不懂也得看啊, 后天就要交差了。。

\(^o^)/~

二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 12:39

@二十三号同学: 已收到。谢谢啦。我先看看。一定给分!
O(∩_∩)O~

二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 12:43

@二十三号同学: 

核心代码在commtestDlg.cpp里面

眯妖 | 园豆:820 (小虾三级) | 2012-09-14 12:44

@眯妖: 再次感谢一下啦 ! O(∩_∩)O~

二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 13:12
其他回答(2)
0

你把C#的代码(包括.Net Framework)反编译下,然后用C++来写就行了。

 

http://soft.yesky.com/lesson/254/2310754.shtml

 

如果允许使用C#的话,你可以用C#做个COM组件,然后用C++调用。

收获园豆:5
Launcher | 园豆:45045 (高人七级) | 2012-09-14 11:44

C#做个COM组件之后 C++ 调用的

实际通讯中,是不是还是用的 C# SerialPort 类的  Write 、Read函数 实现的 读取协议?

支持(0) 反对(0) 二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 11:49

@二十三号同学: 基本是这个意思,就是你原来用C#制作的串口通讯程序封装成一个COM组件,C++程序就可以直接调用你这个COM组件。当然,这可能不是一个合适的解决方案。

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2012-09-14 11:52

@Launcher: 反编译,这个。。。对我来说更难 ~~~~(>_<)~~~~ 

水平太菜了我

支持(0) 反对(0) 二十三号同学 | 园豆:974 (小虾三级) | 2012-09-14 12:36

@二十三号同学: ILSpy

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2012-09-14 13:13
0

就用 自带的 串口控件也还不错,何必自己写呢 

古悦 | 园豆:148 (初学一级) | 2013-08-16 08:12
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册