⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serial.h

📁 国外网站上的一些精典的C程序
💻 H
字号:
/*+----------------------------------------------------+|               Thunderbird Software                 |+----------------------------------------------------+| Filespec  :  Serial.c                              || Date      :  October 24, 1991                      || Time      :  15:03                                 || Revision  :  1.1                                   || Update    : August 29, 1994                        || Update    : March 12, 1995 by Bob Stout            |+----------------------------------------------------+| Programmer:  Scott Andrews                         || Address   :  5358 Summit RD SW                     || City/State:  Pataskala, Ohio                       || Zip       :  43062                                 |+----------------------------------------------------+| Released to the Public Domain                      |+----------------------------------------------------+*/#ifndef SERIAL__H#define SERIAL__H#include "extkword.h"#include "pchwio.h"#define  SerInBufSize  4096            /* Size of input buffer          */#define  SerOutBufSize 512             /* Size of output buffer         *//* 8250 registers */#define  REC             0             /* Uart receive reg.             */#define  XMIT            0             /* Uart transmit reg.            */#define  INT_EN          1             /* Uart int. enable reg.         */#define  INT_ID          2             /* Uart int. ident. reg.         */#define  LINE_CNTRL      3             /* Uart line control reg.        */#define  MODEM_CNTRL     4             /* Uart modem control reg.       */#define  LINE_STATUS     5             /* Uart line status reg.         */#define  MODEM_STATUS    6             /* Uart modem status reg.        */#define  BAUD_LSB        0             /* Uart baud divisor reg.        */#define  BAUD_MSB        1             /* Uart baud divisor reg.        */#define  NONE            0             /* Handshake param none          */#define  HDW             1             /* Handshake param hardware      */#define  XON             2             /* Handshake param software      *//* Interrupt enable register  */#define  RX_INT          0x01          /* Receive interrupt mask        */#define  TBE_INT         0x02          /* Transmit buffer empty mask    */#define  ERR_INT         0x04          /* Error interrupt mask          */#define  RS_INT          0x08          /* Line interrupt mask           *//* Interrupt id register      */#define  OUT2            0x08          /* Out 2 line                    */#define  DTR             0x01          /* DTR high                      */#define  RTS             0x02          /* RTS high                      */#define  CTS             0x10#define  DSR             0x20#define  XMTRDY          0x20#define  TXR             0       /*  Transmit register (WRITE)          */#if !defined TRUE                      /* Define boolean true/false     */#define  FALSE  0#define  TRUE   !FALSE#endifextern void (INTERRUPT FAR *oldvector_serial )( void);extern int   ComBase;                  /* Comm port address             */extern int   IrqNum;                   /* Comm interrupt request        */typedef struct                         /* Save existing comm params     */{  int int_enable;                     /* old interrupt enable reg value*/   int line;                           /*  "  line control      "    "  */   int modem;                          /* old modem control     "    "  */   int baud_lsb;                       /* old baud rate divisor LSD     */   int baud_msb;                       /*  "   "    "      "    MSD     */   int int_cntrl;                      /* old PIC interrupt reg value   */} OLD_COMM_PARAMS;extern OLD_COMM_PARAMS old_comm_params;typedef struct{  int line;                           /* Uart line status reg.         */   int modem;                          /* Uart mode status reg.         */   int intrupt;                        /* Uart interrupt reg.           */   int handshake;                      /* Handshake status              */} COMM_STATUS;                         /* status, updated, handler      */extern COMM_STATUS comm_status;int   OpenComPort ( char Port );         /*setup comm for usage         */void  InitComPort ( char Baud[], char Databits, char Parity, char Stop );void  CloseComPort ( void );             /* Restore comm port           */void  DropDtr ( void );                  /* Lower DTR                   */void  RaiseDtr ( void );                 /* Raise DTR                   */int   ComRecChar ( void );               /* Fetch character from rcv buf*/int   ComSendChar ( char character );    /* Put char into xmit buffer   */int   ComSendString ( char *string );int   ComStatus ( void );                /* Fetch comm status           */void  INTERRUPT FAR serial ( void );     /* interrupt handler           *//* End of Serial.H */#endif /* SERIAL__H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -