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.
|
|