有没有对trubopower比较熟悉的,进来看看这个问题(20分)

D

dowms22

Unregistered / Unconfirmed
GUEST, unregistred user!
我在使用这个控件做短信收发时,在接收数据时发现该控件在收到数据时,比如收到的数据是:+CMT: ,24
0891683108505905F0240D91683105954218F2000830110211604423045728573A时,它并不是整串读出来的,有时是两个字符,有时是三个,或更多,但我在传数据时是一整串传的
我的接收代码如下:
procedure TmainForm.ComPort1Trigger(CP: TObject; Msg, TriggerHandle,
Data: Word);
var
I : Word;
C : Char;
s ,senddata1,recdata1: String;
K,j,m:INTEGER;
begin
try
case Msg of
APW_TRIGGERDATA :
{got 'login', send response}
;
APW_TRIGGERAVAIL :
{extract and display/process the data}
begin
s1:='';
for I:= 1 to Data do
begin
C := ComPort1.GetChar;
s:=s+c;
end;
s1:=S1+S;//s1是全局变量
Memo1.Text:=s1;
Memo1.SelStart:=length(Memo1.Text);
Memo1.SelLength:=0;

end;
APW_TRIGGERTIMER :
{timed out waiting for login prompt, handle error}
;
end;
except
end;
end;
我设了个全局变量S1,但S1里面的内容并不是整个字符串,而是最后传到的回车和空格。但如果把MOME1写成这样:memo1.text:=memo1.text+s+'//'时
memo1里显示的是:+C//MT: ,2//4
08//9168310//8505905F0240D9168310595//4218F200083011021//1604423045728573A。由此可以看出它在接收数据时并不是一整串读出的。
这个问题要什么解决啊???如果要设个全局限变量那要如何设啊???
并且能否讲下:APW_TRIGGERDATA :、 APW_TRIGGERAVAIL :、APW_TRIGGERTIMER :的区别???
还有的是,在我发出一条短信时,串口收到的不时是OK,还有这条短信的内容。什么原因啊?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
770
import
I
I
回复
0
查看
658
import
I
顶部