字体
第(4/5)页
关灯
   存书签 书架管理 返回目录
 号量对象。CSemaphore 只有一个构造函数CSemaphore:: CSemaphore,它的函数原型如下:

    CSemaphore::CSemaphore(

    LONG lInitialCount = 1,

    LONG lMaxCount = 1,

    LPCTSTR pstrNcom = NULL,

    LPSECURITY_ATTRIBUTES lpsaAttributes = NULL

    );

    函数中主要参数的意义如下。

    ? lInitialCount:指定Semaphore 对象初始的使用数目。必须大于等于零,小于等于

    lMaxCount。

    ? lMaxCount:指定Semaphore 对象最大的使用数目

    ? pstrNcom:指定Semaphore 对象的名称。

    ? lpsaAttributes:指定Semaphore 对象的安全属xìng。

    枫叶文学网www.fywxw.com

    第9 章 多线程

    ·243·

    9.3.6 示例:串口通信

    本节结合前面介绍的多线程计数,介绍Windows 串口通信技术,通过建立多个线程,利

    用串口进行数据的发送。通过使用Mutex 控制串口的发送,使得同一时间只有一个线程利用

    串口发送数据。下面给出详细的过程。

    实例9-3:串口通信实例。源代码在光盘中“\09\实例9-3\SComm”目录下。

    1.创建工程

    ? 首先利用VC++的AppWizard 创建一个基于对话框的工程SComm。所有设置都采用默

    认选项。

    ? 为对话框加入串口控件。VC++的控件工具栏并没有包含串口控件,一次首先要将它

    加入工具栏中。选择“Project”->“Add To Project”->“Components and Controls”,

    如图9-4 所示。

    图9-4 添加控件

    ? 在文件打开对话框中选择“Microsoft Communications Control, version 6.0”,如图9-5

    所示,单击“Close”按钮关闭对话框。

    ? 为VC++chā入控件后,控件工具栏上多出了一个图标,如图9-6 所示。

    图9-5 chā入MSComm 控件 图9-6 chā入控件后的控件工具栏

    枫叶文学网www.fywxw.com

    Visual C++ 6.0 程序设计从入门到精通

    ·244·

    ? 为对话框添加控件,界面设计如图9-7 所示,控件的属xìng如表9-7 所示。

    ? 为程序添加选择串口对话框资源,添加一个ComboBox 串口让用户选择使用,创建

    CCommSettingDlg 类。

    图9-7 对话框界面设计

    表9-7 对话框控件列表

    ID 属xìng或作用 控件类型

    IDC_STATIC 接收数据 组合框

    IDC_STATIC 发送数据 组合框

    IDC_SENDDATA 发送的数据 编辑框控件

    IDC
上一页 目录 下一页