Quá trình vận hành ứng dụng Kit dùng để chuyển đổi AC sang DC trong hệ thống chuyển mạch nguồn p4 - Pdf 20

Chương III
TỔNG QUAN VỀ HỌ VI ĐIỀU KHIỂN MCS-51

Họ vi điều khiển Mcs – 51 ra đời từ năm 1980 bởi hãng Intel, với sản phẩm
đầu tiên là 8051. Các IC này gọi là vi điều khiển vì chúng bao gồm cả ROM,
RAM, timer, các cổng nối tiếp và song song. Đây là đặc điểm chính để ta phân biệt
giữa vi điều khiển và vi xử lý. 8051 không được sử dụng trong máy tính nhưng được
sử dụng rộng rãi trong công nghiệp và trong sản phẩm máy móc tiêu dùng.
Cùng họ với 8051 có một số vi điều khiển khác. Về cơ bản chúng đều giống
nhau, chúng chỉ khác nhau ở vùng nhớ nội bao gồm vùng nhớ mã lệnh, vùng nhớ
dữ liệu và số timer. Sự khác nhau đó được mô tả bằng bảng dưới đây.

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

Mục này giới thiệu cấu trúc phần cứng của 8051 từ những chân được nhìn
thấy bên ngoài. Dưới đây chỉ mô tả ngắn gọn chức năng của từng chân. Trong 40
chân có đến 32 chân có chức năng như cổng xuất nhập, 24 trong số chúng được
dùng cho hai mục đích 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 dùng như một đơn vò giao tiếp song song như máy in, bộ biến đổi
tương tự số, v.v… Hoặc mỗi đường cũng có thể hoạt động một cách độc lập trong
giao tiếp với các thiết bò đơn bit như: transitor, LED, switch, solenoids …
 Port 0
Port 0 là cổng song song dùng cho hai mục đích, nó là các chân từ 32 đến 39.
Trong những thiết kế nhỏ nó được dùng trong 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à byte
thấp của bus đòc chỉ. Nó còn dùng chứa bytes mã khi nạp ROM nội.
 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 byte. Port 1
chiếm các chân từ 1 đến 8.
 Port 2
Port 2 (chân 21  28) là port có hai 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 byte cao cho bus đòa chỉ bộ nhớ ngoài.
 Port 3
Port 3 (chân 10  17) là port hai chức năng. Bên cạnh chức năng xuất nhập,
các bit của port 3 còn có chức năng điều khiển. Chức năng các bit của port 3
và port 1 được mô tả trong bảng 4.2
 PSEN (cho phép nạp chương trình)
8051 có 4 chân tín hiệu điều khiển. PSEN là tín hiệu điều khiển được xuất ra

P3.1
P3.2
P3.3
P3.4
P3.5
P3.6
P3.7
P1.0
P1.1
RXD
TXD
INT0
INT1
T0
T1
WR
RD
T2
T2EX
Nhận dữ liệu
Phát dữ liệu
Ngắt ngoài 0
Ngắt ngoài 1
Ngõ vào của Timer / couter
0
Ngõ vào của Timer / couter
1
Đọc dữ liệu từ bộ nhớ ngoài

Đọc dữ liệu vào bộ nhớ
Bus nội của 8051
Vcc
Đọc Đọc
chốt chân
Chân
Port
Ghi
Chốt

Hình 4.3 Sơ đồ mạch port

Việc đọc chốt được phân biệt làm hai, đó là đọc từ chốt và đọc từ
chân. Sự phân biệt này nhằm chống trường hợp chập mạch do quá tải gây nên.
Lệnh đọc một bit cổng (ví dụ MOV C, P1.1) sẽ đọc chân của cổng. Trong trường
hợp này, chốt phải được giữ ở mức cao, nếu không FET sẽ dẫn và ngõ ra xuống
mức thấp. Tất cả các chốt của port đều được set khi reset hệ thống. Như vậy các
chân chốt đều được dùng như ngõ vào mà không cần phải set chốt. Tuy nhiên, nếu
đã xóa chốt (ví dụ CLEAR P1.1) không thể đọc dữ liệu đúng từ chân port trừ khi
set chốt trở lại.
IV – TỔ CHỨC BỘ NHỚ
Hầu hết các bộ nhớ các vi xử lý đều dựa theo cấu trúc Von Neuman
về phân chia vùng nhớ cho chương trình và dữ liệu. Điều này cho phép chương
trình được lưu giữ trong đóa và chỉ load vào bộ nhớ mỗi khi thi hành. Do đó dữ liệu
và chương trình đều nằm trong RAM. Đối với vi điều khiển thì khác, CPU được coi
là hệ thống máy tính. Nó là trung tâm của thiết bò điều khiển. Nó bò giới hạn về bộ
nhớ. Chương trình điều khiển nằm trong ROM.
Vì lý do này mà bộ nhớ của vi điều khiển 8051 dựa theo cấu trúc
Harvard để phân chia vùng chương trình (code mã lệnh) và dữ liệu. Như đã mô tả ở


FFFF FFFF

Vùng Vùng
mã lệnh dữ liệu FF Truy xuất Truy xuất
thông qua RD và WR
PSEN 0000 0000

Vùng nhớ nội Vùng nhớ
ngoài

Hình : 4.4 Tóm tắt vùng nhớ 8031

Vùng nhớ có khả năng truy xuất bit:
8051 có tất cả 210 vò trí có thể truy xuất bit. Trong đó có 128 bits (16
bytes) từ đòa chỉ 20H đến 2FH và các bit thuộc các thanh ghi chức năng. Khả năng
truy xuất bit bằng các phần mềm là một điểm mạnh của vi điều khiển. Bits có thể
được set, clear, and, or, v.v… bằng một lệnh đơn.
Vùng nhớ này có thể truy xuất như bytes hoặc bit. Ví dụ để set bit
67H ta dùng lệnh sau:
SETB 67H ;
So với bộ nhớ bit là bit có trọng số lớn nhất của bytes 2CH, do đó ta
cũng có thể set nó bằng lệnh sau:
MOV A, 2CH ;

nó, hầu hết các thanh ghi này được truy xuất bằng đòa chỉ trực tiếp. Một số thanh
ghi có thể truy xuất bằng byte hoặc bit. Trong lập trình phải cẩn thận khi
truy xuất bit thông qua byte. Ví dụ lệnh sau:
SETB 0E0H ;
Set bit 0 trong thanh ghi ACC, các bit khác vẫn không thay đổi. Lưu ý
đòa chỉ của một bit trong một thanh ghi chức năng luôn được xác đònh bởi 5 bit cao
của đòa chỉ thanh ghi đó. Ví dụ một bit trong thanh ghi P1 (90H hay 10010000B)
hay có đòa chỉ 9xH hay 10010xxxB.
Thanh ghi trạng thái chương trình (PSW) sẽ được mô tả chi tiết trong
phần sau, các thanh ghi chức năng còn lại được mô tả ngắn gọn và sẽ được mô tả
chi tiết trong những chương sau.
Thanh ghi trạng thái chương trình:
Thanh ghi trạng thái chương trình có đòa chỉ 0Dh, chứa các bit trạng
thái chương trình.
Các bit trạng thái được mô tả như sau:
* Cờ Carry:
Cờ carry có hai chức năng:
+ Được dùng trong các phép toán số học thông thường. Nó là cờ nhớ
của phép tính cộng và cờ mượn của phép tính trừ. Ví dụ các thanh ghi ACC có nội
dugn FFH thì lệnh “ADD A, #1” làm cho ACC bằng 00H và cờ nhớ được set.
+ Cờ carry còn được dùng như “thanh ghi tích luỹ 1 bit” cho các phép
toán luận lý trên bit. Ví dụ lệnh sau AND bit 25H với cờ carry và đặc kết quả vào
cờ carry: “ANL C,25H ;”.
* Cờ nhớ phụ (auxiliary carry – AC) :
Khi cộng các giá trò BCD, cờ AC được set nếu bit thứ ba tràn hay 4 bit
thấp có giá trò từ 0AH đến 0FH. Khi cộng số BCD, sau phép cộng phải dùng lệnh
DA A (decimal adjust accumulator) để chỉnh kết quả cộng về dạng BCD.
* Cờ 0:
Cờ này dành cho người sử dụng trong các ứng dụng lập trình.
* Bit chọn ngăn thanh ghi:

P
SW .4
P
SW .3

P
SW .2
P
SW .1
P
SW .0
C
Y
A
C
F
0
R
S1
R
S0

O
V

10=bank2, đòa chỉ 10h-17h
11=bank3, đòa chỉ 18h-1Fh
Cờ tràn
Dự trữ
Cờ chẵn lẽ

Bảng 4.3 Thanh ghi PSW

* Bit parity:
Bit Parity được tự động set hoặc xóa trong mỗi chu kỳ máy để tạo nên
parity chẵn đối với thanh ghi tích luỹ. Số bit 1 trong thanh ghi ACC cộng với P luôn


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status