ul_drvdef.pas
来自「一个linux下rs485驱动程序的源代码」· PAS 代码 · 共 112 行
PAS
112 行
unit ul_drvdef;interface{$DEFINE UL_INDIR}{$IFDEF FPC}{$PACKRECORDS C}{$ENDIF}//uses// Windows; const UL_BFL_LOCK = $8000; { Message must be received by some proccess } UL_BFL_MSST = $4000; { After succesfull proccessing move to proc_bll } UL_BFL_M2IN = $2000; { Length of received frame must match expected len } UL_BFL_LNMM = $1000; { Message cannot be proccessed - error } UL_BFL_FAIL = $0800; { Multiframe message continues by next bll block } UL_BFL_TAIL = $0400; { Send this frame } UL_BFL_SND = $0200; { Receive answer frame into this bll block } UL_BFL_REC = $0100; { Verify free space in buffer of destination station } UL_BFL_VERL = $0040; { Do not try to repeat if error occurs } UL_BFL_NORE = $0020; { If error occurs do wait with retry } UL_BFL_REWA = $0010; { Request imediate proccessing of frame by receiver station } UL_BFL_PRQ = $0002; { Request imediate acknowledge by receiving station } UL_BFL_ARQ = $0001; type {$IFDEF UL_INDIR} ul_fd_t = Pointer; {$ELSE} ul_fd_t = THandle; {$ENDIF} ul_msginfo = record dadr : longint; sadr : longint; cmd : longint; flg : longint; len : longint; stamp : longword; end; const {$IFDEF UL_INDIR} UL_FD_INVALID = nil; {$ELSE} UL_FD_INVALID = INVALID_HANDLE_VALUE; {$ENDIF} {$IF Defined(WINDOWS)} UL_DEV_NAME = '\\.\UL_DRV'; {$ELSEIF Defined(UNIX)} UL_DEV_NAME = '/dev/ulan'; {$ELSE} {$MESSAGE ERROR 'invalid OS'} {$ENDIF} {***************************************************************** } { command definitions } { standard command codes 00H .. 3FH store to buffer 40H .. 7FH store to buffer without ACK 80H .. 9FH proccess at onece A0H .. BFH process with additional receive C0H .. FFH process with additional send } { Reinitialize RS485 } const UL_CMD_RES = $80; { Test free space in input buffer } UL_CMD_SFT = $81; { Send identification } UL_CMD_SID = $F0; { Send amount of free space in IB } UL_CMD_SFI = $F1; { End of stepping } UL_CMD_TF0 = $98; { Begin of stepping } UL_CMD_TF1 = $99; { Do step } UL_CMD_STP = $9A; { Additional debug commands } UL_CMD_DEB = $9B; { Send state - for 8051 PCL PCH PSW ACC } UL_CMD_SPC = $DA; { Read memory T T B B L L } UL_CMD_RDM = $F8; { Write mamory T T B B L L } UL_CMD_WRM = $B8; { Erase memory T T B B L L } UL_CMD_ERM = $88;implementationend.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?