基于VC的串口编程课程设计 联系客服

发布时间 : 星期三 文章基于VC的串口编程课程设计更新完毕开始阅读1d71ddcd58f5f61fb73666a0

停止位这样一些附加位,使得传输效率变低了,只有约80%。因此,起止协议一般用在数据速率较慢的场合(小于19.2kbit/s)。在高速传送时,一般要采用同步协议。

(2)面向比特的同步协议

特点与格式:特点是所传输的一帧数据可以是任意位,而且它是靠约定的位组合模式,而不是靠特定字符来标志帧的开始和结束,故称“面向比特”的协议。

帧信息的分段SDLC/HDLC的一帧信息包括以下几个场(Filed),所有场都是从有效位开始传送。 3 VC++软件简介 3.1 VC++6.0

VC++6.0是Microsoft公司推出的一个基于Windows系统平台、可视化的集成开发环境,它的源程序按C++语言的要求编写,并加入了微软提供的功能强大的MFC(Microsoft Foundation Class)类库。MFC中封装了大部分Windows API函数和Windows控件,它包含的功能涉及到整个Windows操作系统。MFC不仅给用户提供了Windows图形环境下应用程序的框架,而且还提供了创建应用程序的组件,这样,开发人员不必从头设计创建和管理一个标准Windows应用程序所需的程序,而是从一个比较高的起点编程,故节省了大量的时间。另外,它提供了大量的代码,指导用户编程时实现某些技术和功能。因此,使用VC++提供的高度可视化的应用程序开发工具和MFC类库,可使应用程序开发变得简单。

在VC++中有两种方法可以进行串口通讯。一种是利用Microsoft公司提供的ActiveX控件 Microsoft Communications Control。另一种是直接用VC++访问串口。下面主要简述前一种方法。

3.2 VC++的Microsoft Communications Control控件

Microsoft公司在WINDOWS中提供了一个串口通讯控件,用它,我们可以很简单的利用串口进行通讯。在使用它之前,应将控件加在应用程序的对话框上。然后再用ClassWizard 生成相应的对象。现在我们可以使用它了。该控件有很多自己的属性,可以通过它的属性窗口来设置,也可以用程序设置。用程序设置,更灵活。以下介绍设置中遇到的几个相关函数。 SetCommPort:指定使用的串口。

- 4 -

GetCommPort:得到当前使用的串口。

SetSettings:指定串口的参数。一般设为默认参数\,N,8,1\。这样方便与其他串口进行通讯。 GetSettings:取得串口参数。

SetPortOpen:打开或关闭串口,当一个程序打开串口时,另外的程序将无法使用该串口。

GetPortOpen:取得串口状态。

GetInBufferCount:输入缓冲区中接受到的字符数。

SetInPutLen:一次读取输入缓冲区的字符数。设置为0时,程序将读取缓冲区的全部字符。

GetInPut:读取输入缓冲区。

GetOutBufferCount:输出缓冲区中待发送的字符数。 SetOutPut:写入输出缓冲区。 第二部分:编程与调试 1 编辑程序

1.1使用MSComm控件编程过程,如图4

图4 工作流程图

- 5 -

1.2建立工程

打开VC++6.0建立基于对话框的MFC应用程序mytest,如图5-图10

图5

图6

- 6 -

图7

图8

- 7 -