1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Bài giảng Vi điều khiển: Chương 1 - Cấu trúc phần cứng của AT89C51

27 168 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 820,38 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chương 1 Cấu trúc phần cứng của AT89C51 thuộc bài giảng Vi điều khiển trình bày tổng quan về phần cứng của AT89C51, đặc điểm phần cứng, cấu trúc chung của một vi điều khiển. Tham khảo nội dung bài giảng để nắm bắt thông tin chi tiết.

Trang 1

MÔN HỌC VI ĐIỀU KHIỂN

Khiển AT89C51

AT89C51

Trang 2

NỘI DUNG MÔN HỌC

Da ã n  n h a ä p

Ch ư ơ n g  1  : Ca á u  t ru ù c  p h a à n  c ư ù n g  c u û a   AT8 9 C5 1

Ch ư ơ n g  2  : Ta ä p  le ä n h  AT8 9 c 5 1

Trang 3

TỔNG QUAN

- Sơ lược quá trình hình thành quá phát triển của VĐK

- Từ Vi xử lý đến Vi đĐiều khiển

- Cấu trúc chung của một Vi đĐiều

khiển

Trang 4

Chương 1: CẤU TRÚC PHẦN CỨNG

CPU

interrupt

control

ROM 0K-8031/8032 4K-8051 8K-8052

128 byte RAM 8032/8052

Time 1 Time 0

Time 2 8032/8052

EA

P0 P1 P2 P3 address/data

TXD * RXD *

INT 1

INT0

Timer 2(8052/8032) Timer1

Timer0 serial port

Trang 5

ĐẶC ĐIỂM PHẦN CỨNG

- 4 KB ROM nội.

- 128 Byte RAM nội.

- 4 Port xuất /nhập I/O 8 bit.

- 1 bộ giao tiếp Giao tiếp nối tiếp.

- 2 bộ định thời 16 bit

- 64 KB bộ nhớ chương trình ngoài ( bộ nhớ chương trình = program = code memory)

- 64 KB bộ nhớ dữ liệu ngoàiRAM ngoài ( Bộ nhớ dữ liệu = Data)

Trang 7

II I/O (INPUT/OUTPUT)

Trang 9

Reset : Dùng để khởi động lại hệ thống

ALE (Cho phép chốt địa chỉ Address Latch Enable) :

Chân này xuất tín hiệu cho phép chốt địa chỉ (byte thấp) của địa chỉ ngoài vào 1 thanh ghi ngoài(bộ đệm) Chân này được nối với chân cho phép của vi mạch chốt bên ngoài

Trang 10

ALE

  P2         

Trang 11

• = 0: Cho phép truy xuất bộ nhớ ngoài P2.0 – P2.7 = A8 – A15 ( byte địa chỉ cao)

= 1 : sử dụng 4KROM + 128 byte RAM nội = 21 V : Ghi chương trình vào ROM nội (lập trình)

        (cho phép bộ nhớ chương trình Program Store Enable)

Cho phép bộ nhớ chương trình ngoài Nối với Chân của Eprom

= 0: Cho phép bộ nhớ chương trình ngoài

= 1 : Khi thực thi chương trình ở Rom nội

EA

EA

EA EA

PSEN

PSEN

PSEN

Lưu ý : Các PIN của 89C51 là 2 hướng Để truy xuất ta phải :

Trước khi xuất 1 bit ta phải xóa bit đó = 0

Trước khi nhập ta phải set bit đó = 1

Trang 12

III BỘ NHỚ (MEMORY)

89C51 có 2 loại bộ nhớ : bộ nhớ trong (ON-CHIP Memmory) và bộ nhớ ngoài (External Memmory)

Bộ nhớ nội : Ở bên trong chip (On-Chip Memory) ROM nội và RAM nội ROM nội (4K) dùng để chứa chương trình khi ta nạp chương trình RAM nội (128 byte) dùng để chứa dữ liệu

Vùng stack thường trú trong RAM trên chip (Ram nội)

Bộ nhớ ngoài : ROM ngoài và RAM ngoài

– ROM ngoài : Nằm bên ngoài chip, thường

dùng EPROM (64 K)

– RAM ngoài : Nằm bên ngoài chip, thường

dùng RAM tĩnh (64K) Khi dùng RAM ngoài thì

việc truy xuất không được linh hoạt, và tốc

tộ truy xuất thấp.Tuy nhiên nó cho ta khả

năng là tăng dung lượng RAM, ROM

Trang 13

1  Bo ä  n h ơ ù  n o ä i   

ROM: 4K chứa chương trình

RAM: có128 byte bao gồm Các dãy thanh ghi, vùng RAM định địa chỉ bit, vùng RAM đa chức năng, các thanh ghi có chức năng đặt biệt (SFR) 7FH

20H 1FH

30H 2FH

Vùng Ram

Đa dụng

Vùng Ram Định địa chỉ bit

Các bank Ram

FFH

Các thanh ghi có chức năng đặc biệt

Trang 14

8 thanh ghi R0 - R7 thuộc bank nào được thể hiện qua 2 bit

RS1 RS0 trong thanh ghi PSW

RS1 RS0 Bank được chọn

Trang 15

• Vu ø n g  RAM đ /c  h o a ù  b it  ( Bit  Ad d re s a b le  

Lo c a t io n  )

• Có 210 vị trí Trong đó ( 20h – 2Fh ) = 16

byte* 8 bit = 128 bit Phần còn lại chứa

trong các thanh ghi chức năng đặc biệt Trong vùng nhớ này ta có thể tác động đến từng bit Đây là 1 đặt trưng mạnh

của các bộ vi điều khiển Các địa chỉ trong vùng nhớ này có thể truy xuất

từng byte hay từng bit tùy theo từng lệnh cụ thể.

• Ví dụ :

• SETB 00h ; bit có đ/c bit 00h thuộc địa

chỉ byte 20h được set = 1

• RAM đ a  d u ïn g :

• 80 byte có địa chỉ từ 30h – 7Fh : dùng

để truy xuất thường xuyên với tần số cao, làm stack.

• Bất kỳ vị trí nào trong vùng RAM này

đều có thể truy xuất tự do bằng cách

Trang 16

Các thanh ghi chức năng đặc biệt SFR (Special Function Register):

Thanh ghi là 1 byte nhớ hay 1 từ nhớ Có một địa chỉ, thường được gán cho 1 cái tên gắn liền với 1 hoặc vài chức năng cụ thể

Các thanh ghi nội là 1 phần của RAM nội Do đó mỗi thanh ghi có 1 địa chỉ Có 21 thanh ghi có chức năng đặc biệt Trong đó có 1 số thanh ghi có khả năng định địa chỉ bit

Hầu hết các thanh ghi chức năng đặc biệt được truy xuất bằng cách sử dụng sự định địa chỉ địa chỉ trực tiếp

Trang 17

+ 4 thanh ghi port P0, P1, P2, P3 : dùng cho các port xuất nhập P0, P1, P2 và P3

+ 6 thanh ghi cho time TMOD, TCON, TH0, TL0, TH1, TL1: dùng cho timer0 và timer 1

+ 2 thanh ghi cho port nối tiếp SBUF, SCON : dùng cho port nối tiếp)

+ 2 Thanh ghi dùng cho ngắt IE, IP : dùng cho ngắt+ 1 thanh ghi con trỏ dữ liệu ngòai DPTR: là thanh ghi 2 buyte DPH + DPL dùng truy xuất bộ nhớ ngòai

+ 1 thanh ghi tích lũy A : là thanh ghi được dùng nhiều nhất Chứa kết quả các phép tóan

+ 1 Thanh ghi phụ B : Dùng chung với thanh chứa A trong các lệnh nhân và chia Ngoài ra thanh ghi B được dùng như

thanh ghi phụ R

+ 1thanh ghi bộ đếm chương trình PC (Program Counter) : Là thanh ghi 2 byte, chỉ ra địa chỉ của lệnh tiếp theo được thực hiện Đối với 89c51, khi bắt đầu thì địa chỉ của lện đầu tiên

Trang 18

+ 1 thanh ghi điều khiển nguồn PCON (Power Control) : dùng cho việc tăng đôi tốc độ baud

port nối tiếp và thiết lập chế độ giảm nguồn (power down)

+ 1 thanh ghi con trỏ ngăn xếp SP (Stack Pointer): Nội dung của thanh ghi SP chính là đỉnh hiện hành của Stack ( vùng stack có 32 byte. Nếu ta 

không khởi tạo stack thì nó mặc định là 07h). Tốt nhất là 

ta khai báo vùng stack lớn hơn 2FH.

+ 1 thanh ghi từ trạng thái chương trình PSW (Program Status Word)

Trang 20

- Sử dụng toán tử dot (.) giữa địa chỉ byte và vị trí bit

SETB ACC.7

- Sử dụng ký hiệu tiền định nghĩa JNB TI,$

Trang 21

nhớ trong bị vô hiệu hoá

Khi bộ nhớ ngòai được sử dụng, port 0 không làm nhiệm vụ của port xuất nhập mà trở thành byte địac chỉ thấp A0-A7 và byte dữ liệu D0-D7 đa hợp Port 2 được dùng làm byte địa chỉ cao

Trang 22

Trong ½ chu kỳ đầu của chu kỳ bộ nhớ, byte thấp của địa chỉ được cung cấp bởi P0 và được chốt nhờ tín hiệu ALE Mạch chốt 74CH373 giữ cho byte thấp của địa chỉ ổn định trong cả chu kỳ bộ nhớ trong ½ chu kỳ sau của bộ nhớ, P0 được sử dụng làm bus dữ liệu và dữ liệu được đọc hay ghi.

Các IC giao tiếp ngọai vi cũng có thể được thêm vào để mở rộng khả năng xuất nhập Chúng trở thành 1 phần

của không gian bộ nhớ dữ liệu ngòai

Trang 23

TRUY XUẤT BỘ NHỚ NGÒAI

Truy xuất bộ nhớ chương trình 

ngòai

    P0

ALE

   P2

         

D0­D7 A0­A7

A8­A15

89C51

74CH373

D       Q G

Trang 24

ngòai Bộ nhớ dữ liệu ngoài là bộ nhớ đọc/ghi được cho

phép bởi các tín hiệu RD và WR ở các chân P3.7 và P3.6 Lệnh dùng để truy xuất bộ nhớ dữ liệu ngoài là MOVX, sử dụng con trỏ dữ liệu 16 bit DPTR hoặc R0, R1 làm thanh ghi

chứa địa chỉ

P0

ALE

P2

Trang 26

Việc giải mã địa chỉ được thực hiện khi có nhiều Eprom, Ram hoặc cả Rom và Ram ngịai được kết nối với 89c51 Việc giải mã được thực hiện bởi vi mạch 74138

Trang 27

Một RAM có thể chiếm không gian nhớ chương

trình và dữ liệu bằng cách nối chân tới ngõ ra cổng AND có các ngõ vào làOE PSEN vàRD

/ W

/ O E

R A M

1 2

3

/ W R

/ R D / P S E N

Hình 1.7 Không gian nhớ chương trình và dữ

liệu gối nhau

Mạch trên cho phép RAM được ghi như là bộ nhớ dữ liệu và được đọc như là bộ nhớ chương trình hoặc dữ liệu Vậy 1 chương trình có thể được nạp vào RAM (bằng cách vào RAM như là bộ nhớ

Ngày đăng: 11/02/2020, 17:23

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm