1. Trang chủ
  2. » Thể loại khác

www.tinhgiac.com dieu khien led trang tri

23 70 0
Tài liệu được quét OCR, nội dung có thể không chính xác

Đ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 23
Dung lượng 3,33 MB

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

Nội dung

— Khi lập trình cho ROM trong chịp thì Port 0 đóng vai trò là ngõ vào của _ Ở chế độ mặc định khi reset thì các chân Port P1.0 — P1.7 được cầu hình là port xuất đữ liệu.. Muốn các chân P

Trang 1

CHƯƠNG 2

KHAO SAT CHIP VI DIEU KHIEN 89852

2.1 GIỚI THIÊU CHUNG

Chip vi diéu khién 89852 thuộc họ MCS-51 là họ vi điều khiển của hãng

Intel Chip 89S52 có một số đặc trưng cơ bản sau:

_ Bộ nhớ chương trình bén trong: 8 KB (ROM)

_ Bộ nhớ đữ liệu bén trong: 256 byte (RAM)

_ Bộ nhớ chương trình bên ngoài: 64 KB (RAM)

_ Bộ nhớ dữ liệu bên ngoài: 64 KB (RAMI

_ 4 port xuat nhap (I/O port) 8 bit

_ 3 bộ dinh thoi 16 bit

_ Mach giao tiếp nối tiếp

_ Bộ xử lý bit (thao tác trên các bit riêng lẻ)

_ 210 vị trí nhớ được định địa chỉ, mỗi vị trí 1 bit

_ Nhân / Chia trong 4s

Trang 2

2.2 CÁC CHÂN CỦA CHIP §9S52

INTERRUPT, SERIAL PORT

ANO TIMER BLOCKS

LEPROG 4| TƯỜNG | INSTRUCTION | ¥ ¥ : p>) nuAaprr lkiO——k |

EZ/v„ ——| CONTROL | NESISTER [ 1! ‡ q + "|

'

1 | WATCH PORT 3 PORT 1 ISP PROGRAM '

DOG LATCH LATCH PORT +-> LOGIC

( | PORT 3 DRIVERS = PORT 1 DRIVERS |

KV Cứ ccs! cal contin > Che - hanh ốm nha Ê 0 rw ates lec coset andl mgt is eck een tS CS =2 —=_- =2 cy k6 emesis haat Nah tar duy Av la CỔ tế kế adeGctbsamaoDaockfciades Sơ thêno 8

|

=F P3.0 - P37 P10 - PLT

"I4

Sơ đồ 2.1: Sơ đồ khối của chip 89S52

_ OSC (Oscillator): Mạch dao động-> tạo tín hiệu xung clock cung cấp cho các khối trong chip hoạt động

_ Interrupt control: Diéu khiển ngắt -> nhận tín hiệu ngắt từ bên ngoài

(NT0\, INT1)), từ bộ định thời (Timer 0, Timer 1) và từ công nối tiếp (Serial port), lần lượt đưa các tín hiệu ngắt này đến CPU để xử lý.

Trang 3

_ Other reglsters: Các thanh ghi khác -> lưu trữ dữ liệu của các port xuất/nhập, trạng thái làm việc của các khối trong chip trong suốt quá trình hoạt động của hệ thống

— RAM (Random Access Memory): Bộ nhớ dữ liệu trong chip -> lưu trữ

các dữ liệu

_ ROM (Read Only Memory): Bộ nhớ chương trình trong chip -> lưu trữ chương trình hoạt động của chịp

_ LO port (In/Out ports): Các port xuất/nhập -> điều khiển việc xuất nhập

dữ liệu dưới dạng song song giữa trong và ngoài chip thông qua các port P0, P1, P2, P3

_ Serial port: Port nỗi tiếp -> điều khiển việc xuất nhập dữ liệu dưới dạng nối tiếp giữa trong và ngoài chip thông qua các chân TxD, RxD

_ Timer 0, Timer 1: Bộ định thời 0, 1 -> dùng để định thời gian hoặc đếm

sự kiện (đếm xung) thông qua các chân T0, T1

Trang 4

2.2.2 Sơ đồ chân và chức nănø các chân của chip 89852

>>

(T2) P1.0 F] 1 40 0 vec (12 EX) P1102 39 1] PO.0 (ADO)

P1203 38 [L]P0.1 (AD1) Pi304 37 [IP0 2 (AD2) P1405 36 LIP0.3 (AD3) (MOSI) P1.5 F] 6 35 [FIP0.4 (AD4) (MISO) P1607 34 L]P0 5 (AD5) (SCK) P1.7 L]8 33 L]P06 (ADS6) RST r]3 32 FIP0.7 (AD7)

(TXD) P3.1 L] 11 30 []ALE/PROG (INTO) P3.2 0 12 29 [IPSEN (INT1) P3.30 13 28 L]P27 (A15) (T0) P3.4 LỊ 14 27 []P26 (A14) (T1) P35 LÌ 15 26 LIP2 5 (A13) (WR) P36 [| 16 25 []P24{A12) (RD) P3.7 L| 17 24 P2.3 (A11) XTAL2 | 18 23 [F]P22 (A10) XTAL1 F]| 13 22 [1P2.1 (A9) GND [] 20 21 1P20 (A8)

Sơ đồ 2.2: Sơ đồ chân của chip 89S52 2.2.2.1 Port 0

_ Port0 (P0.0 — P0.7) có số chân từ 32 — 39

_ Port 0 c6 hai chức năng:

e Port xuat nhap di ligu (P0.0 — P0.7)> khéng st dung bộ nhớ ngoai

e Bus dia chi byte thap va bus dit liéu da hop (ADO - AD7)—> có sử

dụng bộ nhớ ngoài

* Lưu ý: Khi Port 0 đóng vai trò là port xuất nhập dữ liệu thì phải sử

dụng các điện trở kéo lên bên ngoài

_ Ở chế độ mặc định (khi reset) thì các chân Port 0 (P0.0 — P0.7) được cầu hình là port xuất dữ liệu, Muốn các chân Port 0 làm port nhập dữ liệu thi cần

Trang 5

phải lập trình lại, bằng cách ghi mức logic cao (mức 1) đến tất cả các bit của

port trước khi bắt đầu nhập đữ liệu từ port

— Khi lập trình cho ROM trong chịp thì Port 0 đóng vai trò là ngõ vào của

_ Ở chế độ mặc định (khi reset) thì các chân Port (P1.0 — P1.7) được cầu

hình là port xuất đữ liệu Muốn các chân Port 1 làm port nhập dữ liệu thì cần

phải lập trình lại, bằng cách ghi mức logic cao (mức 1) đến tất cả các bỉt của

port trước khi bắt đầu nhập dữ liệu từ port

_ Khi lap trinh cho ROM trong chip thi Port 1 đóng vai trò là ngõ vào của

địa chỉ byte thấp (A0 — A7)

_ Port 2 (P2.0 - P2.7) có số chân từ 21 — 28

_ Port 2 co hai chức năng:

e Port xuat nhap di liéu (P2.0 - P2.7) -› không sử dụng bộ nhớ

ngoài

e Bus địa chỉ byte cao (A8 — A15) — có sử dụng bộ nhớ ngoài _ Ở chế độ mặc định (khi reset) thì các chân Port 2 (P2.0 — P2.7) được cầu hình là port xuất đữ liệu Muốn các chân Port 2 làm port nhâp dữ liêu thì cần phải lập trình lại, bằng cách ghi mức logic cao (mức 1) đến tất cả các bit của

port trước khi bắt đầu nhập đữ liệu từ port

_ Khi lập trình ROM trong chip thi Port 2 đóng vai trò là ngõ vào của địa

chỉ byte cao (A8 — A11) và các tín hiệu điều khiến

_ Port 3 (P3.0 — P3.7) có số chân tù 10 — 17

_ Port 3 có hai chức năng:

Trang 6

e Port xuat nhap dữ liệu (P3.0 - P3.7)-› không sử dụng bộ nhớ

ngoài hoặc các chức năng đặc biệt

e© Các tín hiệu điều khiển -> có sử dụng bộ nhớ ngoài hoặc các

chức năng đặc biệt

_ Ở chế độ mặc định (khi reset) thì các chân Port 3 (P3.0 — P3.7) được cầu hình là port xuất đữ liệu Muốn các chân Port 3 làm port nhập dữ liệu thì cần phải lập trình lai, bang cách ghỉ mức logic cao (mức 1) đến tất cá các bit của

port trước khi bắt đầu nhập dữ liệu từ port

—_ Khi lập trình cho ROM trong chịp thì Port 3 đóng vai trò là ngõ vào của

các tín hiệu diéu khién

_ Chức năng các chân Port 3:

Bit Tên Dia chi bit Chức năng

H3 RxD BOH Chân nhận dữ liệu của port nồi tiếp

P31 | TxD BIH Chân phát đữ liện của port nối tiếp

P3.2 | INTO\ B2H Ngõ vào ngắt ngoài 0

P33 |INTI\ B3H Ngõ vào ngắt ngoài 1

P3.4 TO B4H Ngõ vào của bộ định thời/đềm 0

P3.5 Tl BH Ngõ vào của bộ định thoi/dém 1

P3.6 | WR\ B6H Điều khiên ghi vào RAMI ngoài

e©_ Là tín hiệu xuất, tích cực mức thấp

PSEN\=0 — trong thời gian CPU tìm — nạp lệnh từ ROM ngoài

PSEN\ = 1 — CPU su dung ROM trong (không sử dụng ROM ngoài)

Trang 7

_ Khi sử dụng bộ nhớ chương trình bên ngoài, chân PSEN\ thường được nối với chân OE\ của ROM ngoài dé cho phép CPU đọc mã lệnh từ ROM ngoai

2.2.2.6 Chan ALE\

_ ALE (Address Latch Enable): cho phép chốt địa chỉ, chân số 30

_ Chức năng:

e Là tín hiệu cho phép chốt địa chỉ để thực hiện việc giải đa hợp

cho bus địa chỉ byte thấp và bus dữ liệu đa hợp (AD0 —- AD7)

e© Là tín hiệu xuất tích cực mức cao

ALE = 0 — trong thời gian bus AD0 — AD7 dong vai tro là ngõ vào của xung lập trình (PGM

_ Sose

f,,, (MHz): tần số xung tại chân ALE

fos„ (MHz): tần số dao động trên chip (tần số thạch anh) _ Khi lệnh lẫy từ đữ liệu từ RAM ngoài (MOVX) được thực hiện thì một xung ALE bị bỏ qua

EA\=0— chip 89S52 sử dụng chương trình của ROM ngoài

EA\= 1-> chip 89S52 sử dụng chương trình của ROM trong

— Khi lập trình cho ROM trong chip thi chan EA đóng vai trò là ngõ vào

của điện áp lập trình (V,„ = 12V — 12,5V cho họ 89xx; 21V cho ho 80xx,

87xx)

vx Lưu ý: Chân EA\ phải được nối lên ƒ„„ (nếu sử dụng chương trình của ROM trong) hoặc nối xuống GND (nếu sử dụng chương trình của ROM ngoài), không bao giờ được phép bỏ trống chân này.

Trang 8

2.2.2.8 Chân XTALI, XTAL2

_ XTAL (Crystal): tỉnh thể thạch anh, chân số 18 — 19

_ Chức năng:

e Dung để nối với thạch anh hoặc mạch dao động tạo xung clock bên ngoài, cung cấp tín hiệu xung clock cho chip hoạt động

e XTAL]l—› ngõ vào mạch tạo xung clock trong chịp

Két néi thach anh Kết nối mạch dao

dao động bên ngoài động bên ngoài

Sơ đồ 2.3: Sơ đồ kết nối thạch anh và mạch dao động bên ngoài

RST =0— Chip §9S52 hoạt động bình thường

RST = 1-> Chip 89852 dugc thiét lap trạng thái ban dau

t orser (Hs): thoi gian reset fc (MHz): tan số thạch anh

Tacume (us ) : chu ky may

10

Trang 9

2.3 CAU TRUC CAC PORT XUẤT NHAP CHIP 89S52

Khả năng fanout ( số lượng tải đầu ra) của từng chân port chip 89S52 là:

11

Trang 10

Đối với các chân

của Port 0 (khi là

% Hệ thông bus bên trong cát \ pts “2

`

Nec §? Điện trở kéo I

3 Š I< lên bên ngoài Đọc bộ \ Điện trở Đọc chân d

chốt kéo lên P ort LỊI —Ƒ | Chân

- port

Ghibo_|° °

chốt ad

Ở chế độ mặc định (khi reset) thi tat

cả các chân của port luôn luôn được

cấu hình là pøz/ xuất dữ liệu

Hình 2.1: Cầu trúc bên trong của các port xuất nhập

e Ở chế độ mặc định (khi reset) thì tất cả các chân của các port (P0 —

P3) được cấu hình là port xuất dữ liệu

e Muốn các chân port của chip 89S52 làm port nhập dữ liệu thì ta cần phải được lập trình lại, bằng cách ghi mức logic cao (mức 1) đến tất

cả các bit (các chân) của port trước khi bắt đầu nhập đữ liệu từ port

e Các chân trong cùng một port không nhất thiết phải có cùng kiểu cấu hình (port xuất hoặc port nhập) Nghĩa là trong cùng một port có thê

có chân dùng đề nhập dữ liệu, có thể có chân dùng để xuất đữ liệu Điêu này là tùy thuộc vào nhu câu và mục địch của người lập trình

12

Trang 11

Quá trình ghi chân port (xuất đữ liệu ra chân port)

Hệ thống bus bên trong 2s

[1] | Đọc bộ \ Điện trở < Doc chan

Trang 12

Quá trình đọc bộ chốt (kiểm tra đữ liệu tại chân port)

đọc bộ chốt

o_ Quá trình đọc chân port: Khi ta sử dụng các lệnh MOV, ADD,

Dữ liệu nhận được sau khi thực hiện quá trình đọc là dữ liệu hiện tại ở các chân port

o_ Quá trình đọc bộ chốt: Khi ta sử dụng các lệnh ANL, Orl, XRL, CPL, INC, DEC, DINZ, JBC, CLR bit, SETB bit, MOV bit Dir

liệu nhận được sau khi thực hiện quá trình đọc là dữ liệu hiện tại

ở các bộ chốt (là các dữ liệu đã được ghi ra port tại thời điểm

trước đó bởi quá trình ghi chân port), chứ không phải là dữ liệu hiện tại ở các chân port Cho nên, nếu tại thời điểm thực hiện quá trình đọc mà dữ liệu tại các chân port có bị thay đôi đi chăng nữa thì đữ liệu đọc về cũng không được cập nhật

14

Trang 13

2.4 TO CHUC BO NHO CUA CHIP 89852

_ B6 vi xt lý-> có không gian bộ nhớ chung cho dữ liệu và chương trình

Chương trình —>

Dix id u heu ——> L_J xế" RAM —> CPU thực thi

-> chương trình và dữ liệu nằm chung trên RAM trước khi đưa vào CPU để thu thi

_ Bộ vi điêu khiên-> có không gian bộ nhớ riêng cho dữ liệu và chương

Hình 2.5: Không gian bộ nhớ của chip 89552

Bô nhớ ngoài chip

Trang 14

E7 |E6 | E5 | E4 | E3 | E2 |EI | E0

B7 [h6 |Bš[B4|B3|B2 [B1 [B0

AF| = | = |AC|AB|AA |A9|A®

A7|A6|A5|A4|A3]A2[Al [AO

Không định địa chỉ bit

OF [9E[9D[9C]9B[9A [99 [98

97 [96 [95 [94 | 93 [92 [91 [90

Không định dia chi bit

Khéng dinh dia chi bit

Thanh ghi chức nắng đặc biệt)

Hình 2.6: Bộ nhớ dữ liệu trên chip 89S52

A PSW

IP

IE P2 SBUF SCON

Pi

THi THO T11 TLO TMOD

TCON

PCON DPH DPL

SP

lồ

Trang 15

2.4.1 Bộ nhớ trong

Bộ nhớ chương trình Day thanh ghi

(SQH-FFH)

2.4.1.1 Bộ nhớ chương trình (ROM)

_ Dùng để lưu trữ chương trình điều khiển cho chip 89S52 hoạt động

_ Chip 89852 cé 8 KB ROM trong, dia chỉ truy xuất: 000H - FFEFH

2.4.1.2 Bộ nhớ dữ liệu (RAM)

_ Dùng để lưu trữ các dữ liệu và tham số

_ Chip 89S52 có 256 byte RAM trong, địa chỉ truy xuất: 00H - 7FH Hai đặc tính cần chú ý là:

> Các thanh ghi và các port xuất nhập đã được định vị (xác định)

trong bộ nhớ và có thể truy xuất trực tiếp giống như các địa chỉ bộ nhớ khác

> Ngăn xếp bên trong Ram nội nhỏ hơn so với Ram ngoại như trong các bộ Microcontroller khác

_ RAM bén trong chip 89S52 được phân chia như sau:

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

= RAM dia chi hda ting bit có địa chỉ từ 20H đến 2FH

= RAM da dụng từ 30H đến 7FH

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

“+ RAM da dung:

_ Mặc dù trên hình vẽ cho thấy 80 byte đa dụng chiếm các địa chỉ từ

30H đến 7FH, 32 byte dưới từ 00H đến IFH cũng có thể dùng với mục đích

tương tự (mặc dù các địa chỉ này đã có mục đích khác)

17

Trang 16

_ Moi địa chỉ trong vùng RAM đa dụng đều có thể truy xuất tự đo dùng kiểu địa chỉ trực tiếp hoặc gián tiếp

* RAM có thể truy xuất từng bit:

_ 89552 chứa 210 bit được địa chỉ hóa, trong đó có 128 bit có chứa

các byte chứa các địa chỉ từ 20F đến 2FH và các bit còn lại chứa trong nhóm

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

Ý tưởng truy xuất từng bit bằng phần mềm là các đặc tính mạnh của microcontroller xu ly chung Các bit có thê được đặt, xóa, AND, OR, , với 1 lệnh đơn Đa số các microcontroller xử lý đòi hỏi một chuỗi lệnh đọc — sửa — ghi dé đạt được mục đích tương tự Ngoài ra các port cũng có thể truy xuất

được từng bịt

_ 128 bit mà truy xuất từng bit này cũng có thê truy xuất như các byte

hoặc như các bit phụ thuộc vào lệnh được dùng

s* Các dãy thanh phi:

Gồm: 4 dãy x 8 thanh ghi Địa chỉ truy xuất: 00H — 1FH

Kiểu truy xuất đữ liệu Trực tiếp

RAM

dãy thanh ghi

Gian tiép Thanh ghi

-> cho phép truy xuất dữ liệu nhanh, lệnh truy xuất đơn giản và ngắn gọn Bảng số liệu dưới đây minh họa địa chỉ của các ô nhớ trong một dãy các

ký hiệu thanh ghi R0 — R7 được gán cho từng ô nhớ trong dãy tích cực

18

Ngày đăng: 02/12/2017, 19:12

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

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w