CHƯƠNG I:
Giới thiệu một số phương pháp truyền thông
A
GIỚI THIỆU TỔNG QUÁT VỀ MẠNG MÁY TÍNH.
I. Tổng quát:
Mạng máy tính là một tập hợp các máy tính được nối với nhau bởi các đường truyền vật lý
theo một kiến trúc nào đó. Và ngày nay mạng máy tính đã trở thành một lónh vực nghiên
cứu phát triển và ngày càng được ứng dụng rộng rãi trong cuộc sống.
Đøng truyền vật lý và kiến trúc mạng:
1. Đường truyền vật lý:
Đường truyền vật lý dùng để truyền tín hiệu điện tử giữa các máy tính . Các tính hiệu điện
tử đó biểu thò các giá trò dữ liệu dưới dạng các xung nhò phân. Tất cả các tín hiệu được
truyền giữa các máy tính đều thuộc 1 dạng sóng điện từ nào đó, trải từ các tần số radio tới
các sóng cực ngắn(vi ba) và tia hồng ngoại. Tuỳ theo tần số của sóng điện từ có thể dùng
các đường truyền vật lý khác nhau để truyền tín hiệu.
Các tần số radio có thể truyền bằng cáp điện ( dây đôi xoắn hoặc đồng trục ) hoặc bằng
phương tiện quảng bá (radio broadcasting).
o Sóng cực ngắn (vi ba) thường được dùng để truyền giữa các trạm mặt đất và các vệ
tinh.
o Tia hồng ngoại là lý tưởng đối với nhiều loại truyền thông mạng. Nó có thể dùng
để truyền giữa hai điểm hay từ một điểm đến nhiều máy thu.
o Khi xem xét lựa chọn đường truyền chúng ta cần chú ý đến các đặc trưng cơ bản
như : giải thông , độ suy hao, và độ nhiễm từ.
2..Kiến trúc mạng:
Kiến trúc mạng máy tính thể hiện qua cách nối các máy tính với nhau ra sao và tập
hợp các quy tắc mà tất cả các thực thể tham gia truyền thông trên mạng phải tuân theo để
cho mạng hoạt động tốt. Cách kết nối các máy tính gọi là hình trạng(topology), quy tắc quy
ước truyền thông thì gọi là giao thức (protocol).
Topology mạng : có hai kiểu nối mạng chủ yếu là point-to-point và quảng bá theo
kiểu point-to-point, các đưởng truyền nối thành cặp nút với nhau và mỗi nút đều có trách
nhiệm lưu trữ tạm thời sau đó chuyển dữ liệu đi cho đến đích.
Theo kiểu quảng bá, tất cả các nút phân chia chung một đường truyền vật lý. Dữ
liệu được gởi đi từ một nút nào đó có thể được tiếp nhận bởi tất cả các nút còn lại. Nơi
nhận kiểm tra xem đòa chỉ đích gởi đến có phải là của mình hay không để có thể tiếp tục
thực hiện việc giao tiếp hay không giao tiếp.
Giao thức mạng :
Việc truyền tín hiệu trên mạng cũng cần phải tuân theo những quy tắc, quy ước về
nhiều mặt, từ khuôn dạng (cú pháp, ngữ nghóa) của dữ liệu tới các thủ tục gởi, nhận dữ liệu
kiểm soát có hiệu quả và chất lượng truyền tin cũng như xử lý các lỗi sự cố. Tập hợp tất cả
các quy tắc đó gọi là giao thức (protocol) của mạng.
Phân loại mạng máy tính:
Có nhiều cách phân loại mạng khác nhau tuỳ thuộc vào các yếu tố chính làm chỉ
tiêu phân loại mạng. Nếu lấy khoảng cách làm chỉ tiêu phân loại mạng thì ta có các loại
sau:
Mạng cục bộ: Là mạng được cài đặt trong phạm vi tương đối nhỏ với khoảng cách
lớn nhất giữa các máy tính cũng chỉ vài chục km trở lại.
Một mạng cục bộ bao gồm cả phần cứng và phần mềm. Phần mềm của nó bao gồm
chương trình điều khiển và hệ điều hành mạng. Còn phần cứng bao gồm :
o Máy chủ (File server-FS ).
o Các trạm làm việc .
o Các thiết bò ngoại vi.
o Card mạng.
Mạng đô thò: ( Metropolian Area Networds-MAN ) là mạng được sử dụng (cài đặt )
trong phạm vi một đô thò hay một trung tâm kinh tế –chính trò xã hội có bán kính trong
phạm vi khoảng 100km trở lại.
Mạng diện rộng: (Wide Area Networds-WAN ) Có phạm vi vượt biên giới của một
quốc gia.
Mạng toàn cầu: (Global Area Networds-GAN ) phạm vi của mạng trải khắp bề mặt
của trái đất.
B
Giao tiếp máy tính với ngoại vi:
Như ta đã biết, để ghép nối với máy tính ta có ba khả năng để trọn:
i. Ghép nối qua cổng máy in hay còn gọi là cổng song song
ii. Ghép nối qua rãnh cắm mở rộng trên bản mạch chính.
iii. Ghép nối qua cổng nối tiếp.
Mỗi phương pháp đều có những ưu nhược điểm riêng lên đến bây giờ tất cả các phương
pháp đều tồn tại. Tùy theo kinh nghiệm , công việc khác nhau mà ta có sự lưa trọn khác
nhau. Ở phần này em chỉ giới thiệu qua về hai phương pháp đầu và đi sâu hơn vào
phương pháp thứ ba.
I
Cổng song song:
1. Cấu trúc của cổng song song:
Cổng song song có 2 loại :
Ổ cắm 36 chân
cắm 26 chân
Ngày nay hầu hết các máy tính PC đều trang bò cổng song song 25 chân nên ta chỉ cần
quan tâm đến cổng 25 chân.
Ở dạng truyền song song, các bit dữ liệu được truyền đồng thời trên các đường khác
nhau. Ưu điểm lớn nhất của việc truyền song song là tốc độ truyền cao, các đường dẫn đều
tương thích TTL . Nhược điểm là dễ bò nhiễu.
2. Sơ đồ chân:
25 24 23 22 21 20 19 18 17 16 15 14
13 12 11 10 9 8 7 6 5 4 3 2 1
Bảng mô tả sự bố trí các chân ở cổng nối với máy in:
CHÂN
1
2÷9
10
11
12
13
14
15
16
17
18 ÷ 25
KÝHIỆU
STROBE
D0 ÷ D7
ACK
BUSY
PE
SLCT
AF
ERROR
INIT
SLCTIN
GND
CHIỀU
Lối ra
Lối ra
Lối vào
Lối vào
Lối vào
Lối vào
Lối ra
Lối vào
Lối ra
Lối ra
MÔ TẢ
BYTE được in
Đường dữ liệu D0 ÷ D7
Acknowledge (Xác nhận)
Logic 1: Máy in bận
Hết giấy
Select ( lựa chọn)
Auto feed ( tự nạp)
Error ( lỗi)
Logic 0: Đặt lại máy in
Select in
Nối đất
Hinh 1: Bảng mô tả sự bố trí các chân ở cổng nối với máy in
Cổng nối với máy in hay thường gọi là giao diện Centronics. Cổng này không chỉ nối
với máy in mà còn ghép nối với các thiết bò ngoại vi khi sử dụng máy tính vào mục
đích đo lường và điều khiển.
Cổng có 25 chân. Ngoài 8 bit dữ liệu còn có những đường dẫn tín hiệu khác, tổng
cộng có thể trao đổi một cách riêng biệt với 17 đường dẫn, gồm 12 đường dẫn ra và
5 đường dẫn vào. 8 đường dẫn dữ liệu D0 ÷ D7 không phải là đường dẫn hai chiều
trong tất cả các loại máy tính nên trên bảng mô tả chỉ xem như là lối ra. Các lối ra
kác nữa là STROBE, AUTOFED ( AF), INIT và SELECT IN (SLCTIN). Khi trao đổi
thông tin với máy in, các đường dẫn này có những chức năng xác đònh. Thí dụ, INIT
= 0 thực hiện một quá trình khởi động lại (Reset) ở máy in, còn STROBE có nhiệm
vụ ghi các bit dữ liệu đã được gửi từ máy in bằng một xung Low vào trong bộ nhớ
của máy in.
Cổng của máy in cũng có những đường dẫn lối vào, nhờ vậy mà sự bắt (chéo) tay
giữa máy tính và máy in được thực hiện. Chẳng hạn, khi mà máy in không còn đủ
chỗ trong bộ nhớ thì máy in sẽ gửi đến máy tính một bit trạng thái (BUSY = 1); điều
đó có nhgóa là máy in tại thời điểm này đang bận, không nên gửi thêm các byte dữ
liệu khác đến nữa.Khi hết giấy ở máy in thì máy tính sẽ thông báo là PAPER
EMPTY (PE). Đường dẫn lối vào tiếp theo là ACKNOWLEDGE (ACK), SELECT
(SLCT) và ERROR.
Tổng cộng máy tính PC có 5 lối vào hướng tới máy in.
3. Sự trao đổi với các đường dẫn tín hiệu:
Các tín hiệu được trao đổi qua cổng song song thông qua 3 thanh ghi:
thanh ghi dữ liệu
thanh ghi trạng thái
thanh ghi điều khiển.
Thanh ghi dữ liệu
Được đònh vò ở đòa chỉ cơ sở của cổng.
Datenregister(Basicaddress)
D7
D6 D5
D4
D3
D2 D1
D0
Pin 2
Pin 3
Pin 4
Pin 5
Pin 6
Pin 7
Pin 8
Pin 9
Thanh ghi trạng thái
Đònh vò ở đòa chỉ cơ sở của +1.
Đây là thanh ghi chỉ đọc, được CPU dùng để thu trạng thái hiện tại của dòng tín hiệu đi
từ máy in hay thiết bò tới máy tính.
3 bit thấp đầu tiên được đặt bằng 0. Các bit khác còn lại được đặt như hình vẽ:
Statsregister(Basicaddress +1)
D7
D6 D5
D4
D3
0
0
0
Pin 15 (ERROR)
Pin 13 (SLCT)
2
Pin 12 (PE)
Pin 10 (ACK)
Pin 11 (BUSY)
1
Thanh ghi điều khiển
Đònh vò ở đòa chỉ cơ sở +2.
Controlregister (Basicaddress =2)
D7
D6
D5
D4
D3
D2 D1
D0
1
1
1
2
2
2
Pin 1 (STROBE)
Pin 14 (AUTOFEED)
Pin 16 (INIT)
Pin 17 (SLCTIN)
IRQ-ENABLE
Ở các máy tính PC được chế tạo gần đây, đòa chỉ cơ bản của cổng máy in được sắp xếp
như sau:
LPT1 (Cổng máy in thứ nhất)
LPT2 (Cổng máy in thứ hai)
⇒ Đòa chỉ cơ bản = 378H.
⇒ Đòa chỉ cơ bản = 278H.
Các đòa chỉ cơ bản của cổng máy incủa máy tính PC được đặt ở những đòa chỉ bộ nhớ
xác đònh và có thể được đọc ra bằng một chương trình viết bằng phần mềm. Đòa chỉ cơ bản
của LPT1 đúng như giá trò 16 bit được cất trong bộ nhớ có đòa chỉ 408H và 409H, còn 40AH
và 40BH chứa đụng đòa chỉ cơ bản của LPT2.
2 Rãnh cắm mở rộng:
Rãnh cắm mở rộng ở đây là nói đến các Bus đã được để sẵn trên bản mạch chính. Từ
trước đến nay đã có đến tám kiểu Bus mở rộng được sử dụng cho máy tính cá nhân (gần
đây có thêm bus AGV). Việc phân loại các Bus mở rộng thường dựa trên sô các bit dữ
liệu ,à chúng xử lý đồng thời. Đó là các bus
Bus PC(còn gọi là ISA 8 bit)
Bus EISA(32 bit)
Bus VESA Local(32bit)
Bus SCSI(16/32bit)
Bus ISA(16bit)
Bus MCA(32 bit)
Bus PCI(32/64 bit)
Bus PC/MCA(16 bit)
Tuy nhiên, cho tới nay, phần lớn các card ghép nối dùng trong kỹ thuật đo lường và điều
khiển đều được chế tạo theo tiêu chuẩn ISA.
Rãnh cắm theo tiêu chuẩn ISA:
Thông thường rãnh cắm có 62 đường tín hiệu dùng cho thông tin với một card cắm vào.
về cơ bản các đường tín hiệu này chia thành 3 nhóm đường tín hiệu, đường đòa chỉ và
đường điều khiển.
Rãnh cắm 62 chân:
Các chân trên card
Chức năng
Chức năng
Phía mạch in
GND
B01
Phía linh kiện
A01
/IOCHCK
RESET DRV
B02
A02
SD7
+5V
B03
A03
SD6
IRQ2
B04
A04
SD5
-5V
B05
A05
SD4
DRQ2
B06
A06
SD3
-12V
B07
A07
SD2
DÖÏ TRÖÕ
B08
A08
SD1
+12V
B09
A09
SD0
GND
B10
A10
/OICHRDY
/SMEMW
B11
A11
AEN
/SMEMR
B12
A12
A19
/IOW
B13
A13
A18
/IOR
B14
A14
A17
/DACK3
B15
A15
A16
DRQ3
B16
A16
A15
/DACK1
B17
A17
A14
DRQ1
B18
A18
A13
/DACK0
B19
A19
A12
CLK
B20
A20
A11
IRQ7
B21
A21
A10
IRQ6
B22
A22
A9
IRQ5
B23
A23
A8
IRQ4
B24
A24
A7
IRQ3
B25
A25
A6
/DACK2
B26
A26
A5
TC
B27
A27
A4
BALE
B28
A28
A3
+5V
B29
A29
A2
OSC
B30
A30
A1
GND
B31
A31
A0
Về sau, máy tính PC/AT ra đời, chúng có thêm một rãnh thứ hai nằm thẳng hàng với
rãnh 8 bit kể trên và có 36 chân.
Trên rãnh có chứa tín hiệu 16 bit nên rãnh này được gọi chung là rãnh 16 bit.
Ngoài ra, sau này người ta còn chế tạo thêm các rãnh cắm từ 32 bit trở lên. Rãnh này
dùng để ghép thêm vào những card có chất lượng cao.
Rãnh cắm 16 bit bao gồm rãnh cắm 8 bit và có thêm một rãnh cắm thứ hai.
Sau đây là sự sắp xếp chân của rãnh cắm thứ hai:
Rãnh cắm 8 bit mở rộng:
Chức năng
/MEMCS16
/IOCS16
IRQ10
IRQ11
IRQ12
IRQ13
IRQ14
/DACK0
DRQ0
/DACK5
DRQ5
/DACK6
DRQ6
/DACK7
DRQ7
+5V
/MASTER
GND
Chân
Phía mạch in
D01
D02
D03
D04
D05
D06
D07
D08
D09
D10
D11
D12
D13
D14
D15
D16
D17
D18
Chân
Phía linh kiện
C01
C02
C03
C04
C05
C06
C07
C08
C09
C10
C11
C12
C13
C14
C15
C16
C17
C18
Chức năng
SBHE
LA23
LA22
LA21
LA20
LA19
LA18
LA17
/MEMR
/MEMW
SD8
SD9
SD10
SD11
SD12
SD13
SD14
SD15
Chức năng và ý nghóa của các đường tín hiệu trên rãnh:
A0 ÷ A19
: các đường tín hiệu đòa chỉ, xuất đòa chỉ và đònh đòa chỉ bus hệ
thống gán vào thiết bò ô nhớ và I/O, cho phép truy cập 1Mbyte
bộ nhớ khi BALE ở mức cao và được cài ỏ cạnh xuống của
BALE. Bằng cách sử dụng các lệnh xuất nhập, bộ xử lý có thể
đònh đòa chỉ 64K đòa chỉ cổng I/O. Do các đường từ A10 ÷ A16
không dùng, PC chỉ dùng các đường từ A0 ÷ A9 để đònh vò đòa
chỉ cổng nên đòa chỉ hợp lệ đối với bus hệ thống của PC là 300H
÷ 3F1H.
LA17 ÷ LA23
: đường đòa chỉ có giá trò khi BALE ở mức cao, kết hợp với các
đường dòa chỉ A0 ÷ A19 truy cập 16 Mbyte bộ nhớ.
RESET DRV
: khởi động máy khi bật nguồn hay nhấn RESET.
SD0 ÷ SD15
: các đường dữ liệu 16 bit, truyền 2 chiều.
BALE
: Bus Address Latch Enable cho phép cài đòa chỉ.
AEN
: do DMA phát ra dùng ngăn cản các Slave khi DMA diễn ra.
CLK
: xung đồng hồ (6/8MHz và 14.3MHz).
ALE
: chốt đòa chỉ hợp lệ.
/IOW
: cho phép xuất dữ liệu ra I/O.
/IOR
: cho phép đọc dữ liệu về từ I/O.
/IOCHCK
: kiểm tra lỗi xuất nhập (parity).
/OCHRDY
: báo kênh I/O sẵn sàng.
/MEMW, /MEMR
: ghi và đọc bộ nhớ nhóm tín hiệu phân xử bus.
/SMEMW, /SMEMR : ghi và đọc bộ nhớ, tác động ở vùng nhớ < 1Mb.
SBHE
: Bus High Enable _ báo truyền dữ liệu 8 bit cao.
DRQ0 ÷ DRQ3
: Direct Memory Access Request _ yêu cầu DMA DRQ5 ÷
DRQ7
truyền dữ liệu trực tiếp với bộ nhớ.
/DACK
: DMA Acknoledge _ khi DRQ yêu cầu, máy tính trả lời qua
/DACK.
MASTER
: chân điều khiển để ngoại vi chiếm tuyến của CPU.
/MEMCS16
: báo đang ở chu kỳ truy cập bộ nhớ 16 bit data.
/IOCS16
: báo đang ở chu kỳ truy cập ngoại vi 16 bit data.
TC
: đếm kết thúc do DMA phát ra _ Terminal Count.
OSC
: bộ dao động dùng cho ứng dụng đònh thì tổng quát.
IRQ
: tạo yêu cầu ngắt cho CPU. Ưu tiên IRQ 9÷ IRQ12, IRQ 14÷
IRQ15, IRQ 3÷ IRQ7.
/REFRESH
: báo đang ở chu kỳ làm tươi bộ nhớ động.
OWS
: Zero Wait State _ báo không cần thêm chu kỳ chờ.
Các chu kỳ bus:
Chu kỳ đọc cổng I/O
Trong kỳ đọc cổng I/O, các đường /MEMR, /MEMW, /IOW không tích cực.
Chu kỳ đọc bằng 4 lần chu kỳ xung CLOCK.
Giản đồ thời gian:
CLOCK
ALE
A0÷A9
Valid memmory address
MEMR
MEMW
IOR
IOW
D0÷D7
Chu kỳ ghi cổng I/O:
Valid Data
Chu kỳ ghi cổng I/O bằng 5 lần chu kỳ bit.
Giản đồ thời gian:
CLOCK
ALE
A0÷A9
Valid port address
IOW
D0÷D7
Valid data to a port
3 Cổng nối tiếp:
Ghép nối tiếp qua cổng RS-232 là một trong những kỹ thuậtđược sử dụng rộng rãi nhất
để ghép nối các thiết bò ngoại vi với máy tính. Qua cổng nối tiếp có thể ghép nối chuột,
mem, máy in, bô biến đổi A/D, các thiết bò đo lường… Số lượng và chủng loại các
thiết bò ngoại vi ghép nố qua cổng nối tiếp đứng hàng đầu trong số các khả năng ghép
nối với máy tính. Em sẽ giới thiệu cụ thể về cổng nối tiếp ở chương sau.
CHƯƠNG II:
Truyền Thông Qua Cổng Nối Tiếp
I.
Vài nét về nguồn gốc :
Sau một thời gian lưu hành không chính thức, đến năm 1962, Hiệp hội các Nhà Công
nghiệp Điện Tử (EIA: The Electronics Industries Association) đã ban hành tiêu chuẩn RS232 áp dụng cho cổng nối tiếp. Các chữ RS viết tắt từ Recommended Standard(Tiêu chuẩn
đã giới thiệu)
Có 2 phiên bản RS-232 được lưu hành trong thời gian tương đối dài là RS-232B va
RS-232C. Cho đến nay chỉ còn RS-232C còn tồn tại mà chúng ta quen gọi là RS-232. Ngày
nay, hầu hết các máy tính đều trang bò một hoặc hai cổng nối tiếp RS-232, và tất cả đều có
khả năng sử dụng RS-232, ít nhất là như một khả năng tùy chọn từ nhà sản xuất máy tính
hoặc từ phía người sử dụng máy tính. Từ chuẩn RS-232 ban đầu đó cho đến nay EIA đă
phát hành thêm nhiều chuẩn truyền thông khác mang họ RS như RS-422, RS-423, RS-485,
các giao diện này đều có những ưu nhược khác nhau mà tùy theo điều kiện sản xuất mà có
những áp dụng khác nhau. Do đó tất cả các chuẩn này vẫn tồn tại song song.
II
Đặc tính giữa các chuẩn RS-232C, RS-422, RS-423, RS-485 :
1. Bảng thông số:
Thông số
Cable
Length(max)
Baud Rate
(tốc độ baud)
RS-232
15m
(50ft)
20Kbps/15m
Mode
Unbalanced
Driver No.
Receiver No.
Logic 0
Logic 1
Communiy
Cable/Signal
(Cáp /tín
hiệu)
Methode
(Phương thức)
Short circuit
Current
1
1
+5+15
-5-15
2V
1
RS-422
1.2km
(4000ft)
10Mbps/12m
1Mbps/120m
100Kbps/1.2m
Balance
Differential
1
10
+2+5
-2-5
1.8V
2
RS-423
1.2km
(4000ft)
100Kbps/9m
10Kbps/90m
1Kbps/1.2m
Unbalanced
Differential
1
10
+3.6+6
-3.6-6
3.4V
2
RS-485
1.2km
(4000ft)
10Mbps/12m
1Mbps/120m
100Kbps/1.2km
Balance
Differential
32
32
+1.5+5
-1.5-5
1.3V
2
Simplex
Half-Duplex
Full- Duplex
500mA
Simplex
Half-Duplex
Full- Duplex
150mA
Simplex
Half-Duplex
Full- Duplex
150mA
Simplex
Half-Duplex
Full- Duplex
150mA
Chuẩn RS-232C :
Là chuẩn của EIA ( Electronics Industries Association ) nhằm đònh nghóa giao điện vật lý
giữa DTE ( Data terminal Equipment : thiết bò đầu cuối dữ liệu ) và DCE ( Data
Communications Equipment : thiết bò cuối kênh dữ liệu ) (ví dụ giữa 1 máy tính và một
modem). Chuẩn này sử dụng đầu nối 25 chân, tuy nhiên chỉ có 1 số ít chân là cần thiết cho
việc liên kết. Về phương diện điện, chuẩn này quy đònh mức logic 1 và mức logic 0 tương
ứng với các mức điện áp nhỏ hơn –3V và lớn hơn +3V. Tốc độ đường truyền không vượt
quá 20Kb/sản phẩm với khoảng cách dưới 15m.
Chuẩn RS-232 có thể chấp nhận phương thức truyền song công (full-duplex).
Một trong những yêu cầu quan trọng của RS-232 là thời gian chuyển từ mức logic
này sang mức logic khác không vượt quá 4% thời gian tồn tại của 1 bit. Giả sử với tốc độ
truyền 19200 baud thì thời gian chuyển mức logíc phải nhỏ hơn 0.04/19200=2.1µs,điều này
làm giới hạn chiều dài đường truyền .Với tốc độ 19200 baud ta có truyền tối đa 50ft (Gần
bằng 15.24m).
Start bit
+12V
-12V
Stop bit
D0 D1 D2 D3 D4 D5 D6 D7
1
1
0
1
0
0
1
1
Một trong những vấn đề cần lưu ý khi sử dụng RS-232 là mạch thu phát không cân bằng
( đơn cực, tức là điện áp vào so với đất ).
Chuẩn RS-489 và RS-423A : Vào năm 1978-1979, EIA đưa ra 2 chuẩn giao tiếp mới để
khắc phục các nhượt điểm trên của RS-232 là RS-444 ( cân bằng ) và RS-423 (không cân
bằng).
Sự chọn lựa giữa truyền cân bằng và không cân bằng được quyết đònh bởi tốc độ truyền tín
hiệu. Khi tốc độ truyền vượt quá 20Kbps thì hầu hết các mạch sử dụng truyền cân bằng,
ngược lại ta sử dụng truyền không cân bằng. Với chuẩn RS-449, tốc độ truyền có thể trên
20Kbps.
Với chuẩn RS-423, tốc độ truyền có thể lên tới 100Kbps và khoảng cách truyền lên đến
1km. Tiêu chuẩn này sử dụng các IC kích phát, thu MC3488 và MC3486.
Chuẩn RS-422A : Một cải tiến nữa của chuẩn RS-232 là chuẩn RA-422A. Với chuẩn này
độ lợi được gia tăng và sử dụng việc truyền tín hiệu sai biệt ( Differential data ) trên những
đường truyền cân bằng. Một dữ liệu sai biệt yêu cầu hai dây, một cho dữ liệu không đảo
(noninverted ), một cho dữ liệu đảo( inverted ). Dữ liệu được truyền trên đường dây cân
bằng, thường là cặp dây xoắn với một điện trở ở đầu cuối. Một IC lái ( Driver ) biến đổi
các mức logic thông thường thành một cặp tín hiệu sai biệt để truyền. Một bộ phận biến
đổi tín hiệu sai biệt ngược lại thành các mức logíc. Dữ liệu nhận là phần khác nhau giữa tín
hiệu không đảo ( A ) và tín hiệu đảo ( A ). Chú ý rằng không cần nối đất giữa thiết bò thu
và thiết bò phát. Các IC lái RS-422A hầu hết hoạt động với điện áp nguồn +5V như các
chip logic. Với chuẩn này tốc độ truyền, khoảng cách truyền được cải thiện rất nhiều.
Chuẩn RS-485 : Giao tiếp EIA RS_485 dựa trên chuẩn RS-422A , nó là một cải tiến của
chuẩn này. Đặc tính điện của nó giống như RS_422A . RS-485 là chuẩn truyền vi sai, sử
dụng hai dây cân bằng, có thể đạt tốc độ 10Mbps và chiều dài truyền thông có thể lên tới
4000 feet (khoảng 1.2km). Điện áp vi sai ngõ ra khoảng +1.5 đến +5V nếu là logic “0” va
từ –3V đến –1.5V cho mức logic “1”. Một sự khác biệt quan trọng của RS-485 là nó cung
cấp đến 32 drivers. Và 32 reicever trên cùng 1 đường truyền. Điều này cho phép tạo ra một
mạng cục bộ. Để có khả năng như vậy thì ngõ ra của driver RS-485 là ngõ ra trạng thái. Nó
có thể ở mức tổng trở cao để bus không bò chập khi có một driver truyền.
Card giao tiếp RS_485 với PC được chế tạo sẳn và sử dụng kết nối DB9 như chuẩn RS422A. Trên car có 1 tín hiệu điều khiển để treo ngõ ra của driver lên mức tổng trở cao khi
nó nhường đường truyền cho 1 driver khác. Thông thường người ta dùng tín hiệu DTR để
làm việc này khi đường tín DTR không được dùng để giao tiếp bên ngoài. Đồng thời một
giao thức mềm đựơc sử dụng để xác đònh đòa chỉ một driver được phép truyền tại một thời
điểm, các driver ở trạng thái tổng trở cao.
Chuẩn RS-485 thường được dùng trong mạng có quan hệ Master-Slave. Chỉ có duy nhất
một trạm là Master ( bộ điều khiển mạng ), còn những trạm khác là các Slave. Master
được tryuyền bất cứ lúc nào, nó sẽ chỉ đònh một Slave bất kỳ giao tiếp với nó tại một thời
điểm. Slave chỉ có thể truyền khi nhận một lệnh thích hợp từ Master. Mỗi Slaver có một
đòa chỉ trên đường truyền và sẽ không được phép truyền nếu không được Master yêu cầu.
III. Các phương pháp truyền thông :
1. Đơn công :( Simplex Communication ) truyền thông một chiều, dữ liệu chỉ có thể truyền
theo một chiều từ máy tính tới thiết bò ngoại vi mà không có chiều ngược lại.
Khối
liệu
dữ
Máy tính
Ngoại vi
2. Bán song công: ( Full-duplex Communication ) thông tin được truyền theo hai bước.
Bước 1 thông tin được truyền từ máy tính đến ngoại vi. Bước hai nhận dữ liệu từ ngoại vi
đến máy tính. Cho phép truyền hai chiều.
Bước 1-phát
CRC Khối dữ liệu
ACK/NAK
Bước 2-thu
Máy tính
Ngoại vi
3. Song công : (Full-duplex Communication ) phát thu đồng thời.
Để thực hiện việc thông tin cần có các nghi thức điều khiển :
o ACK ( Acknowledge ) tín hiệu báo xác nhận, máy thu xác nhận dữ liệu được
truyền.
o NAK ( Not Acknowledge ) máy thu gởi tín hiệu không xác nhận nếu dữ liệu sai.
o CRC ( Cyclic Redundence Check ) kiểm tra dư thừa chu kỳ. Sử dụng các thông tin
thừa để phát hiện và sửa lỗi. Ví dụ dùng ba phần tử cùng thực hiện một chức năng, nếu đầu
ra của một phần tử khác đầu ra của hai phần từ còn lại thì phát hiện sai và phải loại bỏ.
RCR Khối Ack
Khối dữ liệu
RCR
CRC
Khối
Khối dữ liệu
Phát và thu
Ack
CRC
Máy tính
Ngoại vi
Truyền thông tuần tự :
Hầu hết các máy tính lưu trữ và thao tác và lưu trữ dữ liệu theo kiểu song song.
Nghóa là khi gởi 1 byte từ bộ phận này tới bộ phận khác của máy tính, không phải truyền
tuần tự từng bít mà truyền đồng thời nhiều bít trên cùng các mạch dây song song. Số các bit
gởi đi cùng một lúc thay đổi tuỳ theo mỗi loại máy tính khác nhau nhưng thường là 8 hoặc
bội của 8. Vì thế máy tính làm việc thường nhiều byte cùng lúc, ít nhất là một byte.
Nhưng truyền thông từ máy tính đến một máy tính khác hay thiết bò ngoại vi thì được
làm tuần tự, dữ liệu được gởi từng bit. Bộ giao tiếp tuần tự nhận những byte trên những
mạch dây song song và gởi các bít đi một cách riêng biệt.
Dữ liệu trên đường truyền chỉ ở trạng thái điện thế dương( MARK ) hoặc điện thế
âm ( SPACE ). Bất kỳ dữ liệu được truyền nào, trước tiên phải chuyển thành 1 dãy thứ tự
các MARK và SPACE, MARK tương ứng với logic 1, SPACE tương ứng với logic 0.
Có hai hình thức truyền thông tuần tự
Truyền thông bất đồng bộ : ( Asynchronous Communication )
Ký tự được truyền theo các Frame, mỗi frame gồm các start bit, các bít dữ liệu của ký tự
được truyền, parity bit ( để kiểm tra lỗi đường truyền), stop bit. Xử lý truyền và nhận dữ
liệu theo phương thức này sử dụng các vi mạch thu phát không đồng bộ vạn năng UART
( Universal Asynchronous Receiver Transmitter ). Nhượt điểm của phương pháp này là tốc
độ truyền khá chậm vì phải truyền thêm các bit start , bit stop, parity. Muốn loại bỏ các bit
này để nâng cao số bit dữ liệu được truyền, người ta sử dụng phương thức truyền dữ liệu
đồng bộ (Synchronous ).
Chiều của dòng dữ liệu
Luôn ở mức thấp
Luôn ở mức cao
Start D0 D1
D2
D3 D4 D5
D6 D7 Parity Stop Stop
Trạng thái nổi
o Hình vẽ trên minh họa giao thức truyền dữ liệu không đồng bộ ( Asynchronouns
Transmission Protocol). Nếu kênh truyền không có ký tự nào được truyền , nó sẽ ở mức
cao. Khi có ký tự được truyền, kênh truyền sẽ được hạ xuống mức thấp ( Start bit ) để báo
cho phía thu là có 1 ký tự được truyền tới, tiếp đó là các bít của ký tự ( có thể là 5,6 ,7 hay
8 bit – trong ví dụ trên là 8 bit )
o Để kiểm tra lỗi đường truyền người ta sử dụng bít chẳn lẻ ( parity bit ), tức là kiểm
tra chẳn lẻ số bit 1. Nếu kiểm tra chẳn, nghóa là tổng số bit 1 trong ký tự ( từ D0 D7 ) và
bít chẳn lẻ phải chẳn. Ngược lại nếu kiểm tra số bit 1 trong ký tự là lẻ thì bit chẳn lẻ phải
lẻ. Bit stop được sử dụng để báo cho phía thu biết rằng việc truyền ký tự đã kết thúc. Số bit
stop thường được dùng là 1, 1.5, 2 bit. Như vậy trong phương pháp truyền bất đồng bộ, các
bit dữ liệu sẽ được đóng khung cùng với các bit start, stop, và bit parity tạo thành 1 Frame.
Truyền thông đồng bộ : ( Synchronous communications )
Phương thức truyền này không dùng các bít start, stop để đóng khung mỗi ký tự mà chèn
các ký tự đặc biệt như SYN ( Synchronization ), EOT ( End of Transmission ) hoặc 1 cờ
giữa các dữ liệu của người sử dụng để báo hiệu cho người nhận dữ liệu biết rằng dữ liệu đã
hoặc đang đến.
Truyền thông đồng bộ thường được tiến hành với tốc độ 4800bps, 9600bps hoặc
thậm chí còn cao hơn. Trong phương pháp này, một khi đã đồng bộ, các Modem vẫn tiếp
tục gởi ký tự để duy trì đồng bộ, ngay cả lúc không phát dữ liệu. Một ký tự ‘IDLE’ được
gởi đi khi không có dữ liệu phát. Phương pháp truyền đồng bộ khác phương pháp truyền bất
đồng bộ ở khoảng thời gian truyền giữa hai ký tự luôn giống nhau.
Truyền đồng bộ đòi hỏi các xung clock trong máy thu và phát phải duy trì đồng bộ
những khoảng thời gian dài.
Trong phương pháp truyền đồng bộ các ký tự truyền sẽ được kèm theo một ký tự
đồng bộ SYN (mã ASCII là 22 ). Xử lý truyền và nhận là các vi mạch USART ( Universal
Synchronous Asynchronous Receiver Transmitter ), vi mạch này cho phép hoạt động trong
cả hai chế độ truyền.
SOH
o
o
o
o
o
o
Header
SXT
Text
EXT
BCC
Thông tin điều khiển
dữ liệu
SOH (Start of header ) : Phần bắt đầu của 1 đơn vò thông tin chuẩn.
SXT ( Start of text ) : Chỉ sự kết thúc của header và bắt đầu phần dữ liệu.
EXT (End of text ): ký tự kết thúc phần dữ liệu hay văn bản.
BCC ( Block check character ) : ký tự kiểm tra khối.
TEXT : thân dữ liệu hay văn bản.
HEADER : phần đầu.
CHƯƠNG III:
Vi mạch UART ( Universal Asynchronous Receiver ) 8250A,
16450.
I. Đòa chỉ Port và IRQ’s:
1. Bảng đòa chỉ PORT tiêu chuẩn : trình bày ở dưới :
Tên
Đòa chỉ
COM 1
3F8H
COM 2
2F8H
COM 3
3E8H
COM4
2E8H
Ở trên là bảng đòa chỉ chuẩn. Nếu có vấn đề về thu
chúng ta có thể xem từ vùng hệ thống BIOS .
IRQ
4
3
4
3
phát khi sử đòa chỉ các cổng Com trên
2. Bảng đòa chỉ cổng Com trong vùng dữ liệu BIOS : trình bày ở dưới.
Đòa chỉ
0000:0400
0000:0402
0000:0404
0000:0406
Chức năng
Đòa chỉ nền của Com 1
Đòa chỉ nền cua Com 2
Đòa chỉ nền cua Com 3
Đòa chỉ nền cua Com 4
Bảng trên trình bày của cổng Com mà chúng ta có thể tìm thấy trong vùng dữ liệu BIOS
của PC. Mỗi đòa chỉ gồm hai Byte.
II. Tổng quan :
Vi mạch 8250A ( hoặc 16450 ) của Intel là một UART được dùng rất rộng rãi trong các
PC. UART 8250A có các chức năng chính như sau:
Biến đổi dữ liệu song song từ CPU thành dạng nối tiếp để truyền đi, đồng thời thu
dòng dữ liệu nối tiếp và đổi chúng thành các ký tự song song. Sau đó gởi đến vi xử lý (µp).
Thêm các bit Start, stop, parity vào từng ký tự trước khi phát đi và tách các bit này ra
khỏi ký tự nhận được.
Bảo đãm các bit kỳ tự truyền đi với tốc độ được lập trình trước, kiểm tra để phát hiện
lỗi tương ứng : lỗi ký tự, lỗi parity.
o Set tín hiệu bắt tay phần cứng thích hợp và cho biết trạng thái của tín hiệu.
1. Các thanh ghi của UART :
Các thanh ghi điều khiển chính (Control Register : CR ) nhận được lệnh từ CPU.
o Thanh ghi điều khiển đường truyền ( Line Control Register : LCR ): dùng để đặt
các thông số truyền .
o Thanh ghi điều khiển Modem ( Mode Control Register : MCR ) : điều khiển tín
hiệu bắt tay gởi từ UART.
o Thanh ghi cho phép ngắt ( Interrupt Enable Register : IER ) :
Thanh ghi trạng thái ( Status Register : SR ) : thông báo cho CPU biết hoạt động của
UART.
o Thanh ghi trạng thái đường truyền ( Line Status Register : LSR ) : chứa thông tin về
truy xuất dữ liệu.
o Thanh ghi trạng thái Modem ( Modem Status Register : MSR ) : chứa thông tin về
trạng thái của những đường bắt tay.
o Thanh ghi đònh danh ngắt ( Interrupt Identification Register : IIR ) : chứa thông tin
về trạng thái hiện tại của ngắt gởi đến.
Thanh ghi đệm ( Buffer Register : BR ) : phục vụ cho việc trao đổi dữ liệu.
o Thanh ghi giữ phát ( Transmitter Holding Register : THR ) : giữ dữ liệu kế tiếp
trước khi phát đi.
o Thanh ghi đệm thu ( Receiver Buffer Register : RBR ) : giữ kí tự thu được sau
cùng.
o Ở bảng dưới đòa chỉ nền có thể là ( 2F8H, 3F8H, 2E8H, 3E8H ) tuỳ theo cách chọn
của người lập trình.
Đòa
chỉ
nền
DLAB A2
A1
A0
Chọn ra
0
0
0
0
Thanh ghi đệm thu (RBR ), thanh ghi giữ
phát (THR)
0
1
1
0
0
0
0
0
0
1
0
1
Thanh ghi cho phép tạo yêu cầu ngắt (IER).
Thanh ghi cho số chia phần thấp (LSB).
Thanh ghi cho số chia phần cao (MSB).
X
0
1
0
X
X
X
X
0
0
1
1
1
1
1
0
0
1
1
1
0
1
0
1
Thanh ghi nhận dạng nguồn gốc yêu cầu
ngắt(IIR).
Thanh ghi điều khiển đường dây (LCR ).
Thanh ghi điều khiển Modem (MCR ).
Thanh ghi trạng thái đường dây(LSR ).
Thanh ghi trạng thái Modem ( MSR ).
Thanh ghi nháp (dành cho CPU, ít khi sử
dụng ).
+0
+1
+0
+1
+2
+3
+4
+5
+6
+7
•
Trong bảng trên bạn phải chú ý cột DLAB . Khi DLAB đặt lên ‘0’
hoặc’1’ thì một vài thanh ghi sẽ thay đổi. Có thể thấy như thế này, UART cho phép 12
thanh ghi, trong khi đó chỉ có 8 port đòa chỉ. DLAB dùng truy cập bit chốt chia, khi
DLAB đặt lên’1’ trong thanh ghi điều khiển đường truyền (bit thứ 7 cùa thanh ghi này),
thì hai thanh ghi trở nên có giá trò ( Divisor Latch Low Byte : ‘Reg+0’, Divisor Latch
High Byte : ‘Reg +1’ ), sau đó chúng ta dùng hai thanh ghi này dùng cho việc đặt tốc
độ truyền thông. Ví dụ như sau :
Tốc
độ
Diviso
r
Byte chốt chia
cao(DLHB)
Byte chốt chia
thấp(DLLB)
( Bau
d)
50
300
600
2400
4800
9600
19200
38400
57600
11520
0
2304
384
192
48
24
12
6
3
2
1
09H
01H
00H
00H
00H
00H
00H
00H
00H
00H
00H
80H
C0H
30H
18H
0CH
06H
03H
02H
01H
3. Vi mạch 8250A được thể hiện trên hình vẽ ở dưới:
Vi mạch 8250A có 3 tín hiệu chọn chip để tạo điều kiện thuận lợi cho người sử dụng trong việc giải mã đòa
chỉ cơ bản. Các chân đòa chỉ cơ bản A1, A2, A0, giúp ta chọn các thanh ghi bên trong của UART ( xem bảng
ở dưới)
D0…D7
Đệm
bus
dữ liệu
Đệm
phát
A0
A1
A2
A0
WR
CS2
CS 0
CS1
Logic
điều
khiển
ghi đọc
Điều
khiển
Thu
Phát
Và
modem
Xtal
Baud
− out
RxClk
Out1
RST
CTS
Out 2
Maste
r
DTR
DSR
RLSD
RI
Đ
ệ
INTRPT
th
u
Bảng chọn thanh ghi trong vi mạch 8250A.
X-tal là các chân để cắm thạch anh dùng cho mạch dao động bên trong của 8250A.
Trong trường hợp sử dụng tín hiệu đồng hồ chuẩn từ bên ngoài thì ta đưa xung đồng hồ vào
chân X-tal 1 và bỏ lửng chân X-tal 2 . Chân RLSD ( receiver line signal detect ) chính là
chân tìm thấy sóng mang ( CD hoặc DCD cho tiêu chuẩn RS-232C hoặc Syndet của 8251A
), tức là thiết lập được đường truyền. Tín hiệu RI ( Ring indicator ), cũng là tín hiệu chuẩn
của RS-232C, để modem thông báo là có xung réo chuông. Tín hiệu INTRPT là tín hiệu
yêu cầu ngắt CPU. Các đầu ra phụ OUT1 và OUT 2 dành cho người sử dụng trong trong
trường hợp không tương thích với chuẩn RS-232C. Chân MS (Master reset) là chỗ nối vào
của tín hiệu reset của hệ thống có tác dụng xóa tất cả các thanh ghi trong vi mạch 8250A,
trừ thanh ghi đệm thu, thanh ghi đệm phát và các thanh ghi MSB và LSB của số chia.
Tốc độ truyền được tính nhờ vào việc chọn xung đồng hồ vào X-tal
1
và việc chọn số chia của
tần số này( để tại thanh ghi MSB và LSB ). Ví dụ, nếu ta dùng tần số 1.8432 Mhz tại X-tal 1 , ta muốn tốc độ
phát là 9600 baud ta tìm số chia để ghi vào LSB và MSB như sau :
Số chia = tần số vào /( tốc độ phát x 16) = 1.8432x10 6 /(9600x16) =12.
Thanh ghi điều khiển đường truyền : (Line control register : LCR )
Thanh ghi này có tên là thanh ghi đònh dạng dữ liệu vì nó quyết đònh khuôn dạng dữ liệu của truyền
thông trên đường dây. Dạng thức của thanh ghi LCR được biểu diễn như hình ở dưới :
D7
D6
D5
D4
Bit
1 : đảo
Bđiều
parity.
DLAB
SBCB
it truy khiển
0:
cập số gián
không
1: truy nhập
đoạn.
hoạt
số chia.
1: buộc động
0: Truy nhập Soun=
IER,THR
0.
,RBR
0:khôn
g hoạt
động.
D3
D2
D1
D0
Kiểm Cho
Số bit
tra
phép PENstop. STB
SP
EPS
0: 1bit.
chẳn lẻ. tạo,
1:1.5
1: parity kiểm
bit
chẳn. tra
2 bit
0: parity parity.
lẻ.
1: cho
phép.
0: cấm.
Chọn độ
dàiWSL1
từ.
00: 5bit
01: 6bit.
10: 7 bit.
11: 8bit
WSL0
Trong thanh ghi điều khiển đường truyền LCR cần chú ý đến vấn đề sau : việc quy đònh số
bit stop không chỉ phụ thuộc vào bit D2 mà còn phụ thuộc vào mã chọn độ dài ký tự. Cụ
thể là : nếu D2=1 mà mã này là 00( D1D0 )thì sẽ tạo /kiểm tra 1.5 bit stop, nếu mã này là
6, 7, 8 bit thì sẽ tạo / kiểm tra 2 bit stop.
Thanh ghi đệm phát : (Transmitter holding register : THR)
Ký tự cần phát đi phải được ghi từ CPU vào thanh ghi này trước khi phát đi trong khi bit
DLAB=0. Sau đó , khi truyền đi 8255A lấy dữ liệu từ thanh ghi này, đóng khung nó như đã
đònh, sau đó lần lượt đưa từng bít ra cổng S out .
Thanh ghi đệm thu (Receiver buffer register : RBR ) : Khi 8250A nhận được 1 ký tự
qua chân S in , nó tháo bỏ khung ký tự và giữ ký tự tại thanh ghi đệm thu để CPU đọc, CPU
chỉ đọc ký tự này khi bit DLAB=0.
Thanh ghi cho phép tạo yêu cầu ngắt( Interrupt enable register : IER ): thanh ghi
này dùng để cho phép hay cấm ngắt. Trong khi mạch 8250A hoạt động, có thể tác động
đến CPU thông qua chân INTRPT của UART. Mỗi bit trong các bit D3, D2, D1, D0 ở mức
cao sẽ cho phép các trạng thái ứng với bit đó đưa ra yêu cầu ngắt đối với CPU. Biểu diễn
thanh ghi IER ở hình dưới :
0
D7
0
D6
0
D5
1:Cho phép thay đổi
trạng thái của modem
gây ngắt
0
D4
Modem
D3
Rline
D2
1: Cho phép
các tín hiệu
trạng thái
đường dây
thu ngắt.
Txemty
D1
1: cho
phép ngắt
khi đệm
giữ phát
rỗng.
RXRDY
D0
1: cho
phép gây
ngắt khi
đệm thu
đầy.
Thanh ghi nhận dạng nguồn yêu cầu ngắt: (Interrupt Identification Register : IIR ):
Thanh ghi nhận dạng ngắt chỉ dùng để đọc, chứa mã ưu tiên cao nhất của yêu cầu
ngắt ( tại chân INTRPT của 8250A ) đang chờ được phục vụ. Do đó khi cần xử lý các yêu
cầu ngắt theo kiểu thăm dò, CPU chỉ cần đọc bit 0 của thanh ghi này để biết là có yêu cầu
ngắt, và cần xét các bit ( Bit 1, bit 2 ) để xác đònh nguồn gốc của yêu cầu ngắt. Thứ tự ưu
tiên ngắt từ thấp đến cao theo thứ tự từ trên xuống dưới theo bảng ở dưới :
Bit
Bit 6:7
Ghi chú
Bit 6
0
0
1
Bit 7
0
1
1
Cho trạng thái bộ đệm vào trước ra trước.
Không vào trước ra trước.
Cho phép vào trước ra trước nhưng không dùng.
Cho phép vào trước ra trước .
Bit 5
Bit 4
Bit 3
Cho phép vào trước ra trước 64 byte ( chỉ 16750).
0
1
Bit 2
Bit 1: 2
0
0
1
1
Bit 0
0
1
Bit 1
0
Ngắt trạng thái modem.
1
Ngắt khi đệm giữ phát rỗng.
0
Đệm thu đầy.
1
Ngắt trạng thái đường truyền thu.
Có yêu cầu ngắt .
Không có.
Thanh ghi điều khiển Modem: ( Modem control register : MCR ) : Thanh ghi điều
khiển modem là thanh ghi đọc ghi. Thanh ghi còn được gọi là thanh ghi điều khiển các tín
hiệu ra của modem bởi vì nó cho phép ta điều khiển các tín hiệu tại các chân DTR và RTS
của mạch UART. Dạng thức của nó được biểu điễn như sau:
Bit
Bit 7
Bit 6
Bit 5
Ghi chú
Reserved
Reserved
Cho phép điều khiển tự động tràn (chỉ
16750).
Nối vòng cục bộ
1: nối vòng
0: bình thường
OUT 2
OUT 1
RST( force reques to send)
1: đưa RTS =0.
0: đưa RTS =1.
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
DTR (Force Data Terminal Ready).
1: đưa DTR=1.
0: đưa DTR =0.
o Với bit 0 ta có thể điều khiển tín hiệu tại chân DTR của 8250A đạt mức tích cực
thấp để báo cho UART sẳn sàng làm việc.
o Với bit 1 ở mức thấp thì 8255A sẽ báo cho UART sẳn sàng phát ký tự.
o Bằng bit 2, bit 1 của thanh ghi MCR chúng ta có thể điều khiển chân OUT1 và
OUT 2 tích cực hay không tích cực.
o Bit 4 của thanh ghi MCR cho phép mạch 8250A làm việc ở chế độ nối vòng cục bộ
để kiểm tra chức năng của UART.
o Các chân điều khiển vào của modem ( DSR , CTR , RI , RLSD ) không được nối ra
ngoài mà được nối bên trong mạch với các chân điều khiển ra của modem( DTR , RTS ,
OUT1 , OUT 2 ).
Thanh ghi trạng thái đường dây ( Line Status Register : LSR ) : Thanh ghi này là
thanh ghi chỉ đọc, cho biết trạng thái của việc truyền tín hiệu trên đường dây như thế nào.
Dạng thức của thanh ghi này biểu diễn như ở bảng dưới :
Bit
Bit 7
Ghi chú
Lỗi trong quá trình thu FIFO ( Error in
Receiver FIFO ).
Bit 6
Thanh ghi dòch phát rỗng ( Empty Data
Holding Register ).
Bit 5
Thanh ghi giữ phát rỗng ( Empty
Transmitter Holding Register ).
Bit 4
Break Interrupt
Bit 3
Lỗi khung( Framing error).
Bit 2
Lỗi parity( parity error).
Bit 1
Lỗi do đè thu (Overrun error)
Bit 0
Dữ liệu sẳn sàng ( data Ready ).
o Khi bit 6 set lên (mức 1 ) thì cả hai thanh ghi truyền phát ( Transmitter holding
register ) và thanh ghi dòch (shift register ) đều rỗng . Trong khi đó khi bit 5 set lên thì chỉ
có thanh ghi giữ phát là trống ( transmitter holding register ). Vậy đâu là sự khác nhau giữa
chúng. Khi bit 6 set lên thì thanh giữ phát rỗng, đường truyền không tích cực. Còn khi bit 5
set lên thì thanh ghi truyền phát rỗng nhưng biến đổi nối tiếp dùng thanh ghi dòch có thể
đang làm việc.
o Bit 4= 1, xảy ra khi tín hiệu ở đầu vào của phần thu giữ mức logic 0 lâu hơn thời
gian dành cho 1 ký tự, bit này bò xoá khi CPU đọc thanh ghi LSR.
o Bit 3 :
o Bit 2=1, khi có lỗi parity, bit này được xoá khi CPU đọc thanh ghi LSR.