VS 2010中使用MSCOMM串口控件实现串口通信
来源:互联网 发布:linux如何查找文件 编辑:程序博客网 时间:2024/04/29 05:02
注意:Mscomm控件在VC6.0里面生成的类和VS2010里面生成的类不一样。准确的说是封装的操作名字和使用方式有点不一样。
以对话框程序为例,下面试着在vs2010下使用该控件(控件在使用之前必须要注册)。
第一步:
创建对话框程序,画好编辑框等控件。
第二步:
插入MSCOMM控件,添加控件相关的类。并为控件添加好变量。
第三步:
添加消息处理函数,这里要注意的是MSCOMM控件的响应函数要右击控件选择添加事件处理函数,消息类型选择为OnComm类型。
下面是各个函数的实现:特别注意一下这段:
void CCommTeatDlg::OnCommMscomm1() { // TODO: 串口消息处理//常数 值 描述 //comEvSend 1 发送事件。 //comEvReceive 2 接收事件。 //comEvCTS 3 clear-to-send 线变化。 //comEvDSR 4 data-set ready 线变化。 //comEvCD 5 carrier detect 线变化。 //comEvRing 6 振铃检测。 //comEvEOF 7 文件结束。 short curEvent =m_com.get_CommEvent(); switch(curEvent) { case CMscomm1::comEvReceive: EvReceiveHandle(); //串口接收处理示例 break; } }
//接收到字符处理;void CUSARTDlg::EvReceiveHandle(void) { // TODO: 在此处添加消息处理程序代码VARIANT variant_inp;COleSafeArray safearray_inp;LONG len,k;BYTE rxdata[2048]; //设置BYTE数组 An 8-bit integerthat is not signed.CString strtemp;//variant_inp=m_com.get_Input(); //读缓冲区safearray_inp=variant_inp; //VARIANT型变量转换为ColeSafeArray型变量len=safearray_inp.GetOneDimSize(); //得到有效数据长度for(k=0;k <len;k++)safearray_inp.GetElement(&k,rxdata+k);//转换为BYTE型数组for(k=0;k <len;k++) //将数组转换为Cstring型变量{BYTE bt=*(char*)(rxdata+k); //字符型strtemp.Format(_T("%02x"),bt);//将字符送入临时变量strtemp存放 m_RxStr+=strtemp; m_RxStr+=" ";//m_strRXData+=strtemp; //加入接收编辑框对应字符串}SetDlgItemText(IDC_Rx,m_RxStr);}
[cpp] view plain cop
0 0
- VS 2010中使用MSCOMM串口控件实现串口通信
- 在VS2010中使用MSComm控件实现串口通信
- MFC中利用MSComm控件实现串口通信的例子
- VS2010中MSCOMM 串口通信控件的注册使用
- C#串口通信:MSComm控件使用详解
- C#串口通信:MSComm控件使用详解
- C#串口通信:MSComm控件使用详解
- C#串口通信:MSComm控件使用详解
- vc2010串口通信(使用mscomm控件)
- 串口通信-MSComm控件使用详解
- vc2010串口通信(使用mscomm控件)
- 使用MSComm控件进行多串口通信
- 如何使用串口通信控件Mscomm
- 串口通信编程(1):使用MSComm控件
- vc2010串口通信(使用mscomm控件)
- 串口通信-MSComm控件使用详解
- 串口通信-MSComm控件使用详解
- 在VS2008中使用MSComm实现串口通信
- 裴波那契数递归与非递归的实现
- Objective-C 消息转发机制
- 第一周:[leetcode] 42. Trapping Rain Water
- Python数据结构:序列(列表[]、元组())与映射(字典{})语法总结
- ARM_Linux开发之NFS应用
- VS 2010中使用MSCOMM串口控件实现串口通信
- 解决一些Grub修复的问题
- Spring MVC 中的 forward 和 redirect
- MySQL 中NULL和空值的区别
- PAT甲级练习1055. The World's Richest (25)
- 安排课程
- Linux常用命令大全
- [BZOJ1563][NOI2009]诗人小G(dp+决策单调性)
- Yahoo军规