X
xucongbo
Unregistered / Unconfirmed
GUEST, unregistred user!
我做的是用spcomm向显示屏发送字符。
格式要求如下:
·通讯格式
显示屏采用标准RS-232通讯接口,串行通讯格式
为“2400,8,N,1”。
显示屏显示一行24点阵6个汉字或12个数字信息。
·信息格式:
11H + 显示信息 + 01H
--------------------------------------------------
11H ---- 表示地址码;
1号屏:11H,2号屏:22H,3号屏:33H
显示信息 ---- 使用汉字内码,共12个字节,
个数不足用空格填充;
01H ---- 表示信息结束码;
1号屏:01H,2号屏:02H,3号屏:03H
例如向一屏发,我是这样写的。
procedure TForm1.Button1Click(Sender: TObject);
var
SendStr,str:string;
i:integer;
begin
str:=edit1.Text;
for i:=0 to 11-length(str) do
begin
str:=str+' ';
end;
if ComboBox3.Text='一号' then
SendStr:=chr($11)+str+chr($01)
else if ComboBox3.Text='二号' then
SendStr:=chr($22)+str+chr($02)
else if ComboBox3.Text='三号' then
SendStr:=chr($33)+str+chr($03);
if comm1.WriteCommData(pchar(SendStr),length(SendStr)) then
showmessage(SendStr+inttostr(length(SendStr)))
else
showmessage('发送失败');
end;
但显示屏还是收不到,你给帮忙看一下,什么地方写的不对。
格式要求如下:
·通讯格式
显示屏采用标准RS-232通讯接口,串行通讯格式
为“2400,8,N,1”。
显示屏显示一行24点阵6个汉字或12个数字信息。
·信息格式:
11H + 显示信息 + 01H
--------------------------------------------------
11H ---- 表示地址码;
1号屏:11H,2号屏:22H,3号屏:33H
显示信息 ---- 使用汉字内码,共12个字节,
个数不足用空格填充;
01H ---- 表示信息结束码;
1号屏:01H,2号屏:02H,3号屏:03H
例如向一屏发,我是这样写的。
procedure TForm1.Button1Click(Sender: TObject);
var
SendStr,str:string;
i:integer;
begin
str:=edit1.Text;
for i:=0 to 11-length(str) do
begin
str:=str+' ';
end;
if ComboBox3.Text='一号' then
SendStr:=chr($11)+str+chr($01)
else if ComboBox3.Text='二号' then
SendStr:=chr($22)+str+chr($02)
else if ComboBox3.Text='三号' then
SendStr:=chr($33)+str+chr($03);
if comm1.WriteCommData(pchar(SendStr),length(SendStr)) then
showmessage(SendStr+inttostr(length(SendStr)))
else
showmessage('发送失败');
end;
但显示屏还是收不到,你给帮忙看一下,什么地方写的不对。