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

Các module ngoại vi của MCS-51 doc

28 327 1
Tài liệu đã được kiểm tra trùng lặp

Đ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 28
Dung lượng 478,73 KB

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

Nội dung

Peripherals - MCS 51 5TMOD TCON.

Trang 2

Peripherals - MCS 51 3

Timer

¸ Timer là b đ m nh phân v i ngu n xung clock

̈ T b xung chu n (th ng l y t b on-chip oscillator c a V K)

̈ T tín hi u bên ngoài

¸ ng d ng c a timer

̈ T o các s ki n v i chu k đ nh tr c (timer)

̈ m các s ki n bên ngoài (counter)

¸ 8051 có 2 b timer 16 bits count-up (đ m thu n, giá tr t ng

d n sau m i xung nh p) v i 4 mode ho t đ ng

̈ THn : thanh ghi 8 bit ch a byte cao c a b đ m

̈ TLn : thanh ghi 8 bit ch a byte th p c a b đ m

̈ TRn : bit cho phép timer ho t đ ng

¸ TRn = 0 å timer ng ng ho t đ ng

¸ TRn = 1 å timer đ c phép ho t đ ng

̈ M1, M0 : 2 bit xác đ nh 4 mode c a Timer

̈ TFn : bit c báo b đ m tràn

̈ C/Tn : bit thi t l p Timer hay Counter

¸ C/T = 0 å Timer l y xung clock t on-chip oscillator

¸ C/T = 1 å Timer l y xung clock t bên ngoài qua port Tn

̈ GATE : k t h p v i TRn đ đi u khi n b đ m

¸ GATE = 1 å Timer ch ho t đ ng khi TRn=1 và INTn = HIGH

Trang 3

Peripherals - MCS 51 5

TMOD

TCON

Trang 4

̈ 8 bit cao là thanh ghi THx

̈ 5 bit th p là 5 bit MSB c a thanh ghi TLx (3 bit th p c a thanh ghi TL không s d ng)

¸ TFx = 1 khi n i dung c a b đ m tràn

Trang 5

Peripherals - MCS 51 9

Mode 1

̈ Gi ng mode 0, ngo i tr s d ng b đ m 16 bit, thay vì

13 bit

¸ 8 bit MSB là thanh ghi THx

¸ 8 bit LSB là thanh ghi TLx

Timer1 mode 1

Mode 2

Trang 6

Peripherals - MCS 51 11

̈ n i dung c a các thanh ghi TH1 và TL1 không thay đ i

̈ Timer1 v n có th ho t đ ng bình th ng các mode 0,

1, 2

̈ Timer1 không th s d ng TF1 (vì đ c Timer TH0 s

d ng)

Trang 8

Peripherals - MCS 51 15

c n i dung Timer “On-the-fly”

Ví d 1

¸ Vi t ch ng trình trình t o xung vuông đ u t n s 10KHz t i c ng P1.0 s d ng Timer0 Bi t MCS-51

s d ng t n s fOSC 12MHz

Trang 9

Peripherals - MCS 51 17

¸ T n s = 10KHz:

̈ P1.0 =LOW trong 50us

̈ P1.0 = HIGH trong 50us

¸ fOSC = 12MHz å chu k l nh = 1us

¸ S d ng Timer0 đ m 50us, m i l n tràn s l p bit P1.0

¸ Có th s d ng Timer0 mode 2 (auto-reload) Khi đó c n

Trang 10

Peripherals - MCS 51 19

Ví d 2

¸ Vi t ch ng trình trình t o xung vuông đ u t n s 1KHz t i c ng P1.0 s d ng Timer0 Bi t MCS-51

s d ng t n s fOSC 12MHz

¸ T n s = 1KHz:

̈ P1.0 =LOW trong 500us

̈ P1.0 = HIGH trong 500us

¸ fOSC = 12MHz å chu k l nh = 1us

¸ S d ng Timer0 đ m 500us, m i l n tràn s l p bit P1.0

¸ Không th s d ng Timer0 mode 2 (auto-reload) vì

Trang 11

mov TMOD,#01 ; timer + mode 1

loop: mov TH0,#0xFE

Trang 13

¸ Trong khi đó byte th hai v n đ c ti p t c nh n

̈ i u khi n thông qua thanh ghi SCON

SCON

Trang 14

Peripherals - MCS 51 27

Mode 0 – Thanh ghi d ch 8 bit

¸ Th c ch t là truy n tin n i ti p đ ng b , bán song công (half-duplex) (truy n và nh n không đ ng th i)

̈ RxD: c ng truy n và nh n thông tin

̈ TxD: c ng shift-out clock v i t n s d ch data b ng 1/12

t n s oscillator

̈ Bit đ u tiên là LSB

̈ Vi t m t byte c n truy n đ n SBUF

̈ Thi t l p các bit REN=1 và RI=0 trong thanh ghi SCON

Trang 15

Peripherals - MCS 51 29

̈ T c đ truy n đ c quy t đ nh b i Timer1

̈ Transmit đ c start b i l nh vi t đ n SBUF

̈ Khi nh n đ 8 bit data, c RI s đ c set lên 1 (c n xóa

b i ph n m m)

Trang 16

¸ Transmit đ c start b i l nh vi t đ n SBUF

¸ Khi nh n đ 9 bit data, c RI s đ c set lên 1 (c n xóa b i

ph n m m)

Trang 17

̈ Mode 0: t c đ truy n = 1/12 f osc

̈ Mode 2: 1/32 fOSC(SMOD = 0) ho c 1/64 fOSC(SMOD=1)

¸ Mode 1 và 3 có th s d ng Timer 1 đ thi t l p t c đ truy n tin

̈ T c đ truy n đ c xác đ nh b ng t c đ tràn c a timer 1

̈ SMOD là bit trong thanh ghi PCON

Trang 18

Peripherals - MCS 51 35

(auto-reload) ho t đ ng nh “timer” đ làm b phát t c truy n tin, khi đó t c đ truy n đ c xác đ nh theo công th c

Trang 19

Peripherals - MCS 51 37

Ví d - kh i t o UART

¸ Vi t đo n ch ng trình kh i t o c ng truy n tin n i

ti p ch đ UART – 8bit, s d ng Timer1 đ t o

Trang 21

Peripherals - MCS 51 41

Ví d - truy n ký t ASCCI

c t trong thanh ghi A lên đ ng truy n Tx

Trang 23

¸ Truy n lên Tx mã ký t sau khi đã đ i

¸ Truy n tin theo ch đ UART – 8 bit, t c đ

Trang 24

Peripherals - MCS 51 47

Ng t (Interrupt)

¸ Ng t là tín hi u không đ ng b do hardware ho c software

g i đ n CPU đ yêu c u th c hi n m t thao tác

̈ hardware interrupt: CPU c t gi các thông tin c n thi t sau đó chuy n qua ch ng trình ph c v ng t ( ISR interupt service routine)

̈ software interrupt: do m t l nh đ c thi t k đ c bi t trong t p l nh

Trang 25

Peripherals - MCS 51 49

Timer 2 ch có trong 8052

Thanh ghi IE

Trang 28

Peripherals - MCS 51 55

X lý ng t

¸ Khi ng t x y ra, n u ng t đ c CPU ch p nh n thì ch ng trình chính s b “ng t” và các thao tác sau s đ c ti n hành (b i ph n c ng):

ch ng trình ph c v ng t (ISR: Interrupt Service Routine)

̈ C báo ngu n ng t s b xóa (ngo i tr c báo ng t RI và TI)

¸ ISR c n ph i k t thúc v i m t l nh RETI, l nh này s l y l i giá tr c c a PC t ng n x p

Ngày đăng: 23/03/2014, 02:20

TỪ KHÓA LIÊN QUAN

w