关于bcb开发串口通讯(用Mscomm)的问题?
关于bcb开发串口通讯(用Mscomm)的问题?
楼主zhaotiequan(玉米棒子)2002-10-08 17:18:29 在 C++ Builder / 基础类 提问 我得到一些关于 Mscomm 控件的资料,
可是不知道哪里能得到这个控件。
请告知: 问题点数:0、回复次数:5Top
1 楼szbug(深圳虫)回复于 2002-10-08 17:27:23 得分 0
这个是一个ocx控件,只要装了vc或者vb就应该能在系统内找到那个xxcommx.ocx这个文件,把它安装到BCB里就行了。
不过奉劝一句哦。。听说那个控件很烂,很不稳定,所以建议自己用Win32API,而且我最近正在写一个串口通讯的控件,快写完了,还没测试,如果你不急的话可以等一等。。。。呵呵Top
2 楼spring_y(蹭分也要蹭到一颗星)回复于 2002-10-08 17:29:52 得分 0
你可以安装一下VB试试Top
3 楼zhaotiequan(玉米棒子)回复于 2002-10-09 10:26:38 得分 0
我第一次做这个读一个温度仪表的数据,用Rs232 三条线简单的连接
可是这个程序比较的生 ,他有 一个起始位+八个数据位+一个奇偶位+一个停止位, 我不知道如何去编了。
不知道有没有程序送我一个 看看Top
4 楼clong320(clong320)回复于 2002-10-09 10:42:21 得分 0
VB中有一个控件MSComm(图标是一个小黄电话),它可以帮你完成普通的串口传输功能.在BCB中要用VB的控件,在菜单中点Component-->Import ActiveX Control在打开的框中找到你想要的Microsoft Comm Control6.0(在C:\Windows\System\Mscomm32.ocx)然后直接安装就可以了,安装时将出现Package - dclusr50.bpk窗体提示你,此时需要点窗口式具栏上的Install图标进行最后安装, 否则在在组件板的Activex上找不到小黄电话的图标了。注意,前提是你必须要装了VB或者有它的库,否则你可找不到的然后你就可以在组件板的Activex中看到一个小黄电话的图标了。
它是不可见的控件,它有不少属性,不过我认为最关键的几个属性就是CommPort---设置或返回通讯端口号。Settings---以字符串形式设置或返回波特率、奇偶校验、数据位和停止位。PortOpen---设置或返回通讯端口的状态,以及打开和关闭端口(BOOL型)。Input---从接收缓冲区返回和删除字符。Output
---向缓冲区写一个字符串。这五个属性就可以帮你完成简单的串口传送接收(当然,你要保证你的传、收的可靠性,你还需要借助其他的属性,这些属性可以在VB中得到,自己去看吧:)下边我将介绍一下怎么来用这个控件,以及在程序中怎么组织程序, 首先,你要建立一个新的工程,然后把MSComm控件放到窗体上,别忘了再放一个Button控件(Name属性就是Button1)。好了,双击Button1,得到如下:
(请注意:本例的工程文件为Project1.bpr窗体文件为Unit.cpp头文件为Unit.h)
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AnsiString buff; //****************************声明了一个缓冲,请注意,一定要设置为全局变量
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
MSComm1->CommPort=1;
MSComm1->Settings="9600,N,8,1";
MSComm1->PortOpen=true;
for(int i=0;i<=9;i++)
{
buff=i;
MSComm1->Output=buff;
}
MSComm1->PortOpen=false;
}
//---------------------------------------------------------------------------
运行此程序,当你点击按钮后,会发送数据(你可以在网上下载一个测试串口通讯的软件)
Top
5 楼zhaotiequan(玉米棒子)回复于 2002-10-09 12:46:29 得分 0
我想用 win API 在bcb编程 不用(特殊的控件就像MSComm)不知道如何做Top
-
相关文章
2秒记住本站域名
玩过泡泡龙吗?Readygo?Go! 再加上.Com.Cn的后缀,那就是大名小顶的readygo.com.cn
