Tải bản đầy đủ (.doc) (81 trang)

Giao diện PC với các KIT vi điều khiển qua cổng COM

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (656.86 KB, 81 trang )

GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
PHẦN I
CƠ SỞ LÝ THUYẾT
CHƯƠNG 1
CẢM BIẾN NHIỆT ĐỘ
I. KHÁI NIỆM VỀ NHIỆT ĐỘ
Nhiệt độ là trạng thái cơ bản của vật chất, nó đặc trưng cho mức độ nóng lạnh
của vật chất. Bản chất của nhiệt độ là do sự chuyển động của các phần tử gây
nên, chuyển động càng nhanh vật chất càng nóng, chuyển động của các phần
tử liên quan mật thiết đến nhiệt độ . Do đó người ta gọi chuyển động giữa các
phần tử là chuyển động nhiệt .
Nhiệt độ luôn truyền từ nơi có nhiệt độ cao đến nơi có nhiệt độ thấp, có nhiều
cách truyền nhiệt như : đối lưu, tiếp xúc hay bức xạ . Tốc độ truyền nhiệt phụ
thuộc vào mức độ chênh lệch giữa nhiệt độ và hệ số truyền nhiệt . Do tính chất
truyền nhiệt mà nguồn nhiệt luôn bò mất nhiệt ra môi trường xung quanh .
II. CÁC PHƯƠNG PHÁP ĐO NHIỆT ĐỘ
Để đo nhiệt độ, người ta thường dựa trên các nguyên lý sau :
Dựa trên sự giãn nở
Dựa trên đặc tính giãn nở của một số vật liệu theo sự thay đổi nhiệt độ mà
người ta xác đònh được nhiệt độ dựa trên một mức chuẩn đã đònh trước . Vật
liệu thường dùng là Platin, thủy ngân, cồn, … Tầm nhiệt đo giới hạn dưới
1000
o
C .
Dựa trên sự thay đổi độ dẫn điện của vật liệu theo nhiệt độ
Dựa trên đặc tính này, ta tính được dòng điện tương ứng với một mức nhiệt độ
nào đó . Nguyên lý này được ứng dụng dưới nhiều dạng :
 Dạng thay đổi điện trở theo nhiệt : tầm đo (-200
o
C ÷ -650
o


C)
 Dạng bán dẫn : Tầm đo -100
o
C ÷ -1200
o
C
 Dạng cặp nhiệt điện : tầm đo -270
o
C ÷ -2500
o
C
Chương 1 : Cảm Biến Nhiệt Độ Trang 1
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Dựa trên sự bức xạ của vật liệu khi bò gia nhiệt
Các vật liệu khi bò gia nhiệt sẽ bức xạ, dựa trên đặc tính này ta đo độ bức xạ và
tính ra nhiệt độ trên vật liệu . Tầm nhiệt độ > 100
o
C .
Để đo nhiệt độ có nhiều phương pháp
 Phương pháp đo trực tiếp bằng nhiệt kế thông thường
Chỉ đo ở tầm nhiệt độ thấp, dưới 1000
o
C . Phương pháp này đơn giản, rẻ tiền,
đọc trực tiếp giá trò nhiệt độ . Tuy nhiên sai số lớn không thích hợp trong công
nghệ cần sự chính xác cao .
 Phương pháp đo bằng cảm biến điện tử
Dựa vào đặc tính dẫn điện khi nhiệt độ biến thiên của một số chất bán dẫn,
người ta chế tạo các bộ cảm biến điện tử, nhiệt trở của các bộ cảm biến này có
độ chính xác tương đối, giá thành rẻ . Tuy nhiên, tầm nhiệt độ hoạt động cũng
không cao lắm, khoảng dưới 1000

o
C. Tín hiệu thu được là tín hiệu dạng
Analog, rất nhỏ phải được khuếch đại và xử lý mới sử dụng được .
Trong điện tử dùng vi mạch LM–335 để cảm biến nhiệt độ
 Phương pháp đo bằng cặp nhiệt
Đây là phương pháp đo qua trung gian, giá trò điện có thể đo được ở tầm nhiệt
độ cao từ 200
o
C ÷ 2000
o
C . Tín hiệu thu được cũng phải qua khâu xử lý đặc biệt
như khuếch đại, biến đổi A/D . Phương pháp này có độ chính xác cao.
 Các phương pháp đo khác
Ngoài ra, người ta còn nhiều phương pháp đo đặc biệt để đo nhiệt độ ở những
nơi có nhiệt độ quá cao hoặc nơi có tính chất đặc biệt : Đo qua tia hồng ngoại .
Trong đề tài này ta dùng phương pháp cảm biến điện tử (họ IC LM 335 ) để đo
nhiệt độ .
Các thang đo nhiệt độ
Để đo nhiệt độ, Người ta dùng nhiều thang đo tùy vào lónh vực ứng dụng và
quy đònh của từng quốc gia . Có 4 dạng thang chia nhiệt độ hay dùng nhất là :
Thang chia Celcius (
o
C), thang chia Kelvin (
o
K), thang chia Fahrenhiet (
o
F) và
thang chia Réaumur (
o
R) .

 Thang chia Celcius
Thang chia nhiệt độ này do Anders Celcius (1701 – 1744) đưa ra, nhiệt độ đông
đặc và nhiệt độ sôi của áp suất khí quyển bình thường được lấy làm điểm gốc .
Chương 1 : Cảm Biến Nhiệt Độ Trang 2
LM 335
Khuếch đại
Lấy giá trò điện áp để điều khiển, hiển thò
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Khoảng thang chia nhiệt độ giữa hai điểm đó được chia thành 100 phần bằng
nhau . Nhiệt độ đông đặc của nước trong thang chia Celcius được lấy là 0
o
C .
 Thang chia nhiệt độ tuyệt đối Kelvin
Thang chia nhiệt độ tuyệt đối do William Thomson (Lord Kelvin) đưa ra có liên
hệ với Celcius bởi đẳng thức :
T
o
K = T
o
C + 273, 15
Độ không của thang chia tuyệt đối theo Kelvin: T
o
K = 0 tương ứng với nhiệt độ
t
o
= -273,15
o
C và được gọi là không tuyệt đối (
o
K) . Đó là nhiệt độ tại đó

chuyển động nhiệt hổn loạn của các phân tử khí lý tưởng sẽ ngừng lại, tức là
khí lý tưởng ở 0
o
K sẽ thành vật rắn .
 Thang chia nhiệt độ Fahreinheit
Độ chia trong thang chia của Fahreinheit là 0, 01 khoảng nhiệt độ giữa nhiệt độ
tan của hỗn hợp tuyết và Amoniclorua với nhiệt độ bình thường của cơ thể con
người .
Theo thang chia này, nhiệt độ tan của băng (
o
C) là 32
o
F và nhiệt độ sôi của
nước ở áp suất bình thường (100
o
C) là 212
o
F . Khoảng nhiệt độ từ nhiệt độ tan
của tuyết đến nhiệt độ sôi của nước được xác đònh trong thang chia Fahreinheit
là 180
o
F .
 Thang chia nhiệt độ Réaumur
Nhiệt độ chia trong thang chia của Réaumur được lấy là nhiệt độ tan của tuyết
hay băng như thang chia Celcius, nhưng độ chia được lấy bằng 1/80 khoảng
nhiệt độ giữa độ tan của tuyết và nhiệt độ sôi của nước ở áp suất bình thường .
Như vậy, khoảng từ nhiệt độ tan của tuyết đến nhiệt độ sôi của nước được xác
đònh trong thang chia Réaumur là 80
o
R .

Biểu thức chuyển đổi từ thang chia nhiệt độ này sang thang chia nhiệt độ khác
có dạng
9
32
45
15273
5

==

=
TTT
T
O
F
O
R
O
K
O
C
,
III. CẢM BIẾN NHIỆT ĐỘ
Tổng quan về cảm biến nhiệt độ
Cảm biến nhiệt độ là dụng cụ chuyển đổi đại lượng nhiệt thành các đại lượng
vật lý khác chẳng hạn như điện, áp suất, độ giãn nở dài, độ giãn nở khối, điện
trở, … Cảm biến nhiệt độ là phần tử không thể thiếu trong bất kỳ hệ thống đo
lường điều khiển nhiệt độ nào. Cảm biến nhiệt độ có khả năng nhận biết được
Chương 1 : Cảm Biến Nhiệt Độ Trang 3
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON

tín hiệu nhiệt độ một cách chính xác, trung thực và chuyển đổi thành tín hiệu
có thể đo lường được như điện áp, dòng điện, điện trở, thể tích, áp suất, …
Các thông số cảm biến nhiệt
 Thông số cấu tạo : được quyết đònh do nhà sản xuất và phụ thuộc vào từng
loại cảm biến.
 Thông số sử dụng : bao gồm các yếu tố sau
 Khoảng làm việc : là khoảng nhiệt độ mà cảm biến có khả năng khi
chưa bò bão hòa . Khoảng làm việc cao hay thấp là do tính chất cấu
tạo và tính lý hóa của từng loại cảm biến qui đònh .
 Độ nhạy: được đònh nghóa
df: sự thay đổi đại lượng đo của cảm biến .
dx : sự thay đổi đại lượng vật lý.
 Ngưỡng độ nhạy: là mức thấp nhất mà cảm biến có thể phát hiện
được .
 Tính trễ : còn gọi là quán tính của cảm biến. Tính trễ của cảm biến
tạo ra sai số của phép đo. Tốc độ thay đổi của đại lượng đo phải phù
hợp với tính trễ của cảm biến. Nếu đại lượng đo thay đổi quá nhanh
mà quán tính của cảm biến lớn thì không thể đo chính xác được. Mọi
cảm biến đều có tính trễ do ảnh hưởng của vỏ bảo vệ.
Các loại cảm biến thông dụng
 Cặp nhiệt điện
Cặp nhiệt điện là dụng cụ đo nhiệt độ thường được sử dụng rộng rãi trong công
nghiệp. Cơ sở chế tạo cặp nhiệt điện dựa trên các nguyên lý sau :
 Hiệu ứng Thomson : qua một dây dẫn có dòng điện I và hiệu nhiệt trên
dây là T1-T2 thì sẽ có một sự hấp thụ hay tỏa nhiệt.
 Hiệu ứng Pentier : khi có dòng điện đi qua một mối nối của hai dây dẫn
thì tại vò trí mối nối sẽ có sự hấp thụ hay tỏa nhiệt.
 Hiệu ứng Seebeck: trong một dây dẫn bất kỳ, khi có sự chênh lệch nhiệt
độ tại một điểm thì ngay tại điểm đó sẽ xuất hiện một suất điện động
 Đònh luật Macmut: trong một mạch điện kín của dây dẫn đồng nhất bất

kỳ, sự phân bố nhiệt độ ra sao, suất điện động tổng cộng của mạch luôn
bằng không .
Chương 1 : Cảm Biến Nhiệt Độ Trang 4
dx
df
s
=
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Cấu tạo cặp nhiệt điện
Cặp nhiệt điện được chế tạo bằng hai sợi kim loại khác nhau và có ít nhất là
hai mối nối. Một đầu được giữ ở nhiệt độ chuẩn gọi là đầu ra, đầu còn lại tiếp
xúc với đối tượng đo.
Cặp nhiệt điện có cực dương và cực âm, cực dương thường đánh dấu màu đỏ
Tùy theo vật liệu chế tạo, cặp nhiệt điện được phân thành các loại sau:
Vật liệu cấu tạo
Về nguyên tắc, khi đốt nóng mối hàn của hai kim loại bất kỳ đều phát sinh một
suất điện động nhiệt . Nhưng không phải tất cả các kim loại và hợp kim nào
cũng đều dùng làm cặp nhiệt được .Vật liệu làm cặp nhiệt điện đòi hỏi một số
yêu cầu sau :
 Độ tinh khiết cao.
 Tính chống ăn mòn tốt.
 Độ nóng chảy cao hơn nhiệt môi trường cần đo.
 Một số tính chất chủ yếu như :dẫn điện, dẫn nhiệt tốt.
 Tính lặp lại trong khoảng một thời gian dài.
Ngoài ra độ chính xác của cặp nhiệt điện còn phụ thuộc vào độ chính xác chế
tạo và lý tính của môi trường đo.
Cách sử dụng
Để cặp nhiệt điện có thể làm việc tốt và lâu bền , khi sử dụng cần lưu ý:
 Cặp nhiệt điện cần có vỏ bảo vệ để chống tác động xâm thực của môi
trường, yêu cầu đối với vỏ bọc là cách điện nhưng không cách nhiệt.

 Phải đặt cặp nhiệt ở nơi thích hợp vì thường là nhiệt không phân bố đều.
Chương 1 : Cảm Biến Nhiệt Độ Trang 5
20
40
30
50
10
180014001000600200
60
T (
0
C)
70
E(mV)
R
J
T
K
S
E
B
E
J
K
T
E: Chromel/constantan
J: Sắt/constantan
T: Đồng/constantan
K: Chromel/Alumel
R: Platin-Rodi(13%)/Platin

S: Platin-Rodi(10%)/Platin
B: Platin-Rodi(30%)/Platin-Rodi(6%)
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
 Vò trí lắp đặt phải tránh chỗ có từ trường, điện trường mạnh.
 Để cặp nhiệt thẳng đứng, đề phòng ống bảo vệ bò biến dạng do nhiệt cao.
 Nên lắp đặt dây bù vào ống sắt nối đất để tránh nhiễu .
 Nhiệt kế điện trở
Nguyên lý làm việc của nhiệt kế là dựa vào sự thay đổi điện trở theo nhiệt độ
của các vật liệu dẫn điện.
 Nhiệt điện trở kim loại
Cấu tạo
Vật liệu cấu tạo điện trở kim loại đòi hỏi các yêu cầu sau:
 Hệ số nhiệt lớn.
 Điện trở suất lớn.
 Tính ổn đònh lý hóa tốt.
 Tính thuần khiết.
Độ nhạy
Độ nhạy S của nhiệt điện trở kim loại có dạng sau:


R
ΔR
S ×==

α : là hệ số nhiệt điện trở.
R : là điện trở ở 0
o
C.
Hệ số nhiệt điện trở
Hệ số nhiệt điện trở của kim loại sẽ tính như sau


dTR
dR
×
=
α
Hệ số nhiệt α phụ thuộc vào tính đồng nhất của kim loại .
Nhiệt điện trở bán dẫn
Thay đổi nhiệt độ được chế tạo bằng chất bán dẫn thường gọi là Thermistor.
Thành phần chính của Thermistor là bột của các oxyt kim loại như Máy nghiền
bi,Fe,Ni…,hoặc các hỗn hợp tinh chế như MgAl
2
O
4
,Zn
2
TiO
4

Phân loại
Nhiệt điện trở bán dẫn được chia thành hai loại :
Nhiệt điện trở Pct :là loại nhiệt điện trở có hệ số nhiệt dương, nghóa là nhiệt
độ tăng thì R giảm.
Nhiệt điện trở Nct: thành phần chính là bột kim loại như: MnAl
2
O
4
và Zn
2
TiO

4
.
Độ tin cậy của nhiệt điện trở bán dẫn phụ thuộc vào độ tinh khiết của vật liệu
chế tạo. Nct thường có hình dạng như:dạng hạt, dạng dóa, dạng khoen.
Hệ số thu nhiệt độ
Chương 1 : Cảm Biến Nhiệt Độ Trang 6
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Thermistor sẽ bò đốt nóng khi nhiệt độ môi trường xung quanh tăng từ nhiệt độ
T0 đến T, như vậy là nhiệt điện trở đã tiêu thụ được một công suất theo công
thức như sau:
W= C(T-T
0
)
C : là hệ số thu nhiệt của điện trở, là năng lượng cần thiết để làm tăng nhiệt độ
của Thermistor lên 1
o
C so với nhiệt độ xung quanh, có đơn vò là wm/
o
C .
Cách sử dụng
Khi sử dụng nhiệt kế không nên dùng nhiệt điện trở ở nhiệt độ quá cao hay quá
thấp làm cơ cấu tinh thể kim loại thay đổi, cũng không nên để nơi quá ẩm sẽ
tạo điều kiện cho điện trở rỉ, không kiểm soát được . Không nên đặt điện trở
kim loại nơi có chấn động rung hay va đập .
Các ưu điểm
Có độ chính xác cao, có thể kết nối với máy tính…
IC cảm biến nhiệt độ
Đây là mạch tích hợp nhận tín hiệu nhiệt độ chuyển đổi thành điện, cho phép
đo được ở dạng biến áp hay dòng .
Một số loại IC cảm biến thông dụng : LX5700, LX135, LM235, LM335,

AD590, LM134, …
Trong đề tài này, dùng cảm biến nhiệt LM335 .
Chương 1 : Cảm Biến Nhiệt Độ Trang 7
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
CHƯƠNG 2
SỬ DỤNG PORT NỐI TIẾP
I. TRUYỀN THÔNG NỐI TIẾP
Ta có thể thực hiện truyền dữ liệu giữa máy tính và vi xử lý theo nhiều chuẩn
khác nhau . Vì trong luận văn này sử dụng đến việc thu phát dữ liệu theo kiểu
nối tiếp nên cần phải khái quát vài nét về các chuẩn truyền thông .
Truyền thông nối tiếp là việc thu phát dữ liệu ở dạng chuỗi các xung điện – gọi
là các bit . Hiệp hội điện tử công nghiệp (EIA) đưa ra các chuẩn truyền thông
khác nhau như : RS 232-C, RS-422, RS-423, RS-485, RS-449, … Ký hiệu RS là
viết tắt của Recommended Standard, nghóa là tiêu chuẩn khuyến cáo .
Việc truyền dữ liệu nối tiếp theo chuẩn RS-232 có ưu điểm hơn truyền song
song: Mức điện áp hoạt động là +12V và –12V, khoảng cách truyền xa hơn, ít
nhiễu hơn.
Việc trao đổi dữ liệu diễn ra trên hai đường dẫn TxD và RxD, mức tín hiệu trên
chân ra RxD tùy thuộc vào đường dẫn TxD và thường nằm trong khoảng –12V
đến +12V, các bit dữ liệu được đảo ngược lại. Mức cao nằm giữa –3V và –
12V, mức thấp nằm giữa +3V và +12V. Ở trạng thái tónh, trên đường dây có
điện áp là –12V.
Một chuỗi dữ liệu truyền đi được bắt đầu bằng một bit khởi đầu, tiếp theo đó là
các bit dữ liệu, bit thấp nhất đi trước. Số bit dữ liệu nằm trong khoảng 5 đến 8
bit, tiếp đó là bit kiểm tra chẳn lẻ và cuối cùng là bit kết thúc (Stop bit). Tốc độ
truyền được thiết lập bằng tham số Baud Rate, là số bit truyền đi trong 1 giây,
thông thường là 300, 600, 1200, 2400, 4800, 9600 và 19200 .
Việc thiết lập các thông số truyền nối tiếp được thực hiện bằng cách thay đổi
các giá trò trong các thanh ghi phục vụ truyền nối tiếp.
Bản đồ thanh ghi nội của bộ thu phát nối tiếp UART-8250 (không đồng bộ).

Register Name Code COM
1
COM
2
COM
3
COM
4
Function
Transmitter Holding
Register
THR 3F8H 2F8H 3E8H 2E8H OUTPU
T
Receiver Data Register RDR 3F8H 2F8H 3E8H 2E8H INPUT
Baud Rate Divisor BRDL 3F8H 2F8H 3E8H 2E8H OUTPU
Chương 2 : Sử Dụng Port Nối Tiếp Trang 8
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
(LSB) T
Baud Rate Divisor
(MSB)
BRDH 3F9H 2F9H 3E9H 2E9H OUTPU
T
Interrupt Enable
Register
IER 3F9H 2F9H 3E9H 2E9H OUTPU
T
Interrupt ID Register IID 3FAH 2FAH 3EAH 2EAH INPUT
Line Control Register LCR 3FBH 2FBH 3EBH 2EBH OUTPU
T
Modem Control

Register
MDC 3FCH 2FCH 3ECH 2ECH OUTPU
T
Line Status Register LSR 3FDH 2FDH 3EDH 2EDH INPUT
Modem Status Register MSR 3FEH 2FEH 3EEH 2EEH INPUT
Thanh ghi điều khiển đường truyền (Line Control Register)
Bit cao của thanh ghi này gọi là bit chốt, truy xuất hệ số chia. Nếu bit này được
đặt lên 1 thì giá trò ở thanh ghi cơ sở được truy xuất làm byte thấp của thanh ghi
hệ số chia chọn tốc độ truyền, và giá trò ở thanh ghi cơ sở +1 sẽ được truy xuất
làm byte cao của thanh ghi hệ số chia chọn tốc độ truyền. Nếu bit này được
xóa về 0 thì thanh ghi cơ sở sẽ thành thanh ghi đệm thu phát.
7 6 5 4 3 2 1 0
Bit Nội dung
Bit 0 Bit 1 00 : 5 bit data ; 01 : 6 bit data
10 : 7 bit data ; 11 : 8 bit data
Bit 2 0 : 1 bit stop
1 : 1,5 hay 2 bit stop
Bit 3 0 : không kiểm tra parity
1 : kiểm tra parity
Bit 4 1 : kiểm tra parity chẵn
0 : kiểm tra parity lẻ
Bit 5 1 : nếu bit 4 = 1; 0 : nếu bit 4 = 0
Bit 6 Cho phép cấm đường truyền nối tiếp
1 : ngõ ra bò xoá trắng ; 0 : cấm
Chương 2 : Sử Dụng Port Nối Tiếp Trang 9
Bit
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Bit 7 1 : chọn số chia;0 : bộ đệm thu, phát
Thanh ghi điều khiển MODEM (Modem Control Register)
Thanh ghi điều khiển MODEM dùng để đặt giao thức bắt tay khi truyền thông

sử dụng MODEM.
7 6 5 4 3 2 1 0
Bit Nội dung
Bit 0 Data Terminal Ready
1 : DTR Active; 0 : DTR Inactive
Bit 1 Request to Send;
1 : RTS Active; 0 : RTS Inactive
Bit 2 Output 1 (spare signal)
1 : OUT 1 : Active; 0 : OUT 1 Inactive
Bit 3 Output 2 (Interrupt Enable Signal)
1 : Communication Interrupt Active
0 : Communication Interrupt Inactive
Bit 4 Loopback Feature
1 : Transmitter output looped back to receiver
register
0 : Normal Operation
Bit 5,6,7 0,0,0
Thanh ghi trạng thái đường truyền (Line Status Register)
Báo cho máy tính biết thông tin, trạng thái của dữ liệu truyền đi.
7 6 5 4 3 2 1 0
Bit Nội dung
Bit 0 1 : Có dữ liệu trong bộ đệm nhận
Bit 1 1 : Overrun Error
Bit 2 1 : Parity Error
Bit 3 1 : Framing Error
Bit 4 1 : Báo ngắt (đường truyền trống )
Bit 5 1 : Thanh ghi phát trống
Bit 6 1 : Thanh ghi dòch và thanh ghi phát trống
Chương 2 : Sử Dụng Port Nối Tiếp Trang 10
Bit

Bit:
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
0 : Thanh ghi dòch còn chứa dữ liệu
Bit 7 0
Chuẩn RS-232
Chuẩn RS-232 lần đầu tiên được giới thiệu vào năm 1962 do hiệp hội kỹ thuật
điện tử EIA (Electronics Industries Association) như là chuẩn giao tiếp truyền
thông giữa máy tính và một thiết bò ngoại vi (modem, máy vẽ, mouse, máy tính
khác,……).
Giao tiếp RS-232 là giao diện phổ biến rộng rãi nhất. Người dùng máy tính PC
còn gọi cổng này là COM 1, còn COM 2 để tự do cho các ứng dụng khác.
Giống như cổng máy in, cổng nối tiếp RS-232 được sử dụng một cách rất thuận
tiện cho mục đích đo lường và điều khiển.
Việc truyền dữ liệu qua RS-232 được tiến hành theo cách nối tiếp, nghóa là các
bit dữ liệu được gửi đi nối tiếp nhau trên một đường truyền dẫn . Trước hết,
loại truyền này có thể dùng cho những khoảng cách lớn hơn, bởi vì các khả
năng gây nhiễu nhỏ đáng kể hơn là dùng cổng song song. Việc dùng cổng song
song có một nhược điểm đáng kể là cáp truyền dùng quá nhiều sợi, và vì vậy
rất đắt tiền. Hơn nữa tín hiệu nằm trong khoảng 0 - 5V tỏ ra không thích ứng
với khoảng cách lớn. Cổng nối tiếp RS-232 không phải là một hệ thống Bus, nó
cho phép dễ dàng tạo ra liên kết dưới hình thức điểm nối điểm giữa hai máy
cần trao đổi thông tin với nhau, một thành phần thứ ba không thể tham gia vào
cuộc trao đổi thông tin này .
Cổng COM 25 chân Cổng COM 9 chân
Bảng sắp xếp chân của cổng nối tiếp ở máy tính
9 chân 25 chân Chức năng
1
2
3
4

5
6
7
8
8
3
2
20
7
6
4
5
DCD _ Data Carrier Detect (Lối vào)
RxD _ Receive Data (Lối vào)
TxD _ Transmit Data (Lối ra)
DTR _ Data Terminal Ready (Lối ra)
GND _ Ground (Nối đất)
DSR _ Data Set Ready (Lối vào)
RTS _ Request to Send (Lối ra)
CTS _ Clear to Send (Lối vào)
Chương 2 : Sử Dụng Port Nối Tiếp Trang 11
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
9 22 RI _ Ring Indicator (Lối ra)
Việc truyền dữ liệu xảy ra trên hai đường dẫn. Qua chân cắm ra TxD, máy tính
gởi dữ liệu của nó đến các thiết bò khác. Trong khi đó dữ liệu mà máy tính
nhận được lại được dẫn đến chân RxD. Các tín hiệu khác đóng vai trò như là
tín hiệu hỗ trợ khi trao đổi thông tin và vì vậy không phải trong mọi ứng dụng
đều dùng đến . Các bit dữ liệu được gởi đi theo kiểu đảo ngược, nghóa là các bit
có giá trò “1” sẽ có mức điện áp LOW, các bit có giá trò “0” sẽ có mức điện áp
HIGH. Mức tín hiệu nhận và truyền qua chân RxD và TxD thông thường nằm

trong khoảng –12V đến +12V. Mức điện áp đối với mức LOW nằm giữa +3V
đến +12V, mức HIGH là –3V đến –12V
Ở trạng thái tónh, trên đường dây vẫn có điện áp –12V. Một bit khởi động
(Start bit) sẽ mở đầu việc truyền dữ liệu. Tiếp sau đó là các bit riêng lẻ đến,
trong đó các bit có trọng số thấp được gửi trước tiên. Con số của các bit dữ liệu
thay đổi giữa 5 và 8. Ở cuối dòng dữ liệu còn có một bit dừng (Stop bit) để đặt
lại trạng thái lối ra (-12V).
Tốc độ Baud có giá trò thông thường là : 300; 600; 1200; 4800; 9600; 19200
Baud. Ký hiệu Baud tương ứng với số bit truyền trong 1 giây ( bit per second _
bps). Chẳng hạn như khi tốc độ Baud bằng 9600 có nghóa là có 9600 bit dữ liệu
được truyền trong 1 giây. Vì mỗi byte dữ liệu có một bit bắt đầu và một bit
được dùng gởi kèm theo, do đó khi truyền một byte dữ liệu đã có 10 bit được
gửi đi. Với tốc độ Baud thông thường, mỗi giây cho phép truyền nhiều nhất từ
30 đến 1920 byte dữ liệu, vì vậy nhược điểm lớn nhất của cổng truyền nối tiếp
là tốc độ truyền dữ liệu bò hạn chế.
So sánh giữa TTL và RS-232, ta thấy TTL sử dụng mức Logic dương và 0,4V
chống nhiễu. Trong khi đó, RS-232 sử dụng mức điện áp 12V để đảm bảo
truyền được trên đường dây dài. Với khoảng chống nhiễu 12V cho phép tín
hiệu đi qua môi trường nhiễu mạnh mà đối với TTL không thể có được.
Chương 2 : Sử Dụng Port Nối Tiếp Trang 12
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Một trong những yêu cầu quan trọng của RS-232 là thời gian chuyển từ một
mức logic này tới một mức logic khác không vượt quá 4% thời gian một bit. Vì
thế ở tốc độ 19200 Baud, thời gian mức logic phải nhỏ hơn 0,04/19200s. Vấn
đề này làm giới hạn chiều dài đường truyền. Với tốc độ truyền 19200 Baud, ta
có thể truyền xa nhất là 50 feet (15,24 m).
Một trong những vấn đề quan trọng cần chú ý khi sử dụng RS-232 là mạch thu
phát không cân bằng (đơn cực). Điều này có ý nghóa là tín hiệu vào/ra được so
với đất. Vì vậy nếu điện thế tại hai điểm đất của hai mạch thu phát không bằng
nhau thì sẽ có dòng điện chạy trên dây nối đất. Kết quả sẽ có áp rơi trên dây

nối đất (V=I.R) sẽ làm suy yếu tín hiệu logic. Nếu truyền tín hiệu đi xa, R sẽ
tăng dần đến áp rơi trên đất, sẽ lớn dần đến lúc tín hiệu logic rơi vào vùng
không xác đònh và mạch thu sẽ không nhận đúng dữ liệu được truyền từ mạch
phát. Chính sự không cân bằng trên mạch thu phát là một trong những nguyên
nhân giới hạn đường truyền .
Do trong luận văn này không sử dụng các chuẩn giao tiếp khác, được giới thiệu
trên, nên không giới thiệu chi tiết .
II. MỞ RỘNG PORT DÙNG 8255
Cấu trúc phần cứng
8255A là IC ngoại vi được chế tạo theo công nghệ LSI dùng để giao tiếp song
song giữa Microprocessor và thiết bò điều khiển bên ngoài.
Chương 2 : Sử Dụng Port Nối Tiếp Trang 13
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Tên các chân của 8255A
 D
7
÷ D
0
: Data Bus (Bi – Direction ) .
 RESET: Reset, Input .
 /CS :Chip Select, Input
 /RD: Read, Input
 /WR: Write, Input
 A
0
A
1
: Port Address
 PA7 ÷ PA0 : Port A
 PB7 ÷ PB0 : Port B

 PC7 ÷ PC0 : Port C
8255A giao tiếp với Microprocessor thông qua 3 bus : bus dữ liệu, bit D
7
÷ D
0,
bus đòa chỉ A
1
A
0
, bus điều khiển /RD, /WR, /CS, Reset.
Mã lệnh, thông tin trạng thái và dữ liệu đều được truyền trên 8 đường dữ liệu
D
7
÷ D
0
. Microprocessor gởi dữ liệu đến 8255A hoặc Microprocessor đọc dữ
Chương 2 : Sử Dụng Port Nối Tiếp Trang 14
P A 3
P A 2
P A 1
R D \
C S \
G N D
P A 4
P A 7
W R \
R E S E T
P A 0
D O
1

2
4
5
6
7
3 7
3 6
3 3
3
8 2 5 5 A
8
A 1
4 0
3 5
3 9
3 4
D 1
P A 5
P A 6
1 6
9
2 4
2 3
2 2
2 5
2 6
2 7
2 9
3 0
3 1

1 7
1 0
1 1
1 2
1 3
1 4
1 5
2 1
1 8
1 9
2 0
3 2
2 8
3 8
A 0
P C 7
P C 6
P C 5
P C 4
P C 0
P C 1
P C 2
P C 3
P B 0
P B 1
P B 2
D 2
D 3
D 4
D 5

D 6
D 7
V C C
P B 7
P C 6
P C 5
P C 4
P C 3
8 2 5 5 A
( P D I P )
T O P V I E W
P I N O U T S
P A 7 - P A 0
P C 7 - P C 4
P C 3 - P C 0
P B 7 - P B 0
D 0 - D 7
R D \
W R \
R E S E T
A 0
A 1
C S \
Sơ đồ chân và sơ đồ logic của 8255
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
liệu từ 8255A tùy thuộc vào lệnh điều khiển. Các đường tín hiệu /RD, /WR của
8255A được kết nối với các đường /RD, /WR của Microprocessor .
Tín hiệu Reset dùng để khởi động 8255A khi cấp điện, khi bò Reset các thanh
ghi bên trong của 8255A đều bò xóa và 8255A ở trạng thái sẵn sàng làm việc.
Khi giao tiếp với Microprocessor, ngõ vào tín hiệu Reset này được kết nối với

tín hiệu Reset Out của Microprocessor.
Tín hiệu Chip Select /CS dùng để lựa chọn 8255A khi Microprocessor giao tiếp
với nhiều 8255A .
8255A gồm 3 Port xuất/nhập (I/O) có tên là Port A, Port B, Port C, mỗi Port
8255A gồm 8 bit. Port A gồm PA
0
- PA
7
, Port B gồm PB
0
- PB
7
, Port C gồm các
bit PC
0
- PC
7
. Các Port này có thể là các Port Input hay Output tùy thuộc vào
lệnh điều khiển, lệnh điều khiển do Microprocessor gởi đến chứa trong thanh
ghi lệnh (còn gọi là thanh ghi điều khiển) để điều khiển 8255A .
Các đường đòa chỉ A
1
A
0
của 8255A dùng để lựa chọn các Port và thanh ghi.
A
1
A
0
= 00

2
dùng để chọn Port A, A
1
A
0
= 01
2
dùng để chọn Port B, A
1
A
0
=10
2
dùng
để chọn Port C, A
1
A
0
=11
2
dùng để chọn thanh ghi điều khiển.
Trong sơ đồ khối của 8255A , các Port I/O của 8255A chia ra làm 2 nhóm :
nhóm A gồm Port A và 4 bit cao của Port C, nhóm B gồm Port B và 4 bit thấp
của Port C. Để sử dụng các Port của 8255A, người lập trình phải gởi byte điều
khiển ra thanh ghi điều khiển để 8255A đònh cấu hình cho các Port đúng theo
yêu cầu mà người lập trình mong muốn.
NHÓM A NHÓM B
D7 D6 D5 D4 D3 D2 D1 D0
MODE
SELECTION

1:ACTIVE
MODE
SELECTION
00:MODE 0
01:MODE 1
1X:MODE 2
Port A
1:INPUT
0:OUTPUT
Port C
(HIGH)
1:INPUT
0:OUTPUT
MODE
SELECTION
1:MODE 1
0:MODE 0
Port B
1: IN PUT
0:OUTPUT
Port C
(LOW)
1:INPUT
0:OUTPUT
Cấu trúc từ điều khiển của 8255A.
Cấu trúc phần mềm của 8255.
Chương 2 : Sử Dụng Port Nối Tiếp Trang 15
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Do các Port ra của 8255A được chia ra làm 2 nhóm: nhóm A và nhóm B tách
rời nên từ điều khiển của 8255A cũng được chia làm 2 nhóm.

Các bit D
2
D
1
D
0
dùng để đònh cấu hình cho nhóm B:
 Bit D
0
dùng để thiết lập 4 bit thấp của Port C
 D
0
=0 : Port C xuất dữ liệu (Output),
 D
0
=1 : Port C là Port nhập dữ liệu (Input).
 Bit D
1
dùng để thiết lập Port B
 D
1
=0: Port B là Port xuất dữ liệu (Output)
 D
1
=1:Port B là Port nhập dữ liệu (Input).
 Bit D
2
dùng để thiết lập Mode điều khiển của nhóm B:
 D
2

= 0: nhóm B hoạt động ở Mode 0.
 D
2
= 1: nhóm B hoạt động ở Mode 1.
Các bit D
6
D
5
D
4
D
3
dùng để đònh cấu hình cho nhóm A:
 Bit D
3
dùng để thiết lập 4 bit cao của Port C
 D
3
=0:Port C là Port xuất dữ liệu (Output)
 D
3
=1:Port C là Port nhập dữ liệu (Input)
 Bit D
4
dùng để thiết lập Port A,
 D
4
=0:Port A là Port xuất dữ liệu (Output)
 D
4

=1:Port A là Port nhập dữ liệu (Input)
 Bit D
6
D
5
dùng để thiết lập Mode điều khiển của nhóm B:
 D
6
D
5
=01: nhóm A hoạt động ở mode 1.
 D6D
5
=1x: nhóm A hoạt động ở mode 2.
Giao tiếp giữa máy tính với 8255A
Vi mạch 8255A có thể giao tiếp với vi xử lý theo hai kiểu: kiểu xuất/nhập (I/O)
và kiểu bộ nhớ .
Khi vi xử lý giao tiếp với 8255A theo kiểu I/O thì nó chỉ dùng 8 đường đòa chỉ
từ A
0
đến A
7
để giao tiếp, còn khi giao tiếp theo kiểu bộ nhớ thì nó dùng 16
đường A
0
đến A
15
để giao tiếp, vì vậy dung lượng giao tiếp theo kiểu I/O thấp
hơn dung lượng giao tiếp theo kiểu bộ nhớ.
Khi kết nối giữa vi xử lý và vi mạch 8255A thì 2 đường đòa chỉ A

0
và A
1
dùng
để lựa chọn các cổng và thanh ghi điều khiển, còn các đường A
2
-A
7
dùng để
lựa chọn vi mạch hoạt động, thông thường các đường đòa chỉ này được đưa vào
Chương 2 : Sử Dụng Port Nối Tiếp Trang 16
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
vi mạch giải mã rồi các ngõ ra của vi mạch giải mã sẽ đưa đến chân /CS của
các vi mạch 8255A.
Ví dụ: thiết kế 2 vi mạch 8255A giao tiếp với vi xử lý theo kiểu I/O. Ta có
bảng đòa chỉ các vi mạch 8255A như sau:
IC A
7
A
6
A
5
A
4
A
3
A
2
A
1

A
0
HEX
8255I
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
00
03
8255II
0
0
0
0
0
0
0

0
0
0
1
1
0
1
0
1
04
07
8255I chiếm 1 vùng đòa chỉ từ 00
H
đến 03
H
,

đòa chỉ của Port A= 00
H
, Port B=
01
H
,Port C= 02
H
và đòa chỉ của thanh ghi điều khiển = 03H .
8255II chiếm một vùng đòa chỉ từ 04H đến 07H, đòa chỉ của Port A= 04H, Port
B= 05H, Port C= 06H và đòa chỉ của thanh ghi điều khiển= 07H .
Giao tiếp kiểu bộ nhớ
Khi thiết kế giao tiếp 8255A với vi xử lý theo kiểu bộ nhớ, chức năng của
8255A không có gì thay đổi, chỉ thay đổi về đòa chỉ truy xuất. Kiểu I/O: đòa chỉ

của Port hay thanh ghi có độ dài 8 bit. Kiểu bộ nhớ: đòa chỉ của Port hay thanh
ghi sẽ có độ dài 16 bit giống như bộ nhớ nên gọi là kiểu bộ nhớ.
Khi thiết kế kiểu I/O theo kiểu bộ nhớ thì mỗi Port hay thanh ghi điều khiển
của 8255A được xem là từng ô nhớ. Khi đó, vi xử lý giao tiếp với 8255A giống
như giao tiếp với bộ nhớ và 2 lệnh IN, OUT không còn tác dụng. Kiểu bộ nhớ
chỉ sử dụng trong các hệ thống nhỏ, đơn giản.
Giao tiếp kiểu I/O
Khi thiết kế vi xử lý giao tiếp với 8255A theo kiểu I/O thì việc giao tiếp thông
qua hai lệnh: In addr – Port và Out addr – Port. Dữ liệu giao tiếp luôn chứa
trong thanh ghi A, đòa chỉ Port (Addr Port) có độ dài 8 bit.
Cũng giống như bộ nhớ, Vi xử lý có thể giao tiếp với nhiều vi mạch 8255A.
Với 8 bit đòa chỉ, nếu xem mỗi một đòa chỉ truy xuất một ô nhớ thì vi xử lý có
khả năng truy xuất 255 ô nhớ (với 256 đòa chỉ). Mỗi vi mạch 8255A chiếm 4
đòa chỉ, 3 Port và 1 thanh ghi điều khiển, nên số lượng vi mạch 8255A có thể
giao tiếp với vi xử lý là .
Chương 2 : Sử Dụng Port Nối Tiếp Trang 17
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Ứùng dụng của 8255A
IC giao tiếp I/O 8255A có rất nhiều ứng dụng trong các hệ thống điều khiển
dùng MicroProcessor, 8255A đóng vai trò là IC giao tiếp giữa MicroProcessor
và đối tượng điều khiển.
Các ứng dụng của 8255A là truyền dữ liệu, giải mã hiển thò, giải mã bàn phím,
giao tiếp điều khiển tùy theo yêu cầu .

Chương 2 : Sử Dụng Port Nối Tiếp Trang 18
+ 5 V
D A T A
M i c r o P r o c e s s o r
C O N T R O L B U S
D 7 - D 0

W R \
W R \
W R \
R D \ R D \ R D \
C S \
C S \
C S \
8 2 5 5 A 1 8 2 5 5 A 2
8 2 5 5 A 8
A 1 - A 0
Đ ư a đ e á n n g o õ v a øo C S \ c u û a c a ù c 8 2 5 5 A
A
B
C
E 0
E 1
E 2
O 0
O 1
O 2
O 3
O 4
O 5
O 6
O 7
Giao tiếp IC8255A với Microprocessor.
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
CHƯƠNG 3
GIỚI THIỆU HỌ VI ĐIỀU KHIỂN 8051
I. GIỚI THIỆU KHÁI QUÁT VỀ HỌ IC MCS-51™

MCS-51 là một họ IC vi điều khiển do Intel phát triển và sản xuất . Một số
nhà sản xuất được phép cung cấp các IC tương thích với các sản phẩm MCS-
51 của Intel là Siemens, Advanced Micro Devices, Fujitsu, Philips, Atmel .
Các IC của họ MCS-51 có các đặc trưng như sau:
 4 Port I/O 8 bit
 Giao tiếp nối tiếp
 64K không gian bộ nhớ chương trình mở rộng
 64K không gian bộ nhớ dữ liệu mở rộng
 Một bộ xử lý luận lý (thao tác trên các bit đơn)
 210 bit được đòa chỉ hóa
 Bộ nhân/chia 4 µs.
Ngoài ra, tùy theo số hiệu sản xuất mà chúng có những khác biệt về bộ nhớ và
bộ đònh thời/bộ đếm như trong bảng so sánh dưới đây
Số hiệu sản
xuất
Bộ nhớ chương
trình trên chip
Bộ nhớ dữ liệu
trên chip
Số bộ đònh thời
(bộ đếm)
8031
8051
8751
8951
0K
4K ROM
4K EPROM
4K FLASH
128 byte

128 byte
128 byte
128 byte
2
2
2
2
8032
8052
8752
8952
0K
8K ROM
8K EPROM
8K FLASH
256 byte
256 byte
256 byte
256 byte
3
3
3
3
II. GIỚI THIỆU AT89C52
AT89C52 là một Microcomputer 8 bit, họ CMOS, có tốc độ cao và công suất
thấp với bộ nhớ Flash có thể lập trình được. Nó được sản xuất với công nghệ bộ
nhớ không bay hơi, mật độ cao của hãng Atmel, và tương thích với chuẩn công
Chương 3 : Họ Vi Điều Khiển 8051 Trang 19
Sơ đồ khối của AT89C51
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON

nghiệp của 80C51 và 80C52 về chân ra và bộ lệnh. Vì lý do đó, kể từ đây về
sau ta sẽ dùng thuật ngữ “80C51” (hoặc "8051") . Với sự kết nối linh hoạt 8 bit
CPU với flash trên chip, AT89C52 của Atmel là một micro-computer tuyệt vời
với độ linh hoạt cao và giải quyết hiệu quả nhiều chương trình điều khiển ghi
vào nó .
Những đặc trưng của AT89C52.
Tương thích với các sản phẩm MCS-51
 8 KByte bộ nhớ Flash có thể lập trình lại với 1000 chu kỳ
đọc/xoá .
Chương 3 : Họ Vi Điều Khiển 8051 Trang 20
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
 Hoạt động tónh đầy đủ: 0Hz đến 24MHz .
 Khóa bộ nhớ chương trình ba cấp .
 256 x 8 bit RAM nội .
 32 đường xuất-nhập lập trình được (tương ứng 4 Port) .
 Ba Timer/Counter 16 bit .
 Một cấu trúc ngắt 6-vector 2 mức .
 Một Port nối tiếp song công lập trình được dạng full.
 Mạch đồng hồ và bộ dao động trên chip .
Cấu hình chân của AT89C52 như sau
Như vậy AT89C52 có tất cả 40 chân. Mỗi chân có chức năng như các đường
I/O (xuất/nhập), trong đó 24 chân có công dụng kép: mỗi đường có thể hoạt
động như một đường I/O hoặc như một đường điều khiển hoặc như thành phần
của bus đòa chỉ và bus dữ liệu .
Mô tả chân
 VCC (chân 40)
Chân cấp nguồn.
 GND (chân 20)
Chân nối đất .
 Port 0

Port 0 là một Port xuất/nhập song hướng cực máng hở 8 bit . Nếu được sử dụng
như là một ngõ xuất thì mỗi chân có thể kéo 8 ngõ vào TTL . Khi mức 1 được
viết vào các chân của Port 0, các chân này có thể được dùng như là các ngõ
nhập tổng trở cao .
Chương 3 : Họ Vi Điều Khiển 8051 Trang 21
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Port 0 có thể được đònh cấu hình để hợp kênh giữa bus đòa chỉ và bus dữ liệu
(phần byte thấp) khi truy cập đến bộ nhớ dữ liệu và bộ nhớ chương trình ngoài .
Ở chế độ này, Port 0 có các điện trở pull-up bên trong .
Port 0 cũng nhận các byte code (byte mã chương trình) khi lập trình Flash, và
xuất ra các byte code khi kiểm tra chương trình. Cần có các điện trở pull-up
bên ngoài khi thực hiện việc kiểm tra chương trình .
 Port 1
Port 1 là một Port xuất/nhập song hướng 8 bit có các điện trở pull-up bên
trong . Các bộ đệm ngõ ra của Port 1 có thể kéo hoặc cung cấp 4 ngõ nhập TTL
. Khi mức 1 được viết vào các chân của Port 1, chúng được kéo lên cao bởi các
điện trở pull-up nội và có thể được dùng như là các ngõ nhập . Nếu đóng vai
trò là các ngõ nhập, các chân của Port 1 (được kéo xuống thấp qua các điện trở
bên ngoài) sẽ cấp dòng I
IL
do các điện trở pull-up bên trong .
 Port 2
Port 2 là một Port xuất/nhập song hướng 8 bit có các điện trở pull-up bên trong.
Các bộ đệm ngõ ra của Port 2 có thể kéo hoặc cung cấp 4 ngõ vào TTL . Khi
các mức 1 được viết vào các chân của Port 2 thì chúng được kéo lên cao bởi
các điện trở pull-up nội và có thể được dùng như các ngõ vào . Khi được dùng
như các ngõ vào, các chân của Port 2 (được kéo xuống qua các điện trở bên
ngoài) sẽ cấp dòng I
IL
do có các điện trở kéo lên bên trong .

Port 2 phát ra byte cao của đòa chỉ khi đọc từ bộ nhớ chương trình ngoài và khi
truy cập bộ nhớ dữ liệu ngoài dùng các đòa chỉ 16 bit ( MOVX @DPTR ) .
Trong ứng dụng này, nó dùng các điện trở pull-up nội "mạnh" khi phát ra các
mức 1 . Khi truy cập bộ nhớ dữ liệu ngoài dùng các đòa chỉ 8 bit ( MOVX
@RI ), Port 2 phát ra các nội dung của thanh ghi chức năng đặc biệt .
Port 2 cũng nhận các bit cao của đòa chỉ và một vài tín hiệu điều khiển khi lập
trình và kiểm tra Flash .
 Port 3
Port 3 là một Port xuất - nhập song hướng 8 bit có điện trở pull-up nội bên
trong.
Các bộ đệm ngõ ra của Port 3 có thể kéo hoặc cung cấp 4 ngõ vào TTL . Khi
các mức 1 được viết vào các chân của Port 3 thì chúng được kéo lên cao bởi
các điện trở pull-up nội và có thể được dùng như các ngõ vào . Khi được dùng
như các ngõ vào, các chân của Port 3 (được kéo xuống qua các điện trở bên
ngoài) sẽ cấp dòng I
IL
do có các điện trở pull-up bên trong .
Port 3 cũng cung cấp các chức năng của các đặc trưng đặc biệt như được liệt kê
dưới đây
Chương 3 : Họ Vi Điều Khiển 8051 Trang 22
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
Chân Tên Các chức năng chuyển đổi
P3.0
P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7

RxD
TxD
INT0
INT1
T0
T1
WR
RD
Port nhập nối tiếp
Port xuất nối tiếp
Ngắt 0 bên ngoài
Ngắt 1 bên ngoài
Ngõ vào Timer/Counter 0
Ngõ vào Timer/Counter 1
Xung ghi bộ nhớ dữ liệu ngoài
Xung đọc bộ nhớ dữ liệu ngoài
Các chức năng chuyển đổi trên Port 3
 RST (chân 9)
Ngõ vào Reset . Một mức cao trên chân này khoảng hai chu kỳ máy trong khi
bộ dao động đang chạy sẽ Reset thiết bò .
 ALE/
PROG
ALE là một xung ngõ ra để chốt byte thấp của đòa chỉ trong khi truy cập bộ nhớ
ngoài. Chân này cũng là ngõ nhập xung lập trình (
PROG
) khi lập trình Flash .
Khi hoạt động bình thường, ALE được phát với một tỷ lệ không đổi là 1/6 tần
số bộ dao động và có thể được dùng cho các mục đích timing và clocking bên
ngoài . Tuy nhiên, lưu ý rằng một xung ALE sẽ bò bỏ qua mỗi khi truy cập bộ
nhớ dữ liệu ngoài.

Nếu muốn, hoạt động ALE có thể cấm được bằng cách set bit 0 của thanh ghi
SFR tại đòa chỉ 8Eh . Nếu bit này được set, ALE chỉ được hoạt động khi có một
lệnh MOVX hoặc MOVC . Ngược lại, chân này được kéo lên cao bởi các điện
trở pull-up "nhẹ". Việc set bit cấm ALE không có tác dụng khi bộ vi điều khiển
đang ở chế độ thi hành ngoài .

PSEN
PSEN (Program Store Enable) là xung đọc bộ nhớ chương trình ngoài. Khi
AT89C52 đang thi hành mã (code) từ bộ nhớ chương trình ngoài,
PSEN
được
Chương 3 : Họ Vi Điều Khiển 8051 Trang 23
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
kích hoạt hai lần mỗi chu kỳ máy, nhưng hai hoạt động
PSEN
sẽ bò bỏ qua
mỗi khi truy cập bộ nhớ dữ liệu ngoài .

EA
/Vpp
EA
(External Access Enable) phải được nối với GND để cho phép thiết bò đọc
code từ bộ nhớ chương trình ngoài có đòa chỉ từ 0000H đến FFFFH. Tuy nhiên,
lưu ý rằng nếu bit khoá 1 ( lock-bit 1) được lập trình,
EA
sẽ được chốt bên
trong khi Reset .
EA
phải được nối với Vcc khi thi hành chương trình bên trong . Chân này cũng
nhận điện áp cho phép lập trình Vpp=12V khi lập trình Flash (khi đó áp lập

trình 12V được chọn) .
 XTAL1 và XTAL2
XTAL1 và XTAL2 là hai ngõ vào và ra của một bộ khuếch đại dao động
nghòch được cấu hình để dùng như một bộ dao động trên chip .
Các kết nối của bộ dao động
Không có yêu cầu nào về duty cycle của tín hiệu xung ngoài, vì ngõ nhập nối
với mạch tạo xung nội là một flip-flop chia đôi, nhưng các chỉ đònh về thời gian
High và Low, các mức áp tối đa và tối thiểu phải được tuân theo .
Các đặc trưng khác sẽ được trình bày một cách chi tiết hơn ở những phần tiếp
theo sau đây.
Chương 3 : Họ Vi Điều Khiển 8051 Trang 24
GIAO DIỆN PC VỚI CÁC KIT VI ĐIỀU KHIỂN QUA CỔNG COM GVHD : TỐNG VĂN ON
III. TỔ CHỨC BỘ NHỚ
8051/8031 có bộ nhớ theo cấu trúc Harvard: có những vùng bộ nhớ riêng biệt
cho chương trình và dữ liệu. Như đã nói ở trên, cả chương trình và dữ liệu có
thể ở bên trong, dù vậy chúng có thể được mở rộng bằng các thành phần ngoài
lên đến tối đa 64 Kbyte bộ nhớ chương trình và 64 Kbyte bộ nhớ dữ liệu .
Bộ nhớ bên trong bao gồm ROM và RAM trên chip, RAM trên chip bao gồm
nhiều phần : phần lưu trữ đa dụng, phần lưu trữ đòa chỉ hóa từng bit, các bank
thanh ghi và các thanh ghi chức năng đặc biệt .
Hai đặc tính cần lưu ý là
 Các thanh ghi và các Port xuất/nhập đã được xếp trong bộ nhớ và có thể được
truy xuất trực tiếp giống như các đòa chỉ bộ nhớ khác.
 Ngăn xếp bên trong RAM nội nhỏ hơn so với RAM ngoài như trong các bộ vi
xử lý khác .
Chi tiết về bộ nhớ RAM trên chip
Theo hình vẽ sau, RAM bên trong 8051/8031 được phân chia giữa các bank
thanh ghi (00H–1FH), RAM đòa chỉ hóa từng bit (20H–2FH), RAM đa dụng
(30H–7FH) và các thanh ghi chức năng đặc biệt (80H–FFH).
.


Chương 3 : Họ Vi Điều Khiển 8051 Trang 25
Bộ nhớ
chương
trình
được chọn
qua PSEN
FFFF
0000
Bộ nhớ
dữ liệu
được chọn
qua WR
và RD
FFFF
0000
FF
00
Bộ nhớ trên chip
Bộ nhớ mở rộng
Tóm tắt các vùng bộ nhớ của 8031/8051

×