基于VB6的多媒体教室投影机控制程序设计及实现

时间:2022-10-25 12:58:27

基于VB6的多媒体教室投影机控制程序设计及实现

摘要:高校大批量多媒体教室的建成与投入运行,在一定程度上提高了课堂教学效率,改善了教学质量,对促进教学改革,提高教学效果起到了较大的作用。文章介绍了利用VB6串行通信编程的方法,对采用了RS-232接口的投影机进行串行通信的计算机控制软件开发,以控制投影机的开关机以及VGA信号和视频信号的互换。

关键词:VB6;多媒体教室;串行通信;投影机;软件开发;控制程序

中图分类号:TN141文献标识码:A文章编号:1009-2374(2010)03-0054-02

高校大批量多媒体教室的建成与投入运行,在一定程度上提高了课堂教学效率,改善了教学质量,对促进教学改革,提高教学效果起到了较大的作用。但广大教师在使用过程中总感觉到不太顺手,特别是投影机的开关机以及VGA信号和视频信号的互换。究其原因,主要是投影机遥控器使用时间一长,跑码现象严重,某些按键失灵,再加上人为的操作失误,常常造成投影机不能正常开机,从而影响投影机及灯泡的寿命。通过对采用了RS-232接口的投影机进行串行通信的计算机控制软件开发,来控制投影机的开关机以及VGA信号和视频信号的互换,可以大大减少上述现象的发生。本文采用了微软的Visual Basic6.0(简称VB6)来开发,以松下PT-U1X92投影机为例。

一、硬件连接与设置

位于投影机侧接口面板的串联接口和RS-232C接口规格相符,因此投影机能被与该接口相连的电脑控制,通过软件来控制投影机的开关机及VGA信号和视频信号的互换,在物理连接方面需要在投影机和计算机之间增加一条多芯的控制线,如图1所示。根据软件界面的提示,根据任务驱动类型,计算机向投影机发出控制信息,投影机根据控制信息执行相应的动作。

投影机串口的接口一般有3种形式,一是9针的标准接口,一个是8针的圆接口,另一个是15针的标准接口。9针的接口一般为:2脚为信号接收端(其中松下的投影机是3脚为信号接收端),5脚为地。8针的圆接口一般为:1脚为信号接收端,4脚为地,其中明基的是7脚为信号接收端,外壳为地。15针的接口为:13脚为信号接收端,10脚为地。

松下投影机控制端口与RS-232串行口连接示意图如图2所示,投影机方引脚2为发送数据,引脚3为接收数据,电脑方引脚2为接收数据,引脚3为发送数据,其中“发送数据”和“接收数据”是指计算机向投影机发送和接收投影机的数据。

二、投影机数据格式及控制指令

(一)数据基本格式

根据松下投影机使用说明书,从电脑发送到投影机的数据按图3所示格式传输:

(二)控制指令

电脑控制投影机的指令见表1:

(三)投影机控制代码

串口码有两种形式,一种是ASCII码,另一种是16进制码。根据数据传送格式和控制指令,可以计算出投影机的控制代码,以16进制码为例,见表2:

三、软件设计

VB6提供了许多供用户选择的控件(Customcontrol),这些控件以.OCX为文件后缀名,其中MSCOMM.OCX即是用于串行通信的控件。如果需要使用该控件,可将该控件添加到工具箱(toolbox)内,这样就可以利用该控件进行串行通信程序的设计。

通常我们以下面的步骤来使用VB的Mscomm控件作通讯控制:

加入通讯对象,也就是Mscomm对象。

设定通讯端口号,即CommPort属性。

设定传输速度等参数,即Settings属性。

设定其它参数:

开启通讯端口,即PortOpen 属性。

送出字符串或读入字符串,使用Input及Output属性。

使用完Mscomm通讯对象后,将通讯端口关闭。

根据以上的步骤,就可以构建自己的通讯传输系统了。

下面以松下投影机为例,说明如何进行串行通信程序的设计,该程序在Windows2000环境下已调试通过。

(一)设计用户界面

首先新建一个“标准EXE”工程,然后选择“工程/部件”菜单项,在“部件”对话框中选择Microsoft Comm Control 6.0即可添加MsComm控件;再在窗体中依次布置如下控件并设置其属性,见表3:

(二)程序设计

1.限于篇幅,只列出了部分程序代码。

窗口初始化

Private Sub Form_Load()

Form1.left=screen.width/2窗体的位置

Form1.top=screen.height/20

mPort = 1 ’ 使用串行口1

’波特率9600,无校验,8个数据位,1个停止位

MSComm1.Settings = "9600,N,8,1"

MSComm1.PortOpen = True’ 打开串行口

End Sub

2.投影机开控制代码

Private Sub Command1_Click()投影机开控制代码

Dim OP(5) As Byte

Dim lOP As Variant

OP(0) = &H2

OP(1) = &H50

OP(2) = &H4F

OP(3) = &H4E

lOP = OP

MSComm1.Output = lOP

End Sub

3.投影机关控制代码

Private Sub Command2_Click()

Dim C(5) As Byte

Dim LC As Variant

C(0) = &H2

C(1) = &H50

C(2) = &H4F

C(3) = &H46

C(4) = &H3

LC = C

MSComm1.Output = LC

End Sub

(三)程序简要说明

上述程序设置的端口通信协议为:9600波特率,无校验,8个数据位,1个停止位。当退出程序时,一定要关闭串行口,通过MSComm1.PortOpen=False完成。要实现完善的功能,必须进一步改进程序。

四、结语

投影机开关控制程序在浙江科技学院进行了试运行,通过一段时间的推广和应用,得到全校广大师生的认同和喜爱,简化了操作程序,减少了人为误操作,延长了投影机的使用寿命,节约了维护成本,具有很大的实用价值。

参考文献

[1]史舒人.多媒体教室遥控鼠标功能的开发[J].中国电化教育,2003,(10).

[2]艾德才.计算机硬件技术基础[M].北京:中国水利水电出版社,2000.

[3]谭浩强.计算机组成原理[M].北京:中国铁道出版社,2004.

[4]罗朝盛,余文芳,余平.Visual Basic 6.0程序设计教程[M].北京:人民邮电出版社,2002.

作者简介:董岩(1971-),女,山东滕州人,供职于北京信息管理学校。

上一篇:浅谈原油储备库工程高危作业风险控制 下一篇:饭店改造之钢结构设计与施工要点