Professional Documents
Culture Documents
1.SỰ MÔ TẢ CHUNG:
Họ VDK AT89S52 được sản xuất theo tiêu chuẩn sau:
8k byte bộ nhớ chương trình (on –chip flash)
256 byte bộ nhớ dữ liệu hay còn gọi là bộ nhớ truy cập ngẫu
nhiên(RAM)
32 cổng vào ra(I/O)
2 con trỏ dữ liệu
3 bộ định thời /bộ đếm(timers/counters 0,1,2)
Một kiến trúc ngắt hai mức 6 vectơ ngắt (ngắt ngoài 0/ngắt
tràn time0/ngắt ngoài 1/ngắt tràn time1/ngắt cổng vào ra
nối tiếp/ngắt tràn time2/ngắt ngoài 2)
Có cổng vào ra nối tiếp
Bộ tạo dao động trong chip…
2.NHỮNG CẤU HÌNH CHỦ CHỐT(HAY DẠNG ĐÓNG GÓI):
3.SƠ ĐỒ KHỐI:
4.MÔ TẢ CÁC CHÂN:
VCC chân cấp nguồn 5v cho vđk (40)
GND chân nối đất (20)
PORT0 cổng hai chiều 8 bit mỗi cổng là một chân trên
chíp,các cổng có thể làm cổng vào hoặc cổng ra (gồm các
chân từ3239), ngoài ra port0 còn có thêm chức năng bus
dữ liệu bus địa chỉ(AD0AD7)làm nhiệm vụ lấy dữ liệu từ
rom hoặc ram ngoại nếu kết nối bộ nhớ ngoài đồng thời P0
còn làm nhiệm vụ định địa chỉ bộ nhớ ngoài
PORT1 port này chỉ có chức năng xuất nhập(I/O)(gồm các
chân từ18)
PORT2 port này có chức năng xuất nhập(I/O) ngoài ra còn
làm nhiệm vụ kết nối bộ nhớ chương trình bên
ngoài(A8A11) (gồm các chân từ 2128)
PORT3 cũng có chức năng xuất nhập I/O,ngoài ra ứng với
mỗt chân có một chức năng riêng sau:
Bit tên chức năng
P3.0 RXD ngõ vào nhận dữ liệu nối tiếp
P3.1 TXD ngõ vào xuất dữ liệu nối tiếp
P3.2 INT0 ngõ vào ngắt cứng thứ 0
P3.3 INT1 ngõ vào ngắt cứng thứ 1
P3.4 T0 ngõ vào của time/coute thứ 0
P3.5 T1 ngõ vào của time/coute thứ 1
P3.6 WR ngõ vào điểu khiển ghi dữ
liệu bộ nhớ ngoài
P3.7 RD ngõ vào đọc dữ liệu bộ nhớ
Ngoài
Gồm các chân từ 1017
Chân reset (RST) dùng để thiết lập trạng thái cho vdk,khi
cấp nguồn cho vdk 8051 thì các chân của vdk đều là ngõ
vào(chân số 9).
Chân XTAL1&XTAL2(18&19)được dùng để nhận nguồn xung
clock từ bên ngoài,thường ghép nối với thạch anh
PSEN dùng để truy xuất bộ nhớ chương trình bên ngoài(chân
29), chân này khi không sử dụng bỏ trống
ALE chân cho phép chốt địa chỉ(chân 30),chân này chỉ sử
dụng khi ghép nối với bộ nhớ bên ngoài nếu không sử dụng
thì bỏ trống
Chân EA chân này được dùng để xác định chương trình thực
hiện dược lấy từ rom nội hay rom ngoại và được xác định
như sau:nếu chân này nối với vcc thì lấy từ rom nội ngược
lại nối mass thì lấy từ rom ngoại(chân 31)
Chú ý:đối với họ vdk 8051 khi đưa mức logic 1 ra một chân nào đó của
vdk thì điện áp tại chân đó thường từ 2,45v đồng thời dòng điện bơm
ra trên chân đó khoảng 60µ a đây là một nhược điểm của họ vdk 8051
và được cải thiện khi sử dụng các họ vdk khác như PIC,AVR nhưng họ
vdk này lại có khă năng nuốt dòng lớn I=1,6ma
5.TỔ CHỨC BỘ NHỚ(Memory Organization)
Phần không gian
địa chỉ cho bộ
nhớ chương
trìnhcòn trống
Phần không
bằng 64 kbyte
gian địa chỉ
trừ đi lượng bộ
cho bộ nhớ dữ
nhớ chương
liệu ghép thêm
trình onchip
bên ngoài có
dung lương Bộ nhớ dữ liệu
Bộ nhớ chương
bằng 64 kbyte onchip
trình onchip
Bộ nhớ
Bộ nhớ dữ liệu
6.CÁC THANH GHI CHỨC NĂNG ĐẶC BIỆT VÀ CÁC VẤN ĐỀ LIÊN QUAN
6.1-NGẮT(interrupt)
Định nghĩa:ngắt là một yêu cầu mà các ngoại vi on-chip hoặc
off-chip gửi tới CPU khi một sự kiện nào đó xảy ra,mỗi ngoại vi có một
kểu gây ngắt riêng.
Ngắt có 2 loại:ngắt đồng bộ và ngắt xen kẽ
-Ngắt đông bộ:khi hai sự kiện ngắt xảy ra tại cùng một
thời điểm.lúc này để xét ngắt nào được thực hiện trước căn
cứ vào mức ưu tiên giữa các ngắt,mưc ưu tiên này do nhà
sx chip đưa ra
-ngắt xen kẽ:khi ngắt này đang xảy ra thì có một hoặc một
vài ngắt khác cũng xảy ra,để xét ngắt nào được ưu tiên
trước ta phải xét mức ưu tiên giữa các ngắt giống như ngắt
đồng bộ
Vd ngắt đồng bộ:Hùng và Lượng đều đưa dt ra để gọi điện
cho Khương tại cùng một thời điểm.
Vd ngắt xen kẽ:đang ăn cơm thì có điện thoại của gia đình
Chíp AT89x52 có 6 nguyên nhân gây ra ngắt và sắp xếp theo
mưc ưu tiên là:
1. ngắt ngoài 0 là sự thay đổi tín hiệu trên chân INT0
2. ngắt timer/counter 0 ngắt xảy ra khi timer/counter 0
tràn
3. ngắt ngoài 1 là sự thay đổi tín hiệu trên chân INT1
4. ngắt timer/counter1 ngắt xảy ra khi timer/counter1
tràn
5. ngắt cổng nối tiếp xảy ra khi truyền hoặc nhận xong
một khung dữ liệu
6. ngắt timer/counter2 xảy ra khi timer/counter1 tràn
6.2Các thanh ghi chức năng đặc biệt cơ bản:IE,IP,TMOD,TCON,SCON
a. thanh ghi cho phép ngắt IE
Timer/counter1 Timer/counter0
_bit GATE quy định timer/counter dừng hay đếm
.Khi GATE=1 timer/counter sẽ đếm khi bit TRx=1(TCON)và tín
hiệu ngắt ngoài x ở mức cao
.Khi GATE=0 timer/counter sẽ đếm hay dừng phụ thuộc vào
trạng thái của bit TRx trong thanh ghi TCON
.thông thường chọn bit GATE=0
_bit C/T bit lựa chọn xung nhịp đếm
.C/T=0 xung nhip đếm là xung nhịp CPU(timer)
.C/T=1 xung nhịp đếm là xung nhịp bên ngoài(counter)
_bit M1:M0 =0:0 chế độ định thời 13 bit (không dùng)
=0:1 chế độ định thời 16 bit giá trị đếm tối đa
là2^16=65355 khi tràn thì cờ báo tràn TFx trong thanh
ghiTCON tự động bằng 1 sau đó tự động đưa về 0
=1:0 chế độ tự động nạp lại 8 bit chế độ này byte thấp
TLx hoạt động định thời 8 bít còn byte cao THx làm nhiệm
vụ lưu trữ giá trị nạp lại
=1:1 chế độ định thới chia sẻ ít dùng
Thanh ghi điều khiển TCON
TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0
.Bit TFx là cờ báo tràn,khi giá trị đếm của timer/counter vượt quá giá
trị cho phép thì bit này = 1
.Bit TRx là bít cho phép dừng hay chạy bộ định thời 1 chạy,0 dừng
.Bit IEx cờ ngắt ngoài 1&0
.Bit ITx điều khiển ngắt cạnh hoặc mức bằng 1 ngắt khi sườn đếm
xuống và ngược lại