在delphi中用api 写串口的问题

monkst 2002-01-16 09:19:48
我拟用API函数写一个串口通讯程序,其代码如下,可每次执行时都到了最后一句:
写串口失败,请问有人能解决吗?
hCom:=createfile('com1',generic_read or
generic_write,0,nil,open_existing,
file_attribute_normal or
file_flag_overlapped,0);//打开串行口
if hcom=invalid_handle_value then
begin
MessageBox(0,'Open 串口失败','Notice',MB_OK);
exit;
end
else
begin
setupcomm(hcom,4096,4096);
//设置输入,输出缓冲区皆为4096字节
getcommstate(hcom,lpdcb);
//获取串行口当前默认设置
lpdcb.baudrate:=1200;
lpdcb.StopBits:=1;
lpdcb.ByteSize:=8;
lpdcb.Parity:=NoParity; //偶校验
Setcommstate(hcom,lpdcb);
//MessageBox(0,'Open 串口成功','Notice',MB_OK);
b:=ord('a');
if WriteFile(hCom, b, 1, res, nil) then
messageBox(0,'Success','Notice',MB_OK)
else
messageBox(0,'failure','Notice',MB_OK);
...全文
79 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
monkst 2002-01-17
  • 打赏
  • 举报
回复
谢谢,我总完成了下次多指点。
Richardw 2002-01-16
  • 打赏
  • 举报
回复
学习
zengyufeng 2002-01-16
  • 打赏
  • 举报
回复
1位停止位在windows.pas中的定义是
ONESTOPBIT = 0

把你的停止位改一下,再试试

1,184

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧