pc与51的通讯问题(200分)

  • 主题发起人 主题发起人 fifa2000
  • 开始时间 开始时间
F

fifa2000

Unregistered / Unconfirmed
GUEST, unregistred user!
小弟接触delphi不久 想用spcomm做pc与51的通讯
请大虾给小弟指点指点
如果能给个例子,感激不尽
e-mail:xiaoflyfly@263.net


 
大虾情赐教呀
 
清讲讲我为什么打不开com2
由于鼠标占用com1,故我用com2,2口未接任何外设
我在from.creat写了:
comm1.commname:=2;
comm1.StartComm;
comm1.WriteCommData('abcdef',6);
在comm1SendDataEmpty里写了:
showmessage('over');
运行后总是出错: 'error open serial port'
我怀疑是2口已打开,故将comm1.startcomm注释
但若把 comm1.startcomm 注释掉后编译可通过,没有'over'的提示
哪位说说我错在哪里?
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
SPComm;

type
TForm1 = class(TForm)
Comm1: TComm;
procedure FormCreate(Sender: TObject);
procedure Comm1SendDataEmpty(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
comm1.commname:=2;
comm1.StartComm;
comm1.WriteCommData('abcdef',6);
end;

procedure TForm1.Comm1SendDataEmpty(Sender: TObject);
begin
showmessage('over');
end;

end.
 
我只用过MSCOMM通讯。没用过SPCOMM。请问MSCOMM和SPCOMM有何不同。
 
如你所说:先关闭串口,在打开
procedure TForm1.FormCreate(Sender: TObject);
begin
comm1.commname:=2;
comm1.stopcomm;
comm1.StartComm;
comm1.WriteCommData('abcdef',6);
end;
 
comm1.commname应该是String类型的,你确信
comm1.commname:=2;
可以通过编译?

在spcomm中串口名形式:'com1',
改成 comm1.commname:='com2';应该没有问题了。
 
liuge提出的应是问题的本质所在,川口名称应是'Com2'
(如果spcomm与MSCOMM命名规则相同应是'COM2:',可看一看
Delphi的帮助文件).
yansh提出了川口编程时应注意的事项,应保证川口关闭的前提
条件下才能打开。
你使用的是spcomm控件,我建议你改用WinAPI函数编写川口程序
那样会准确灵活的多,又不容易出错。而且,Delphi的优势也在
于此。
 
顺便给我个SPCOMM的例子,感激不尽
whqiu24@163.net
 
霹雳,liuge:
没错,正如你们所说的.
能否给一个spcomm的例子.
另,霹雳能否提供一下有关api的信息:如哪有比较全的类似手册的资料
十分感谢
e_mail:xiaoflyfly@263.net
 
onReceiveData 事件
是每接受一个字节就触发呢?
还是象mscomm那样可以设置几个子节后触发oncomm事件?
如果是,如何设置呢?
 
liuge:
好人做到底
能写一个用spcomm接受和发送一串字符的例子吗?
感激不尽!
 
也顺便给我个SPCOMM的例子,感激不尽
zjeijf@163.net
 
是不是嫌分少?
如果能给小弟一个不错的用spcomm接受和发送一串字符的例子
可再加50

 
liuge,霹雳 指出了我的错误
yansh 讲了基本注意事项
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部