1. Trang chủ
  2. » Luận Văn - Báo Cáo

ĐỀ tài cấu TRÚC PHẦN CỨNG và bộ NHỚ họ MCS 51

24 303 2

Đ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 24
Dung lượng 518,44 KB

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

Nội dung

1.Tóm tắt phần cứng vi điều khiển họ MCS-51 Các họ vi điều khiển họ MCS-51 có đặc điểm chung như sau: -có 4Kbyte bộ nhớ FLASH ROM bên trong để lưu chương trình điều khiển-có 256 byte RAM

Trang 1

TRƯỜNG CAO ĐẲNG KỸ THUẬT LÝ TỰ TRỌNG

KHOA ĐIỆN-ĐIỆN TỬ

BÁO CÁO THUYẾT TRÌNH: MÔN VI XỬ LÝ

ĐỀ TÀI:CẤU TRÚC PHẦN CỨNG VÀ BỘ NHỚ HỌ MCS-51

Trang 2

I.Giới thiệu chung……… trang 1 1.Tóm tắt phần cứng vi điều khiển họ MCS-51……… trang 1

II.Cấu trúc phần cứng vi điều khiển 8051……….trang 2

1.Cấu trúc bên trong của vi điều khiển ……….trang 2

2.Sơ đồ cấu trúc bên trong của vi điều khiển………trang 23.Khảo sát sơ đồ chân MCS-51 ……… trang 5

4.Ý nghĩa các chân trên MCU 8051 ……… trang 6

5.Kết nối phần cứng của XTAL1 và XTAL2 ……….trang 9

III.Cấu trúc bộ nhớ của vi điều khiển……… trang 9

1.Tổ chức bộ nhớ……….……… trang 9

2.Các bank thanh ghi……… trang 12

3.RAM truy xuất từng bit……… trang 14

4.RAM đa dụng……… trang 14

5.Thanh ghi có chức năng đặc biệt……… trang 15

6.Các byte nhớ có địa chỉ 80H,90H,A0h,B0h ………trang 15

7.Byte nhớ có địa chỉ 81H………trang 15

8.Byte nhớ có địa chỉ 82h và 83h ……… trang 16

9.Byte nhớ có địa chỉ 87H ……… trang 16 10.Byte nhớ có địa chỉ từ 88H đến 8DH………trang 16

Trang 3

11.Các byte nhớ có địa chỉ từ 98H đến 99H………trang 1612.Các byte nhớ có địa chỉ từ a8h đến b9h ……….trang 1713.Thanh ghi trạng thái chương trình PSW ……….trang 1713.1 Chức năng từng bit trạng thái ……….trang 1813.2.Các bit chon bank thanh ghi xuất ……….trang 1813.3.Cờ tràn OV……….trang 1913.4.Bit parity………trang 1914.Thanh ghi B ……….trang 19TÀI LIỆU THAM KHẢO……… trang 20

Trang 4

I.GIỚI THIỆU CHUNG

Vào năm 1980 Hãng Intel giới thiệu một bộ vi điều khiển được gọi

là 8051 Bộ vi điều khiển này có 128 byte RAM, 4K byte ROM trên chíp,

hai bộ định thời, một cổng nối tiếp và 4 cổng vào - ra I/O Lúc ấy nó đựợc coi là một “hệ thống trên chíp” 8051 là một bộ xử lý 8 bit có nghĩa là CPU chỉ có thể làm việc với 8 bit dữ liệu tại một thời điểm Dữ liệu lớn hơn 8 bit được chia ra thành các dữ liệu 8 bit để cho xử lý Tiếp theo sau đó là sự ra

đời của chip 8052,8053,8055 với nhiều tính năng được cải tiến

VĐK8051 đã trở nên phổ biến sau khi Intel cho phép các nhà sản

xuất khác cùng nghiên cứu sản xuất các phiên bản của 8051 Điều này dẫn đến sự ra đời nhiều phiên bản của 8051 với các tốc độ khác nhau và dung

lượng ROM trên chíp khác nhau Nhưng tất cả chúng đều tương thích với

8051 ban đầu về tập lệnh

1.Tóm tắt phần cứng vi điều khiển họ MCS-51

Các họ vi điều khiển họ MCS-51 có đặc điểm chung như sau:

-có 4Kbyte bộ nhớ FLASH ROM bên trong để lưu chương trình điều khiển-có 256 byte RAM nội

-4port xuất/nhập 8 bit

-có khả năng giao tiếp truyền dữ liệu nối tiếp

-có thể giao tiếp với 64 Kbyte bộ nhớ bên ngoài dung để lưu dữ liệu

-có 210 bit có thể truy xuất từng bit.có các lệnh xử lý bit

Trang 5

II.Cấu trúc phần cứng vi điều khiển 8051

1.CẤU TRÚC BÊN TRONG CỦA VI ĐIỀU KHIỂN

Sơ đồ khối 8051

-khối điều khiển ngắt:điều khiển các chương trình ngắt khi có tác động ngắt từ yêu cầu của chưng trình hay từ bên ngoài,khi có ngắt thì tùy theo độ ưu tiên mà

vi điều khiển dừng thực hiện lệnh hiện tại để phục vụ ngắt

-khối CPU đây là bộ phận xử lý trung tâm,nó nhận lệnh và dữ liệu để xử lý,là nơi thực hiện hầu hết các phép toán của VĐK,sau khi xử lý xong chương trình

Trang 6

dữ liệu,cpu xẽ xuất lệnh điều khiển lên khối còn lại,cpu quyết định toàn bộ hoạt động của VĐK.

-khối dao động: mạch dao động bên trong vi điều khiển sẽ kết hợp với thạch anh bên ngoài tạo ra tần số dao động làm việc chuẩn cho vđk

-khối ROM :là bộ nhớ FLASH ROM dung để lưu chương trình đk của người lập trình từ máy tính nạp vào hoặc từ chip master sang chip slave

-khối RAM:là bộ nhớ truy xuất ngẫu nhiên dùng để lưu kết quả tạm thời của chương trình khi VĐK làm việc

-điều khiển bus:là tập hợp các tuyến truyền dẫn thông tin,có 3 loại bus đó là bus data,bus điều khiển và bus chương trình

-các port I/O: là tập hợp của 32 chân của vđk giao tiếp với mạch điện bên ngoài

có nhiệm vụ xuất,nhập dữ liệu,địa chỉ,lệnh điều khiển các thiết bị ngoại vi

-timer-counter:dùng để khởi tạo mạch đếm thời gian cũng như đếm xung hoặc đếm sự kiện ngoài

-port nối tiếp:là ngõ xuất nhập dữ liệu nối tiếp phục vụ cho việc VĐK giao tiếp qua cổng com,thực hiện ghi và xóa chương trình

2.sơ đồ cấu trúc bên trong của VĐK

-khối ALU đi kèm với các thanh ghi temp1,temp2 và thanh ghi trạng thái PSW-bộ điều khiển logic(timing and control)

-vùng nhớ RAM nội và vùng nhớ FLASH ROM lưu trữ chương trình

-mạch tạo dao động nội kết hợp với tụ thạch anh để tạo dao động

-khối xử lý ngắt,truyền dữ liệu,khối timer/counter

-thanh ghi A,B,dptr,và 4 port0,port1,port2,port3 có chốt và đệm

-thanh ghi bộ đếm chương trình PC (program counter)

-con trỏ dữ liệu dprt (data pointer)

-thanh ghi con trỏ ngăn xếp SP (stack pointer)

-thanh ghi lệnh IR (instruction register)

Trang 7

-ngoài ra còn có 1 số các thanh ghi hỗ trợ để quản lý địa chỉ bộ nhớ ram nội bên trong cũng như các thanh ghi quản lý địa chỉ truy xuất bộ nhớ bên ngoài.

Cấu trúc bên trong của VĐK

Trang 8

3.KHẢO SÁT SƠ ĐỒ CHÂN MCS-51

Trang 9

SƠ ĐỒ CHÂN MCS-51

4.Ý nghĩa các chân trên MCU 8051

Trang 10

Chân VCC: Chân số 40 là VCC cấp điện áp +5V cho Vi điều khiển

Chân GND: Chân số 20 nối GND

Port 0 (Cổng 0)

Port 0 là một port hai chức năng trên các chân 32–39 Trong các thiết kế cỡ nhỏ (không dùng bộ nhớ mở rộng) nó có chức năng như các đường I/O Đối với các thiết kế lớn với bộ nhớ mở rộng, nó được dồn kênh giữa bus địa chỉ và bus dữ liệu

Port 1 (Cổng 1)

Port 1 là cổng dành riêng cho nhập/xuất trên các chân 1–8 Các chân được ký hiệu P1.0, P1.1, P1.2, có thể dùng cho giao tiếp với các thiết bị ngoài nếu cần Port 1 không có chức năng khác, vì vậy chúng chỉ được dùng cho giao tiếp với các thiết bị ngoài

Port 2 (Cổng 2)

Port 2 là một cổng công dụng kép trên các chân 21–28 được dùng như các

đường xuất nhập hoặc là byte cao của bus địa chỉ đối với các thiết kế dùng bộ nhớ mở rộng

Port 3 (Cổng 3)

Port 3 cũng là một cổng công dụng kép trên các chân 10–17 Các chân của port này có nhiều chức năng, các công dụng chuyển đổi có liên hệ với các đặc tính đặc biệt của 8051/8031

Các chức năng chuyển đổi ở Port 3

Chân RESET (RST) (Chân 9)

Trang 11

Ngõ vào RST ở chân 9 là ngõ vào Reset dùng để thiết lập trạng thái ban đầu cho

vi điều khiển Hệ thống sẽ được thiết lập lại các giá trị ban đầu nếu ngõ này ở

mức 1

TRẠNG THÁI CỦA TẤT CẢ CÁC THANH GHI TRONG VĐK SAU KHI RESET HỆ THỐNG ĐƯỢC TÓM TẮT TRONG BẢNG TRÊN

Chân XTAL1 và XTAL2 (Chân 18 và 19)

Hai chân này có vị trí chân là 18 và 19 được sử dụng để nhận nguồn xung clock

từ bên ngoài để hoạt động, thường được ghép nối với thạch anh và các tụ để tạo

nguồn xung clock ổn định

Chân cho phép bộ nhớ chương trình PSEN\: (Chân 29)

Dùng để truy xuất bộ nhớ chương trình ngoài Chân này thường được nối với chân OE\ (outputenable) của ROM ngoài Khi vi điều khiển làm việc với bộ nhớ chương trình ngoài, chân này kích hoạt ở mức 0 Khi thực thi một chương trình

ở ROM nội, chân này được duy trì ở mức logic không tích cực (logic 1)

Trang 12

Chân ALE: (Chân 30)

Là chân cho phép chốt địa chỉ khi Vi điều khiển truy xuất bộ nhớ từ bên ngoài Tín hiệu ở chân ALE dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và các đường dữ liệu khi kết nối chúng với IC chốt

Hình kết nối VĐK với ic chốt truy xuất bộ nhớ ngoài

Chân EA: ( Chân 31)

Là chân dùng để xác định chương trình thực hiện được lấy từ ROM

nội hay ROM ngoại Khi EA nối với logic 1(+5V) thì Vi điều khiển thực

hiện chương trình lấy từ bộ nhớ nội Khi EA nối với logic 0(0V) thì Vi điều khiển thực hiện chương trình lấy từ bộ nhớ ngoại

5.Kết nối phần cứng của XTAL1 và XTAL2

Trang 13

Mạch dao động được đưa vào hai chân này thông thường được kết nối với dao động thạch anh như sau:

C1=C2= 30pF dùng ổn định dao động cho thạch anh.

Kết nối phần cứng của chân RESET

Việc kết nối chân RESET đảm bảo hệ thống bắt đầu làm việc khi Vi

điều khiển được cấp điện, hoặc đang hoạt động mà hệ thống bị lỗi cần tác

động cho Vi điều khiển hoạt động trở lại, hoặc do người sử dụng muốn

quay về trạng thái hoạt động ban đầu

Vì vậy chân RESET được kết nối như sau:

Kết nối phần cứng của chân RESET

III.CẤU TRÚC BỘ NHỚ CỦA VI ĐIỀU KHIỂN:

Trang 14

1.TỔ CHỨC BỘ NHỚ:

Vi điều khiển 89C51 có bộ nhớ nội bên trong và có them khả năng giao tiếp với

bộ nhớ bên ngoài nếu bộ nhớ bên trong không đủ khả năng lưu trữ chương trình

Bộ nhớ nội bên trong gồm có 2 loại bộ nhớ:bộ nhớ dữ liệu và bộ nhớ chương trình bộ nhớ dữ liệu có 256 byte,bộ nhớ chương trình có dung lượng 4kbyte

Bộ nhớ mở rộng bên ngoài cũng được chia ra làm 2 loại bộ nhớ:bộ nhớ dữ liệu

và bộ nhớ chương trình.khả năng giao tiếp là 64kbyte cho mỗi loại.hình sau minh họa khả năng giao tiếp bộ nhớ của vi điều khiển 89c51:

Bộ nhớ bên trong

CODE memory

Trang 15

RAM bên trong 89c51 được phân chia như sau:

-các bank thanh ghi có địa chỉ từ 00H đến 1FH

-RAM địa chỉ hóa từng bit có địa chỉ từ 20H đến 2FH

-RAM đa dụng từ 30H đến 7FH

-các thanh ghi chức năng đặc biệt từ 80H đến FFH

CODE Memory

FFFF FFFF

Enable

Via PSEN

DATA memory

Enable Via

RD & WR

0000 0000

Trang 16

CẤU TRÚC BỘ NHỚ RAM BÊN TRONG VĐK

Trang 17

2.Các bank thanh ghi:

Các bank thanh ghi có địa chỉ byte từ 00H đến 1FH, có 8 thanh ghi trong mỗi bank, các thanh ghi được đặt tên từ R0-R7, các thanh ghi này được đặt mặc định trong bank 1

Có 4 bank thanh ghi và tại mỗi thời điểm chỉ có một bank thanh ghi được truy xuất với các thanh ghi từ R0 đến R7, để thay đổi việc truy xuất các thanh ghi trên các bank thanh ghi, người dùng phải thay đổi giá trị các bit chọn bank trong thanh ghi trạng thái PSW bằng các câu lệnh trong chương trình

Các lệnh dùng các thanh ghi từ R0 đến R7 mất khoảng không gian lưu trữ ít hơn và thời gian thực hiện nhanh hơn so với các lệnh dùng các ô nhớ RAM khác, ngoài ra các thanh ghi này còn có thêm một số chức năng đặc biệt khác, vì

lí do này các dữ liệu sử dụng thường thường được người viết chương trình đưa vào lưu trong các thanh ghi này

Ngoài ra, có thể truy xuất thanh ghi trên các bank thanh ghi như với các ô nhớ bình thường khác Ví dụ: nguời dùng có thể truy xuất đến thanh ghi R7 bằng ô nhớ 07H

Người lập trình dùng vùng nhớ 4 bank thanh ghi để lưu trữ dữ liệu phục vụ cho việc xử lý dữ liệu khi viết chương trình

Chức năng chính của 4 bank thanh ghi này là nếu trong hệ thống có sử dụng nhiều chương trình thì chương trình thứ nhất có thể sử dụng hết các thanh ghi R0 đến R7 của bank 0 ,khi chuyển sang chương trình thứ 2 để xử lý một công việc gì đó và vẫn sử dụng các thanh ghi R0 đến R7 để lưu trữ cho việc sử lý dữ liệu mà không làm ảnh hưởng đến các dữ liệu R0 đến R7 trước đây và không cần phải thực hiện công việc cất dữ liệu thì cách nhanh nhất là gán nhóm thanh ghi R0 đến R7 cho bank1 là xong.tương tự có thể mở them hai chương trình nữa

và gán cho các bank 3 và bank 4

Trang 18

Minh họa cách gán bank thanh ghi cho nhóm thanh ghi R

Địa chỉ trực tiếp Vùng nhớ 4 bank thanh

ghi1F

3.RAM truy xuất từng bit:

Trên RAM nội có 210 ô nhớ bit được định địa chỉ và có thể truy xuất đến từng bit, các bit nhớ này cũng được định địa chỉ bằng các số thập lục phân- số Hex Trong đó có 128 bit nằm trong các ô nhớ có địa chỉ byte từ 20H đến 2FH, các bit nhớ còn lại chứa trong nhóm thanh ghi có chức năng đặc biệt

Mặc dù các bit nhớ và ô nhớ (byte) cùng được định bằng số Hex, tuy nhiên chúng sẽ được nhận dạng là địa chỉ bit hay địa chỉ byte thông qua các câu lệnh tương ứng dành cho các bit nhớ hoặc các ô nhớ này

4.RAM đa dụng:

Vùng nhớ ram đa dụng gồm có 80 byte có địa chỉ từ 30H đến 7FH,vùng nhớ này không có gì đặc biệt so với 2 vùng nhớ trên,vùng nhớ bank thanh ghi 32 byte từ 00H đến 1 FH cũng có thể dùng làm vùng nhớ ram đa dụng mặc dù các

ô nhớ này đã có chức năng như đã trình bày

B a

Trang 19

Mọi địa chỉ trong vùng ram đa dụng đều có thể truy xuất tự do dùng kiểu địa chỉ trực tiếp hoặc gián tiếp.

5.Thanh ghi có chức năng đặc biệt:

Các thanh ghi nội của 89c51 được truy xuất ngầm định bời các lệnh

Các thanh ghi trong 89c51 được định dạng như một phần của RAM trên chip vì vậy mỗi thanh ghi sẽ có một địa chỉ.cũng như các thanh ghi R0 đến R7,vđk 89c51 có 21 thanh ghi có chức năng đặc biệt nằm ở vùng trên của RAM nội có địa chỉ từ 80H đến FFH

Trong 128 ô nhớ có địa chỉ từ 80H đến FFH thì chỉ có 21 thanh ghi có chức năng đặc biệt được xác định địa chỉ

6.Các byte nhớ có địa chỉ 80H,90H,A0h,B0h:

Là các port của 89c51 bao gồm port 0 có địa chỉ 80H,port1 có đại chỉ

90H,port2 có địa chỉ A0H và port 3 có địa chỉ B0h,tất cả các port này đều có thể truy xuất từng bit nên rất thuận tiện trong điều khiển IO,địa chỉ của các bit được đặt tên với ô bắt đầu chính là địa chỉ của các port tương ứng ví dụ như bit đầu tiên của port 0 là 80H cũng chính là địa chỉ bắt đầu của port 0.người lập trình không cần nhớ địa chỉ các bit trong các port vì phần mềm lập trình cho phép truy xuất bằng tên từng bit dễ nhớ như sau: P0.0 chính là bit có địa chỉ 80H của port 0

Ngoại trừ thanh ghi A có thể truy xuất ngầm,đa số các thanh ghi có chức năng đặc biệt SFR có thể địa chỉ hóa từng bit hoặc byte

7.Byte nhớ có địa chỉ 81H:

Là thanh ghi con trỏ ngăn xếp SP-có chức năng quản lý địa chỉ của bộ nhớ ngăn xếp.Bộ nhớ ngăng xếp dùng để lưu trữ tạm thời các dữ liệu trong quá trình thực hiện chương trình của VĐK

Các lệnh lien quan đến ngăn xếp bao gồm các lệnh cất dữ liệu vào ngăn xếp và lấy dữ liệu ra khỏi ngăn xếp

Lệnh cất dữ liệu vào ngăn xếp xẽ làm tăng SP trước khi ghi dữ liệu vào

Sau lệnh lấy ra khỏi ngăn xếp xẽ làm giàm SP

Trang 20

Bộ nhớ ngăn xếp của 89C51 nằm trong RAM nội và bị giới hạn về cách truy xuất địa chỉ-chỉ cho phép truy xuất địa chỉ gián tiếp.Dung lượng của bộ nhớ ngăn xếp lớn nhất là 128 byte ram nội của 89c51.

Khi reset 89c51 thì thanh ghi SP xẽ mang giá trị mặc định là 07H và giữ liệu và

dữ liệu đầu tiên được cất vào ô nhớ ngăn xếp có địa chỉ 08H

Nếu phần mềm ứng dụng không khởi tạo SP một giá trị mới thì bank1 có thể cả bank 2 và 3 không dùng được vì vùng nhớ này đã được dùng làm ngăn xếpNgăn xếp được truy xất trực tiếp bằng các lệnh PUSH và POP để lưu trữ tạm thời và lấy lại dữ liệu hoặc truy xuất ngầm bằng lệnh gọi chương trình

con(ACALL,LCALL) và các lệnh trở về(RET,RET1) để lưu trữ địa chỉ của bộ đếm chương trình khi bắt đầu thực hiện chương trình con và lấy lại địa chỉ khi kết thúc chương trình con

8.Byte nhớ có địa chỉ 82h và 83h.

Là 2 thanh ghi dpl (byte thấp) có địa chỉ là 82h và dph (byte cao) có địa chỉ 83H,hai thanh ghi này có thể sử dụng độc lập để lưu trữ dữ liệu và có thể kết hợp lại tạo thành 1 thanh ghi 16 bit có tên là dptr và gọi là con trỏ dữ liệu

Được dùng để lưu địa chỉ 16bit khi truy xuất dữ liệu của bộ nhớ dữ liệu bên ngoài

9.Byte nhớ có địa chỉ 87H.

Là thanh ghi pcon (power control) có chức năng điều khiển công suất khi vđk làm việc hay ở chế độ chờ,khi vđk không còn xử lý gì nữa thì người lập trình có thể lập trình cho vđk chuyển sang chế độ chờ để giảm bớt công suất tiêu thụ nhất là nguồn cung cấp cho vđk là pin

10.Byte nhớ có địa chỉ từ 88H đến 8DH:

Là các thanh ghi phục vụ cho 2 timer/counter T1,T0

Thanh ghi TCON (timer control): thanh ghi ĐK timer/counter

Thanh ghi TMOD (timer mode) :thanh ghi lựa chọn mode hoạt động cho

timer/counter

Thanh ghi TH0 và TL0 kết hợp lại tạo thành 1 thanh ghi 16bit có chức năng lưu trữ xung đếm cho timer/counter T0 tương tự cho 2 thanh ghi TH1 và TL1 kết

Ngày đăng: 11/06/2016, 19:22

HÌNH ẢNH LIÊN QUAN

Sơ đồ khối 8051 - ĐỀ tài cấu TRÚC PHẦN CỨNG và bộ NHỚ họ MCS 51
Sơ đồ kh ối 8051 (Trang 5)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

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

w