回答串口问题,大送分!300分,等着你来拿?(300分)

  • 主题发起人 主题发起人 lylyly
  • 开始时间 开始时间
L

lylyly

Unregistered / Unconfirmed
GUEST, unregistred user!
谁能向我提关于Async32构件,读写串口的例子,最好带上注释,以操纵
Modem为例;其它构件的例子也行,但必须附上构件;
直接用API操纵串口也行。
请赶快发邮件给我,等着救命?
liu--yu@yeah.net或jun_ly@21cn.com
 
我给你,你收好了。用的是附件啊!!
 
to whpjyj:能给我一份?
 
whpjyj我没有收到,再来一次好吗?
 
请给我一份,towing_tank@21cn.com
 
也请给我一份,snakezou@myrice.com
 
我在教育网,给myrice发信,太慢了。而且很有可能被打回来的。呵呵
 
whpjyj,你忘记给我发例子了。
 
你们到底还要不要?要得请跟帖
 
也请给我一份
tommm@371.net
 
lylyly:
你好,一下我各个子程序.
function closecommy(hfile:Thandle):byte;
begin
closehandle(hfile);//
end;
function writecommy(port:Thandle;data:byte):byte;
var
cbnum:Dword;
writenum:DWord;
begin
cbnum:=1;
writenum:=0;
writefile(port,data,cbnum,writenum,lpoly);
end;

function readcommy(port:Thandle):byte;
var

rcbnum:Dword;
readnum,lperrors:DWord;
i:integer;
clear:boolean;
Coms:Tcomstat;
begin
Clear:=Clearcommerror(port,lpErrors,@Coms);
if Clear Then Begin
rcbNum:=Coms.cbInQue;
readfile(port,read_buffery,rcbnum,readnum,0);
{ uuiu.Lines[0]:='';
for i:=1 to rcbnum
do
begin
uuiu.Lines[0]:=uuiu.Lines[0]+' '+inttohex(read_buffer,2)
end;
result:=i; }
result:=rcbnum;
end;
end;


function inicommy(port:Pchar):byte;


begin

hcomy:=createfile(port,generic_read or generic_write,0,nil,open_existing,
file_flag_overlapped,0);// 打 开 串 行 口
if hcomy=invalid_handle_value then
else
begin
setupcomm(hcomy,1024,1024); // 设 置 输 入, 输 出 缓 冲 区 皆 为1024 字 节

end;
getcommstate(hcomy,lpdcby); // 获 取 串 行 口 当 前 默 认 设 置

lpdcby.baudrate:=2400;
lpdcby.StopBits:=0;
lpdcby.ByteSize:=8;
lpdcby.Parity:=NOParity; // 偶 校 验
Setcommstate(hcomy,lpdcby);
//setcommMask(hcom,ev_rxchar);
// 指 定 串 行 口 事 件 为 接 收 到 字 符;

jcyj.yrcomm:=hcomy;
end;
 
lylyly:
你好,各个子程序.
function closecommy(hfile:Thandle):byte;
begin
closehandle(hfile);//
end;
function writecommy(port:Thandle;data:byte):byte;
var
cbnum:Dword;
writenum:DWord;
begin
cbnum:=1;
writenum:=0;
writefile(port,data,cbnum,writenum,lpoly);
end;

function readcommy(port:Thandle):byte;
var

rcbnum:Dword;
readnum,lperrors:DWord;
i:integer;
clear:boolean;
Coms:Tcomstat;
begin
Clear:=Clearcommerror(port,lpErrors,@Coms);
if Clear Then Begin
rcbNum:=Coms.cbInQue;
readfile(port,read_buffery,rcbnum,readnum,0);
{ uuiu.Lines[0]:='';
for i:=1 to rcbnum
do
begin
uuiu.Lines[0]:=uuiu.Lines[0]+' '+inttohex(read_buffer,2)
end;
result:=i; }
result:=rcbnum;
end;
end;


function inicommy(port:Pchar):byte;


begin

hcomy:=createfile(port,generic_read or generic_write,0,nil,open_existing,
file_flag_overlapped,0);// 打 开 串 行 口
if hcomy=invalid_handle_value then
else
begin
setupcomm(hcomy,1024,1024); // 设 置 输 入, 输 出 缓 冲 区 皆 为1024 字 节

end;
getcommstate(hcomy,lpdcby); // 获 取 串 行 口 当 前 默 认 设 置

lpdcby.baudrate:=2400;
lpdcby.StopBits:=0;
lpdcby.ByteSize:=8;
lpdcby.Parity:=NOParity; // 偶 校 验
Setcommstate(hcomy,lpdcby);
//setcommMask(hcom,ev_rxchar);
// 指 定 串 行 口 事 件 为 接 收 到 字 符;

jcyj.yrcomm:=hcomy;
end;
 
接受答案了.
 
后退
顶部