|
last updated November 1, 2001
The
PCCOM.SYS is used to install device drivers for serial communication
port. User may
specifies I/O port address, baud rate, interrupt vector...etc. for
different hardware
configuration.
To setup
PCCOM complete the following steps:
STEP
1: Insert your serial communication adapter and
Connect communication cable.
STEP
2: Start the computer.
STEP
3: Use PCCOM.SYS program to install device
Driver and setup different communication protocol.
You
must insert PCCOM.SYS commands to the CONFIG.SYS file, which will
install device driver automatically when computer is booted.
|
3.1
Device Driver Installation
The
PCCOM.SYS program is used to install device driver.
To install PCCOM device driver, please write the following
command format into CONFIG.SYS file.
DEVICE = PCCOM.SYS @filename
@
- Prefix symbol to specify configuration file.
Filename
- Configuration file, which is used to specify hardware configuration
of the system.
EXAMPLE
3.1.1
DEVICE = PCCOM.SYS @c:\pccom.opt
Set
up device driver, which is specified by c:\pccom.opt file.
|
3.2
Hardware Configuration Specification
To
specify hardware configuration, you must follow the PCCOM set up
syntax. In this section, we only introduce how to write the hardware
configuration file, more details syntax specification please see
the APPENDIX C. In the hardware configuration file, three directives
must be used.
/B:portno /D:devicename
/A:setup
/B:portno
Specify the first port number.
/D:devicename
Specify the first device name.
/A:setup
Set up communication parameters and hardware
configuration for ISA series cards.
/P:
setup
For ISA series cards.
/P:
setup
Set up communication parameters and hardware configuration for PCI
series cards.
The
syntax is:
/P: [card ID: PortNo: Port]
Most
important thing is to describe /A: directive for ISA series cards
and the /P: directive for PCI series cards. Now
let’s introduce in the following. In order to familiar how to set
up, we give some examples first.
EXAMPLE
3.2.1
Suppose
we install one 4 port card, its port no. is defined from 4, its
device name is defined from COM5. Hardware configuration is specified
as:
Port no. = 4, 5, 6, 7
Device name = COM5, COM6, COM7, COM8
Interrupt request = 5
Port address = 2A0, 2A8, 2B0, 2B8
Interrupt vector = 2BF
Interrupt vector action = Active LOW
|
port no.
|
4
|
5
|
6
|
7
|
port
address
|
2A0
|
2A8
|
2B0
|
2B8
|
ring
buffer
|
1K
|
512
|
256
|
128
|
baud
rate
|
9600
|
9600
|
9600
|
9600
|
parity
|
none
|
none
|
none
|
none
|
data
bit
|
8
|
8
|
8
|
8
|
parity
bit
|
1
|
1
|
1
|
1
|
modem
control
|
DTR
RTS
OUT2
|
DTR
RTS
OUT1
|
DTR
RTS
|
NONE
|
flow control
|
XON
|
XON
|
XON
|
XON
|
Then the hardware configuration
file is defined as: |
#bios port no = 4, 5, 6, 7
/B:4
#dos device name = COM5, COM6, COM7, COM8
/D:COM5
/A:[5:
2A0,4,2BF,LO:
(1k :9600:N-8-1:DTR+RTS+OUT2:XON),
(512:9600:N-8-1:DTR+RTS+OUT1:XON),
(256:9600:N-8-1:DTR+RTS:XON),
(128:9600:N-8-1::XON)]
Where # is comment.
Each IRQ control one set of ports and was enclosed by [
] block. Communication parameters for each port is enclosed
by ( ) block.
|
EXAMPLE
3.2.2
Suppose
we install one 8 port card, hardware configuration
is specified as:
Port no. = 0, 1, 2, 3, 4, 5, 6, 7
Device name = COM5, COM10, COM11, COM12
COM13, COM14, COM15, COM16
Interrupt request = 5
Port address = 280, 288, 290, 298,
2A0, 2A8, 2B0, 2B8
Interrupt vector = 2C2
Interrupt vector action = Active LOW
|
Communication parameters
port
no.
|
0
|
1
|
2
|
3
|
port
address
|
280
|
288
|
290
|
298
|
ring
buffer
|
1K
|
1k
|
1k
|
1k
|
baud
rate
|
4800
|
4800
|
4800
|
4800
|
parity
|
even
|
even
|
even
|
even
|
data
bit
|
7
|
7
|
7
|
7
|
parity
bit
|
2
|
2
|
2
|
2
|
modem
control
|
DTR
RTS
|
DT
RTS
|
DTR
RTS
|
DTR
RTS
|
flow
control
|
DTR
|
DTR
|
DTR
|
DTR
|
port
no.
|
4
|
5
|
6
|
7
|
port
address
|
2A0
|
2A8
|
2B0
|
2B8
|
ring
buffer
|
2K
|
2k
|
2k
|
2k
|
baud
rate
|
4800
|
4800
|
4800
|
4800
|
parity
|
none
|
none
|
none
|
none
|
data
bit
|
8
|
8
|
8
|
8
|
parity
bit
|
1
|
1
|
1
|
1
|
modem
control
|
DTR
RTS
|
DTR
RTS
|
DTR RTS
|
DTR
RTS
|
flow
control
|
XON
|
XON
|
XON
|
XON
|
Then the hardware configuration
file is defined as:
|
#bios
port no = 0, 1, 2, 3, 4, 5, 6, 7
/B:0
#dos device name = COM5, COM10, COM11, COM12
#
COM13 COM14, COM15, COM16
/D:COM5, COM10
/A:[5:
280,8,2C2,LO:
(1k:4800:E-7-2:DTR+RTS:DTR) * 4,
(2k:4800:N-8-1:DTR+RTS:XON) * 4]
EXAMPLE
3.2.3
Suppose
we install 16 ports, hardware configuration is specified as
Port no. = 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22,
23
Device name = COM1, COM3, AAA2, AAA3,
AAA4, AAA5, AAA6, AAA7,
AAA8, AAA9, AAA10, AAA11,
AAA12, AAA13, AAA14, AAA15
Interrupt request = 15
Port address = 280, 288, 290, 298,
2A0, 2A8, 2B0, 2B8,
180, 188, 190, 198,
1A0, 1A8, 1B0, 1B8,
Interrupt vector = 2C2, 1C2
Interrupt vector action = Active LOW
|
Communication parameters
port
no.
|
8
|
9
|
10
|
11
|
port
address
|
280
|
288
|
290
|
298
|
ring
buffer
|
1K
|
1k
|
1k
|
1k
|
baud
rate
|
2400
|
2400
|
2400
|
2400
|
parity
|
none
|
none
|
none
|
none
|
data
bit
|
8
|
8
|
8
|
8
|
parity
bit
|
1
|
1
|
1
|
1
|
modem
control
|
DTR
RTS
|
DTR
RTS
|
DTR
RTS
|
DTR
RTS
|
flow
control
|
DTR
|
DTR
|
DTR
|
DTR
|
port
number
|
12
|
13
|
14
|
15
|
port
address
|
2A0
|
2A8
|
2B0
|
2B8
|
ring
buffer
|
1K
|
1k
|
1k
|
1k
|
baud
rate
|
2400
|
2400
|
2400
|
2400
|
Parity
|
none
|
none
|
none
|
none
|
data
bit
|
8
|
8
|
8
|
8
|
parity
bit
|
1
|
1
|
1
|
1
|
modem
control
|
DTR
RTS
|
DTR
RTS
|
DTR
RTS
|
DTR
RTS
|
flow
control
|
DTR
|
DTR
|
DTR
|
DTR
|
Port 16
to port 23 are set to 1K bytes buffer,
baud rate is 2400, none parity, 8 data bits, 1 stop
bit, modem control flow are DTR+RTS, flow control is XON, and
its port address start from 180 to 1B8,
interrupt vector is 1C2, which was active low. |
Then
the hardware configuration file is defined as:
#bios port no= 8, 9, 10, 11, 12, 13, 14, 15,
#
16, 17, 18 19, 20, 21, 22, 23
/B:8
#dos device name= COM1, COM3, AAA2, AAA3,
#
AAA4, AAA5, AAA6, AAA7,
#
AAA8, AAA9, AAA10, AAA11,
#
AAA12, AAA13, AAA14, AAA15
/D:COM1,
COM3, AAA2
/A:[15:
280,8,2C2,LO:
(1k:2400:N-8-1:DTR+RTS:RTS),
(1k:2400:N-8-1:DTR+RTS:RTS),
(1k:2400:N-8-1:DTR+RTS:RTS),
(1k:2400:N-8-1:DTR+RTS:RTS),
(1k:2400:N-8-1:DTR+RTS:DTR) * 4 :
180,8,1C2,LO:
(1k:2400:N-8-1:DTR+RTS:XON) * 8]
EXAMPLE
3.2.4
Suppose
we install 16 ports, hardware configuration is specified as
Port no. = 8, 9, 10, 11, 12, 13, 14, 15,
16, 17, 18, 19, 20, 21, 22, 23
Device name = COM1, COM3, AAA2, AAA3,
AAA4, AAA5, AAA6, AAA7,
AAA8, AAA9, AAA10, AAA11,
AAA12,
AAA13, AAA14, AAA15
Interrupt request = 5,7
Port address = 280, 288, 290, 298,
2A0, 2A8, 2B0, 2B8,
180, 188, 190, 198,
1A0, 1A8, 1B0, 1B8,
Interrupt vector = 2C2, 1C2
Interrupt vector action = Active LOW
Port
8 to port 15 are set to 1K
bytes buffer, baud rate is 1200, non parity, 8 data bits,
1 stop bit, modem control flow are DTR+RTS,
flow control is XON, and its port address start
from 280 to 2B8, interrupt is 5, interrupt vector is 2C2,
which was active low.
Port
16 to port 23 are set to 1K bytes buffer, baud
rate is 1200, non parity, 8 data bits, 1 stop bit, modem
control flow are DTR+RTS, flow control is XON,
and its port address start from 180 to 1B8, interrupt
is 7, interrupt vector is 1C2, which was active low.
|
Then
the hardware configuration file is defined as:
#bios port no= 8, 9, 10, 11, 12, 13, 14, 15,
#
16, 17, 18 19, 20, 21, 22, 23
/B:8
#dos device name= COM1, COM3, AAA2, AAA3,
#
AAA4, AAA5, AAA6, AAA7,
#
AAA8, AAA9, AAA10, AAA11,
#
AAA12, AAA13, AAA14, AAA15
/D:COM1,
COM3, AAA2
/A:[5:
280,8,2C2,LO:
(1k:1200:N-8-1:DTR+RTS:XON) * 8],
[7:
180,8,1C2,LO:
(1k:1200:N-8-1:DTR+RTS:XON) * 8]
EXAMPLE
3.2.5
Install standard COM1 and COM2.
/B:0
/D:COM1
/A:[4:
3F8,1,0,HI:
(8k:9600:N-8-1:DTR+RTS+OUT2:XON)],
[3:
2F8,1,0,HI:
(8k:9600:N-8-1:DTR+RTS+OUT2:XON)]
EXAMPLE
3.2.6.
Install a single 4 Port PCCOM PCI card.
|
/D:
COM5
/B:4
/P:[:4(1K:
9600: N-8-1:: XON) * 4]
EXAMPLE
3.2.7
Install a 2 Port PCCOM PCI card with card ID of 1
and a 8 Port PCCOM PCI card with card ID of 2.
|
/D:
COM3
/B:
4
/P:
[1:2:(1k:9600:N-8-1:: XON)*2)
/P:
[2:8:(1k: 9600: N-8-1::XON)*8)
3.3
Some Constraints
In
the hardware configuration file, each set owns one interrupt, which
is enclosed by [] block, and each set controls either 1
port,
2 ports, 4 ports, 8 ports, 16 ports, or 24 ports, which is enclosed
by ( ) block. Up to 8 sets can be set in one computer
system, and total support up to 64 serial ports. In
the following, we describe some constrains when
set up communication parameters.
device
name
Begin with a letter and must consist
only letters and digits. Its length can not more than
8.
interrupt
Interrupt will be one of 2, 3, 4, 5,
6, 7, 10, 11, 12, 14, 15.
interrupt
vector
Interrupt vector
will be any legal address or set to 0 means
need not interrupt vector.
interrupt
activation
Using HI or LO to set up active
high or active low. If interrupt vector not be used,
this filed is ignore.
buffer
size
The maximum size for one port
is 32KB, and one set can not be allocated more
than 64KB. However, the size of total buffer used in driver
can be larger than 64 KB.
baud
rate
Baud rate can be
any valid value in serial communication protocol.
parity
Either
E, O, N can be selected which means even, odd, none parity.
data
bit
Either 5, 6, 7, 8 data
bits can be selected.
stop
bit
Either 1 or 2 bits can be selected.
modem
control
You can choice communication protocol you need. Multiple
protocols are allowed to set in on port. DTR (Data
Terminal Ready), RTS (Request To Send),
OUT1, and OUT2 can be selected. If you ignore
this field, it means you need not modem control.
flow
control
Multiple protocol
are allowed. It supports hardware
handshaking which are DTR and RTS, and software handshaking
XON. If you ignore this field, it means you need not flow control.
#
Begin
in column one to specify as
comments.
More
detail syntax specification was specified in appendix C and communication
parameters were introduced in appendix B.
|
|
|
|