Sản Phẩm >> Vi điều khiển >> Vi điều khiển 8051
Đánh giá: 2.5/5 [45 phiếu bầu]
- Xuất Xứ: ATMEL Corporation Số Lượng 1-19 20-39 >=40 Giá[VNĐ] 18,000 17,000 16,000
- Hiện Trạng: Còn hàng
Mô tả chi tiết
Tải về datasheet AT89S52
Vi điều khiển AT89S52 24PU
Vi điều khiển AT89S52
Sau khi bạn đặt mua hàng, chúng tôi sẽ gọi lại cho bạn vào giờ hành chính để xác nhận lại đơn hàng, phí vận chuyển và thời gian giao hàng. Sau khi bạn đồng ý và thanh toán đơn hàng, chúng tôi sẽ tiến hành giao hàng cho bạn. Nếu bạn cần tư vấn hay ngại đặt hàng bạn có thể liên hệ trực tiếp qua hotline 0931.118.199 để chúng tôi hỗ trợ bạn được tốt hơn!
Sản phẩm cùng loại
- 15.000 VNĐ
- 15.000 VNĐ
- 20.000 VNĐ
Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản vừa đủ của tài liệu tại đây [ 1.82 MB, 97 trang ]
22
Vi điều khiển
Vùng mã lệnh nội
Vùng dữ liệu nội
Số Timer
8051
8031
8751
8052
8032
8732
4K ROM
0K
4K EPROM
8K ROM
0K
4K EPROM
128 bytes
128 bytes
128 bytes
256 bytes
256 bytes
256 bytes
2
2
2
3
3
3
Bảng 2.1. Giới thiệu một số IC họ 8051
2.1.1. Cấu trúc bus
Bus địa chỉ của họ vi điều khiển 8051 gồm 16 đường tín hiệu [thường gọi là
bus địa chỉ 16 bit] với lượng bit địa chỉ như vậy, không gian nhớ của nó có thể mở
rộng tối đa đến 2^16 = 65536 địa chỉ tương đương 64K.
Bus dữ liệu của họ 8051 gồm 8 đường tín hiệu [thường gọi là dữ liệu 8 bit],
đó là lí do vì sao nói 8051 là họ vi điều khiển 8 bit. Với độ rộng của bus dữ liệu như
vậy, các chip họ 8051 có thể xử lí được các toán hạng 8 bit trong 1 chu kì lệnh.
2.1.2. Bộ nhớ chương trình
Vi điều khiển họ 8051 có không gian nhớ là 64K địa chỉ, đó cũng là bộ nhớ
chương trình lớn nhất mà mỗi chip thuộc họ này có được. Bộ nhớ chương trình của
các chip thuộc họ 8051 có thể thuộc loại ROM, EPROM, Flash, hoặc không có bộ
nhớ chương trình bên trong chip, tên của chip thể hiện bộ nhớ chương trình mà nó
chứa bên trong .
2.1.3. Bộ nhớ dữ liệu
Bộ nhớ SRAM được tích hợp bên trong mọi chip thuộc họ này, có dung
lượng khác nhau tùy loại chip nhưng thường thì chỉ khoảng vài trăm byte. Đây
chính là nơi chứa các biến trung gian trong quá trình hoạt động của chip. Khi mất
điện do bản chất của SRAM mà các giá trị này cũng mất theo. Bên cạnh bộ nhớ
23
loại SRAM thì một số chip thuộc họ 8051 còn có thêm bộ nhớ EEPROM với dung
lượng tối đa vài Kbyte tùy từng loại chip cụ thể.
2.2. GIỚI THIÊU TỔNG QUAN VỀ AT89S52
AT89S52 là một thành viên của họ 8051. Nó là một bộ VĐK thông dụng, giá
rẻ, có khá nhiều chức năng hay, đặc biệt là có tích hợp sẵn bộ nạp ISP trên chip
giúp người sử dụng có thể dễ dàng thực hiện các bài thí nghiệm với chi phí rất thấp.
AT89S52 có 8 kbyte Flash ROM trên chip, khi chân /EA [ chân số 31] đặt ở
mức logic cao [+5v] thì VĐK sẽ thực hiện chương trình bộ nhớ trong. Khi /EA đặt
ở mức logic thấp [0v] thì VĐK thực hiện chương trình ở bộ nhớ ngoài, AT89S52 có
256 bytes RAM nội, 32 bytes thấp của bộ nhớ nội dùng cho các thanh ghi, 128 bit
có chứa các byte định địa chỉ theo bit từ 20H đến 2FH.
AT89S52 có chứa 3 bộ đếm /định thời [timer/counter] 16 bit được dùng cho
việc định thời hoặc đếm sự kiện.
AT89S52 chứa 1 port nối tiếp phục vụ cho việc trao đổi thông tin với các thiết
bị có khả năng giao tiếp nối tiếp như máy tính[ qua cổng COM]…
AT89S52 có chứa 6 nguồn ngắt, 2 mức ưu tiên,1 bộ giao động trên chip, nó
thường được nối với bộ giao động thạch anh có tần số lớn nhất là 33MHz, thông
thường là 12 MHz.
AT89S52 dùng nguồn một chiều có dải điện áp từ 4v – 5.5 v được cấp qua
chân 40, chân 20 nối mát.
24
2.2.1. Sơ đồ khối và chức năng các khối của họ 8051
Hình 2.1. Sơ đồ khối của họ 8051
Bộ vi điều khiển AT89S52 gồm các khối chức năng sau đây:
+ CPU[ Central Processing unit ] bao gồm:
– Thanh ghi tích lũy A.
– Thanh ghi tích lũy phụ B, dùng cho phép nhân và phép chia.
– Đơn vị logic học ALU[ Arithmetic Logical Unit].
– Thanh ghi từ trạng thái chương trình [ PSW: Program Sttatus Worl].
– Bốn băng thanh ghi.
– Con trỏ ngăn xếp.
+ Bộ nhớ chương trình[ bộ nhớ ROM] gồm 8 Kb Flash.
+ Bộ nhớ dữ liệu [ Bộ nhớ RAM ] gồm 256 Bytes.
25
Bộ UART [ Universal Ansynchrous Receiver and Transmitter] có chức năng
truyền nhận nối tiếp, AT89S52 có thể giao tiếp với cổng nối tiếp của máy tính
thông qua bộ UART.
+ Ba bộ timer/count 16 bit: thực hiện các chức năng định thời và đếm sự
kiện.
+ WDM [ Watch Dog Timer ] : được dùng để phục hồi lại hoạt động của CPU
khi nó bị treo bởi một nguyên nhân nào đó.
+ Khối điều khiển ngắt : với 2 nguồn ngắt ngoài và 4 nguồn ngắt trong.
+ Bộ lập trình [ ghi chương trình lên flash ROM ]: cho phép người sử dụng
có thể nạp chương trình cho chip mà không cần bộ nạp chuyên dụng.
+ Bộ chia tần: với hệ số chia là 12.
+ Bốn cổng xuất nhập: với 32 chân.
26
2.2.2. Sơ đồ chân và chức năng các chân của họ 8051
Hình 2.2. Sơ đồ chân của họ 8051
2.2.3. Sơ đồ cấu trúc AT89S52
Trung tâm của 89S52 vẫn là vi xử lý trung tâm [CPU]. Để kích thích cho
toàn bộ hệ thống hoạt động, 89S52 có bộ tạo dao động nội với thạch anh được
ghép từ bên ngoài với tần số khoảng từ vài Mhz đến 24 Mhz. Liên kết các phần tử
với nhau là hệ thống BUS nội, gồm có BUS dữ liệu, BUS địa chỉ và BUS điều
khiển. 89S52 có 8K ROM, 256 bytes RAM và một số thanh ghi bộ nhớ… Nó giao
tiếp với bên ngoài qua 3 cổng song song và một cổng nối tiếp có thể thu, phát dữ
27
liệu nối tiếp với tốc độ lập trình được. Hai bộ định thời 16 bit của 89S52 còn có 2
ngắt ngoài cho phép nó đáp ứng và xử lý điều kiện bên ngoài theo cách ngắt
quãng, rất hiệu quả trong các ứng dụng điều khiển. Thông qua các chân điều khiển
và các cổng song song 89S52 có thể mở rộng bộ nhớ ngoài lên đến 64Kb dữ liệu.
Sau đây là sơ đồ khối Vi điều khiển họ 89S52:
Hình 2.3. Sơ đồ khối Vi điều khiển họ 89S52
2.3. SƠ LƯỢC VỀ CÁC CHÂN IC 89S52
IC 89S52 có 40 chân. Có đến 32 chân làm nhiệm vụ xuất nhập, truyền dữ
liệu. Các chân phục vụ ngắt, các chân Timer, trong đó 24 chân làm 2 nhiệm vụ khác
nhau. Mỗi chân có thể là đường xuất nhập, đường điều khiển
hoặc là một phần của địa chỉ hay dữ liệu. Thiết kế thường có bộ nhớ ngoài hay các
thiết bị ngoại vi sử dụng những Port để xuất nhập dữ liệu. Tám đường trong mỗi
Port được sử dụng như một đơn vị giao tiếp song song như máy in, bộ biến đổi
tương tự số…. Hoặc mỗi đường cũng có thể hoạt động độc lập trong giao tiếp với
các thiết bị đơn bit khác như: transistor, LED, switch….
Sau đây là hình dạng sơ đồ của IC 89S52:
28
Hình 2.4. Hình dạng sơ đồ IC 89S52
2.4. CHỨC NĂNG CÁC CHÂN IC 89S52
Sau đây là phần giới thiệu chức năng các chân, các Port tương ứng, chân
PSEN, chân ALE, chân RESET…
2.4.1. Port 0 :
Port 0 là cổng song song dùng cho 2 mục đích, nó là các chân từ 32. Trong
những thiết kế nhỏ nó được dùng trong các cổng xuất nhập bình thường. Ở những
thiết kế có sử dụng bộ nhớ ngoài, nó vừa là Bus dữ liệu vừa là bytes thấp của Bus
địa chỉ. Nó còn được dùng chứa những bytes mã khi nạp ROM nội.
29
Hình 2.5. Cấu trúc Port 0
2.4.2. Port 1:
Port 1 dành cho cổng xuất nhập và chỉ dành cho mục đích này mà thôi. Nó
dùng để giao tiếp với các thiết bị ngoại vi theo từng bit hoặc bytes. Port 1 chiếm
các chân từ 1 đến 8.
Hình 2.6. Cấu trúc Port 1
30
2.4.3. Port 2:
Port 2 [chân 21÷ 28] là Port có 2 chức năng. Ngoài mục đích dành cho xuất
nhập thông thường nó còn dùng làm bytes cao cho các địa chỉ bộ nhớ ngoài.
Hình 2.7. Cấu trúc Port 2
2.4.4. Port 3[ P3.0-P3.7] :
Mỗi chân trên Port 3 ngoài chức năng xuất nhập còn có một chức năng riêng
cụ thể như sau:
Hình 2.8. Cấu trúc Port 3
31
Bảng 2.2. Chức năng các chân của Port3
Bit
Tên
Chức năng
P3.0
RXD
Dữ liệu nhận cho Port nối tiếp.
P3.1
TXD
Dữ liệu truyền cho Port nối tiếp.
P3.2
INT0
Ngắt bên ngoài 0.
P3.3
INT1
Ngắt bên ngoài 1.
P3.4
T0
Ngõ vào của Timer/count 0.
P3.5
T1
Ngõ vào của Timer/count 1.
P3.6
/WR
Xung ghi bộ nhớ dữ liệu ngoài.
P3.7
/RD
Xung đọc bộ nhớ dữ liệu ngoài.
2.4.5. Chân /PSEN[ Program Store Enable]
Chân/PSEN là chân điều khiển đọc chương trình bộ nhớ ngoài, nó được nối với
chân /OE để cho phép đọc các byte mã lệnh trên ROM ngoài. /PSEN sẽ ở mức thấp
trong thời gian đọc mã lệnh. Mã lệnh được đọc từ bộ nhớ ngoài qua bus dữ liệu
[Port 0] thanh ghi lệnh để được giải mã.
Khi thực hiện chương trình trong ROM nội thi /PSEN ở mức cao.
2.4.6. Chân ALE [ Address Latch Enable]
ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của
vi điều khiển. Tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như
74373, 74573 chốt byte địa chỉ thấp ra khỏi bus đa hợp địa chỉ /dữ liệu[ Port0].
32
2.4.7. Chân /EA[ External Access]
Tín hiệu /AE cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài vi
điều khiển. Nếu /AE ở mức cao[ nối với Vcc] thì vi điều khiển thi hành trong ROM
nội. Nếu /AE ở mức thấp[ nối với GND ] thì vi điều khiển thực hiện chương trình từ
bộ nhớ ngoài.
2.4.8. RST[ Reset]
Ngõ vào RST trên chân 9 là ngõ reset của 8051. Khi tín hiệu này được đưa lên
mức cao [ trong ít nhất 2 chu kì máy], các thanh ghi trong bộ vi điều khiển được tải
những giá trị thích hợp để khởi động hệ thống.
2.4.9. XTAL1, XTAL2
AT89S52 có một bộ dao động trên chip, nó thường được nối với bộ dao động
thạch anh có tần số lớn nhất là 33MHz, thông thường là 12MHz.
2.4.10. Vcc, GND
AT89S52 dùng nguồn một chiều có dải điện áp từ 4V đến 5.5 V được cấp qua
chân 40 và 20.
2.5. HOẠT ĐỘNG ĐỊNH THỜI
2.5.1. Giới thiệu
Các bộ định thời[Timer] được sử dụng rất rộng rãi trong các ứng dụng đo
lường và điều khiển.Có thể coi một bộ định thời n bit là bộ đếm n bit được tạo ra
bởi n flip_flop mắc nối tiếp với nhau. Đầu của bộ định thời chính là đầu vào của
flip_flop đầu tiên…
AT89S52 có 3 bộ định thời 16 bit trong đó hai bộ Timer 0,Timer 1 có 4 chế
độ hoạt động. Timer 2 có 3 chế độ hoạt động. Các bộ định thời dùng để định
khoảng thời gian[hẹn giờ], đếm sự kiện xảy ra bên ngoài bộ vi điều khiển hoặc tạo
tốc độ baud cho cổng nối tiếp.
Trong các ứng dụng định khoảng thời gian, Timer được lập trình sao cho sẽ
tràn sau một khoảng thời gian và thiết lập cờ tràn bằng 1. Cờ tràn được sử dụng bởi
Xem thêm: NTTT là gì? -định nghĩa NTTT