|
应为工作需要自己编写的RS232通讯模块,该模块已经编写了蛮久,在实际使用中可能有没有考虑和不完善的地方。
//=================================================================================
//如果使用该模块请保留该注释,如果被修改或编辑请将修改后的代码发送一份给我
//编写:戴琪英
//E_Mail:qiyingdai@163.com
//2000-09-01
//=================================================================================
unit R232Comm;
interface uses Windows,SysUtils; const INITR12COMM_SUCCESS=0; INITR12COMM_FAILURE=-1; var bSendFinish:boolean=True;//发送完标志 iRecvLen:DWORD=0; RecvBuff,TempBuff:PChar; SendCommand,RecvCommand:String;//发送和接收到的命令 RecvFinish:BOOL=False; RecvBuffInit:BOOL=False; SendCommandSuccess:BOOL; //切换台命令被成功发送标志
function InitR12CommDev(comNo:PChar):String; //初始化切换台串口,返回状态字符 procedure SwitchR12(WriteBuffer:PChar);//对切换台进行切换函数 procedure SwitchR12Byte(WriteBuffer:Byte); procedure CommSendNotify;//串口接收到字符事件响应过程 procedure CommRecvNotify; //串口发送缓冲区空事件响应过程 procedure CommWatchThread(var lpdwParam:DWORD);//通信口监视线程 function ConInfo :String;
implementation var //comMask,comBuf,ComState:Integer; dcb:_DCB; //DCB结构用于配置串口,程序中涉及各域含义如下: //DWORD DCBlength :DCB结构大小 //DWORD BaudRate : 波特率 //DWORD fBinary : 1 二进制模式 //DWORD fParity : 1 进行奇偶校验 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] ... 下一页 >> |