VC++调用phantom控件控制RCX机器人

来源:互联网 发布:知乎的收藏夹 编辑:程序博客网 时间:2024/06/05 08:42

 

利用lego提供的ActiveX控件phantom.ocx,高级语言(如VC,VB,DephiC#)等也可以控制RCX.以下通过一个简单的例子,演示了通过MFC控制RCX.

第一步:下载ActiveX控件phantom.ocx。该控件支持USB 红外传输.(还有一个控件叫spirit.ocx,但不支持usb红外传输。)

下载地址:

第二步:注册控件。在“开始”——“运行”里,输入“regsvr32 路径名/phantom.ocx”。如果phantom.ocx保存在C盘,则输入”regsvr32 c:/phantom.ocx”.

第三步:将注册好的控件加入工具箱。打开vs2008,新建一个MFC对话框应用程序。然后在工具箱上点右键,选择“选择项”,然后选择“COM组件”,找到phantomctrlclass。把它加入工具箱。

第四步:把phantom控件从工具箱拖至对话框中,右键点击该控件,选择添加变量。变量名为ctrl1.

第四步:然后删除对话框中的“确定”和“取消”按钮和static控件。往对话框中加入一个button控件。双击button控件,在OnBnClickedButton1()函数中输入代码。

void CphantomDlg::OnBnClickedButton1()

{

     ctrl1.InitComm();//初始化串口

     ctrl1.put_ComPortNo(0); //选择通信端口,0代表USB

     ctrl1.put_LinkType(0);//选择通信类型

     ctrl1.SetFwd(L"0");//设定口马达转动转动方向,0代表A端口。

     ctrl1.On(L"0");//A端口输出电源。

     sleep(1000);//延时1

     ctrl1.Off(L"0");关闭输出。

     ctrl1.CloseComm();

     // TODO: 在此添加控件通知处理程序代码

}

至此,简单的控制RCX已初告成功。

 

原创粉丝点击