Professional Documents
Culture Documents
4 8
1
4
0. (start bit) 1
0. 5,6,7 8
0. (parity bit) 1
0. (stop bit) 1,1.5 2
2 DATA
(odd), (even)
UART (Universal Asynchronous Receiver Transmitter :
AT UART 16450 16550
RS-232
RS-232
-12V (mark) +3V +12V (space)
RS-232 (Data T
DTE DCE DTE
RS-232 ,
RS-232
RS-232 DB-25 DB-9
3
( T01-01)
* Data Carrier Detect : DCD Carrier Detect : CD
* Receive Data : RD RxD
* Transmitted Data : TD TxD
* Data Terminal Ready : DTR
* Signal Ground : GND
* Data Set Ready : DSR DTR
* Request To Send : RTS
* Clear To Send : CTS
* Ring Indicator : RI
UART
UART Universal Asynchronous Receiver Transmitter
UART
UART (programmable baudrate generator)
UART
UART 2 8250 16550
UART 16550 FIFO (First In First Out ) 16
RS-232
RTS DTR (CTS,DSR
RS-232
PC RS-232 4
4 8 8
(Base register) COM1
00H
01H
( reg_01H)
4-7
"0"
SINP
"1" CTS,DSR,CD R
"0"
ERBK
"1" , ,
"0"
TBE
"1"
"0"
RxRD
"1" 1
"0"
02H
( REG_02H)
3-7
"0"
ID1,ID0 "00" ( 4
)
"01" (
"10"
2 )
"11" (
1 )
* (ID1=0,ID0=0)
* (ID1=0,ID0=1)
*
*
PND
"1"
"0"
03H
( REG_03H)
DLAB
"1"
"0" ( 00H)
( 01H)
DLAB "1"
= 115,200/ 16
115,200 UART
1.8432MHz UART 16
16
= 00H + (256 X 01H)
9,600
BRK
"1"
"0"
PAR2,PAR1,PAR0
"000"
"001"
"011"
"101" (mark)
"111" (space)
STOP
"1" 2
"0" 1
DAB1,DAB0
"00" 5
"01" 6
"10" 7
"11" 8
04H
RTS DTR
( REG_04H)
5-7 "0"
LOOP
"1"
"0"
OUT2,OUT1
"1"
"0"
RTS
"1" RTS RS-232
"0"
DTR
"1" DTR RS-232
"0"
05H
UART
( REG_05H)
TXE (Transmitter Empty)
"1"
"0" 1
4
2 Control Panel System
( device_mng.bmp)
Properties Resources
( com1_prop.bmp)
3
DEF SEG = 0
CLS
PRINT "Address Of COM1 :", HEX$((PEEK(&H401) * &H100) + PEEK(&H400))
PRINT "Address Of COM2 :", HEX$((PEEK(&H403) * &H100) + PEEK(&H402))
PRINT "Address Of COM3 :", HEX$((PEEK(&H405) * &H100) + PEEK(&H404))
PRINT "Address Of COM4 :", HEX$((PEEK(&H407) * &H100) + PEEK(&H406))
PRINT "Number Of RS-232 Port in This Computer :", (PEEK(&H411)
AND &HE) / 2
END
MODE
MODE COMm : baud=b, parity=p, data=d, stop=s, retry=r
"10" 7
"11" 8
STOP
"1" 2
"0" 1
PAR1,PAR0
"00 "10"
"01"
"11"
BD2,BD1,BD0
"111" 9,600
"110" 4,800
"101" 2,400
"100" 1,200
"011" 600
"010" 300
"001" 150
"000" 110
COM1
procedue initial ;
{ 11100011B }
RS-232
OUT &H3F8,X
X 8
Y = INP(&H3F8)
Y 8
TURBO PASCAL
PORT[$3F8] = X
Y = PORT[$3F8]