Ch ng X: Ho t đng port n i ti pươ ế
I. Gi i thi u:
Các máy tính truy n d li u theo hai cách: Song song và n i
ti p. Trong truy n d li u song song th ng c n 8 ho c nhi u ế ườ
đng dây d n đ truy n d li u đn m t thi t b ch cách xa ườ ế ế
vài b c ướ
Trong truy n thông n i ti p d li u đc g i đi t ng bít m t so ế ượ
v i truy n song song thì m t ho c nhi u byte đc truy n đi ượ
cùng m t lúc.
chuy n đi n i ti p sang song song v i d li u nh p. ế
Port n i ti p đc truy xu t qua các chân TXD và RXD. D li u ế ượ
đc thu (nh p) qua chân RXD (P3.0) và d li u đc phát ượ ượ
(xu t) qua chân TXD(P3.1)
Port n i ti p cho ho t đng song công (full duplex: thu ế
và phát đng th i) và đm thu (receiver buffering)
cho phép m t ký t s đc thu và đc gi trong ượ ượ
khi ký t th hai đc nh n. N u CPU đc ký t ượ ế
th nh t tr c khi ký t th hai đc thu đy đ thì ướ ượ
d li u s không b m t.
Hai thanh ghi ch c năng đc bi t cho phép ph n m m
truy xu t đn port n i ti p là: SBUF và SCON. ế ế
B đm port n i ti p (SBUF) đi ch 99H nh n d ế
li u đ thu ho c phát
Thanh ghi đi u khi n port n i ti p (SCON) đi ch ế
98H là thanh ghi có đi ch bit ch a các bit tr ng
thái và các bit đi u khi n
II. Các thanh ghi PORT
1. Thanh ghi đm n i ti p SBUF(Serial Buffer Register) ế
Thanh ghi SBUF đóng vai trò v a là b đm phát
v a là b đm thu:
D li u c n phát đi s đc ghi vào SBUF và đc phát ượ ượ
qua ngõ TXD, trong tr ng h p này nó là b đm phátườ
D li u thu s đc n p vào SBUF thông qua ngõ RXD và ượ
đc d li u t thanh ghi SBUF đ truy xu t d li u thu
đc, trong tr ng h p này nó là b đm thuượ ườ
T c đ baud c a port n i ti p có th l y t b dao ế
đng trên chip ho c s d ng timer.
C u trúc c a thanh ghi SBUF:
SBUF
CLK (Chỉ ghi) Q D Thanh ghi d ch CLK
SBUF
(ch đc)
BUS n i 8051
SBUF
(ch đc)
Baud rate clock
(transmit)
Ví d : các l nh ghi d li u vào
SBUF và đc d li u t SBUF
MOV SBUF, # 40H ; phát giá tr 40H qua port
n i ti p ế
MOV SBUF, A ; phát n i dung c a A qua
port n i ti p ế
MOV A, SBUF ; đc d li u thu đc t ượ
port n i ti p ế