Tiểu luận trình bày tổng quan vi xử lý 8051; thiết kế mô phỏng hệ thống đo và điều khiển tốc độ động cơ vùng vi xử lí 8051; có cái nhìn thực tế hơn, sâu sắc hơn về vi điều khiển và cách thức xử lý một bài toán thực tế phức tạp.
Trang 1B THÔNG TIN VÀ TRUY N THÔNGỘ Ề
H C VI N CÔNG NGH B U CHÍNH VI N THÔNGỌ Ệ Ệ Ư Ễ
Môn:K thu t vi x líỹ ậ ử
Trang 2M C L CỤ Ụ
L I NÓI M Đ UỜ Ở Ầ 3
CHƯƠNG 1:T NG QUAN VI X LÝ 8051Ổ Ử 4
I.Ki n trúc ph n c ng AT89C52.ế ầ ứ 4
1.C u hình các chân c a AT89C52ấ ủ 4
2. Mô t các chân.ả 4
3.T ch c b nh ổ ứ ộ ớ 7
4.Các thanh ghi đ c bi t.ặ ệ 9
II.Ho t đ ng c a timerạ ộ ủ 11
1.Các thanh ghi c a b đ nh th i.ủ ộ ị ờ 11
2.Các ch đ c a timer và c trànế ộ ủ ờ 13
III.H th ng ng tệ ố ắ 14
1.Gi i thi u chung.ớ ệ 14
2.T ch c ng t.ổ ứ ắ 15
3.Đ u tiên ng t.ộ ư ắ 15
4.C ch l a ch n tu n t ơ ế ự ọ ầ ự 16
5.Vector ng tắ 17
CHƯƠNG 2: THI T K MÔ PH NG H TH NGẾ Ế Ỏ Ệ Ố 18
I.S đ kh i:ơ ồ ố 18
II.L u đ thu t toánư ồ ậ 20
1.L u đ chư ồ ương trình c a m ch.ủ ạ 20
2.L u đ các m ch ch c năngư ồ ạ ứ 21
3.Code c a m chủ ạ 31
Trang 3L Ờ I NÓI M Đ U Ở Ầ
Trong nh ng năm g n đây v i s phát tri n m nh m c a khoa h c – kĩ thu t.Đ c ữ ầ ớ ự ể ạ ẽ ủ ọ ậ ặ
bi t c a ngành công nghi p ch t o các linh ki n bán d n,các các vi m ch tích h p IC ệ ủ ệ ế ạ ệ ẫ ạ ợ
m t hộ ướng phát tri n m i c a Vi x lý đã hình thành đó là Vi Đi u Khi n.V i nh ng ể ớ ủ ử ề ể ớ ữ
u đi m to l n v t c đ ,đ chính xác cao,kh năng s lý các bìa toán,tính linh ho t nên
các Vi Đi u khi n đã đề ể ượ ức ng d ng trên h u h t các lĩnh v c trong cu c s ng. B ng ụ ầ ế ự ộ ố ằcách áp d ng Vi Đi u Khi n trong s n xu t và x lý,Vi Đi u Khi n đã th c s th ụ ề ể ả ấ ử ề ể ự ự ể
hi n đệ ược các u đi m c a mình so v i các thi t b thông thư ể ủ ớ ế ị ường khác
Vì nh ng ng d ng to l n c a Vi đi u khi n,do đó mà các trữ ứ ụ ớ ủ ề ể ở ường Đ i H c,Cao ạ ọ
Đ ng,TCCN…. V khoa h c – công ngh .Môn vi x lý đã tr thành m t môn h c ẳ ề ọ ệ ử ở ộ ọkhông th thi u để ế ược trong trương trình đào t o.Vi đi u khi n 8051 s cung c p cho ạ ề ể ẽ ấsinh viên nh ng khái nhi n c b n cách th c ho t đ ng c a Vi x lý qua đó sinh viên ữ ệ ơ ả ứ ạ ộ ủ ử
có t duy ,ki n th c n n t ng,đ có th gi i quy t các bài toán ng d ng th c t trong ư ế ứ ề ả ể ể ả ế ứ ụ ự ế
cu c s ng,cũng nh là c s đ h c t p nghiên c u các dòng Vi x lý khác nh ộ ố ư ơ ở ể ọ ậ ứ ử ư
:PIC,AVR…
Qua báo cáo này chúng em có cái nhìn th c t h n,sâu s c h n v vi đi u ự ế ơ ắ ơ ề ề
khi n.chúng em cũng đã hi u thêm nhi u v cách th c x lý m t bài toán th c t ph c ể ể ề ề ứ ử ộ ự ế ứ
t p.ạ
Trang 4
CHƯƠNG 1: T NG QUAN VI X LÝ 8051Ổ Ử
I.Ki n trúc ph n c ng AT89C52:ế ầ ứ
AT89C51 là phiên b n 8051 có ROM trên chip là Flash. Phiên b n này thích h p cho ngả ả ợ ứ
d ng nhanh vì b nh Flash có th xoá trong vài giây. AT89C51 có th đụ ộ ớ ể ể ượ ậc l p trình qua công COM c a máy tính IBM PC.ủ
Trang 52. Mô t các chân ả
Vcc (40):chân c p đi n (5V)ấ ệ
GND (20):chân đ t (0V)ấ
* C ng Port 1 đổ ược ch đ nh là c ng I/O t chân 1 đ n 8. Chúng đỉ ị ổ ừ ế ược s d ng choử ụ
m c đích duy nh t là giao ti p v i thi t b khi c n thi t. Ngoài ra các chân P1.0, P1.1 làụ ấ ế ớ ế ị ầ ế
2 chân liên quan đ n ho t đ ng ng t c a b đ nh th i 2. ế ạ ộ ắ ủ ộ ị ờ
Trong nh ng mô hình thi t k không dùng b nh ngoài, Port 0 là c ng I/O. Còn đ iữ ế ế ộ ớ ổ ố
v i các h th ng l n h n có yêu c u m t s lớ ệ ố ớ ơ ầ ộ ố ượng đáng k b nh ngoài thì Port 0 trể ộ ớ ở thành các đường truy n d li u và 8 bit th p c a bus đ a ch Ngoài ra chân P1.0(T2) làề ữ ệ ấ ủ ị ỉ ngõ vào c a b đ m th i gian 2. P1.1(T2EX) là chân capture/reload c a b đ m th iủ ộ ế ờ ủ ộ ế ờ gian 2
* C ng Port 2 là c ng I/O ho c là đổ ổ ặ ường try n 8 bit cao c a bus đ a ch cho nh ng môể ủ ị ỉ ữ hình thi t k có b nh chế ế ộ ớ ương trình n m ngoài h c có h n 256 byte b nh d li uở ằ ọ ơ ộ ỡ ữ ệ ngoài
* C ng Port 3 ngoài m c đích chung là c ng I/O, nh ng chân này còn kiêm luôn nhi uổ ụ ổ ữ ề
ch c năng khác liên quan đ n đ c tính đăc bi t c a vi đi u khi n.ứ ế ặ ệ ủ ề ể
Bit Tên Đ a ch bitị ỉ Ch c năng th haiứ ứ
P3.0 RXD B0H Nh n d li u cho c ng n i ti pậ ữ ệ ổ ố ế
P3.1 TXD B1H Truy n d li u cho c ng n i ti pề ữ ệ ổ ố ế
Trang 6Nh ng ch c năng th hai c a chân c ng Port 3ữ ứ ứ ủ ổ
/PSEN là m t tín hi u đi u khi n cho phép b nh chộ ệ ề ể ộ ớ ương trình bên ngoài ho tạ
đ ng. Nó thộ ường được k t n i đ n chân /OE (Output Enable) c a /EPROM đế ố ế ủ ể
đ c các byte chọ ương trình. Xung tín hi u /PSEN luôn m c th p trong su tệ ở ứ ấ ố
ph m vi quá trình c a m t l nh. Còn khi thi hành chạ ủ ộ ệ ương trình t ROM ngayừ ở bên trong chip, chân /PSEN luôn m c cao.ở ứ
Tín hi u ALE có ch c năng đ c bi t tách byte đ a ch th p và bus d li u khiệ ứ ặ ệ ị ỉ ấ ữ ệ
c ng P0 đổ ượ ử ục s d ng c ch đ tu n t hay còn g i là ch đ d n kênh, nghĩaở ế ộ ầ ự ọ ế ộ ồ
là s d ng cùng m t đử ụ ộ ường truy n cho các bit d li u và byte th p c a bus đ aề ữ ệ ấ ủ ị chỉ
Khi chân /EA m c cao, vi đi u khi n đở ứ ề ể ược th c hi n các chự ệ ương trình l uư
tr vùng nh th p h n 8Kbyte ROM bên trong chip. Còn /EA m c th p chữ ỏ ớ ấ ơ ở ứ ấ ỉ
có nh ng chữ ương trình l u b nh ngoài m i đư ở ộ ớ ớ ược th c hi nự ệ
AT89S52có m t b dao đ ng n i bên trong chip ho t đ ng theo t n s c a m tộ ộ ộ ộ ạ ộ ầ ố ủ ộ dao đ ng th ch anh n m bên ngoài. T n s thông d ng c a th ch anh là 11,0592ộ ạ ằ ầ ố ụ ủ ạ MHZ
RST (9):ngõ vào reset m c cao trên chân này trong 2 chu kì máy.ở ứ
Trang 7Không có yêu c u nào v chu kì nghi n v c a tín hi u xung Clock bên ngoài doầ ề ệ ụ ủ ệ tín hi u này ph i qua m ch flipflop chia hai trệ ả ạ ước khi t i m ch t o xung bên trong.Tuyớ ạ ạ nhiên các chi ti t kĩ thu t v th i gian m c th p và th i gian m c cao,đi n áp c cế ậ ề ờ ứ ấ ờ ứ ệ ự
đ i ,đi n áp c c ti u c n đạ ệ ự ể ầ ược xem xét
Không gian b nh c a b vi đi u khi n độ ớ ủ ộ ề ể ược phân chia thành 2 ph n: b nh dầ ộ ớ ữ
li u và b nh chệ ộ ớ ương trình. H u h t các IC MCS đ u có b nh chầ ế ề ộ ớ ương trình n m bênằ trong chip, tuy nhiên cũng có th m r ng dung lể ở ộ ượng lên đ n 64K b nh chế ộ ớ ương trình
và 64K d li u b ng cách s d ng m t s b nh ngoài.ữ ệ ằ ử ụ ộ ố ộ ớ
Bên trong chip vi đi u khi n AT89C51 có 128 byte b nh d li u. Không gian bề ể ộ ớ ữ ệ ộ
nh bên trong đớ ược chia thành các bank thanh ghi, RAM đ a ch theo bit, RAM dùngị ỉ chung và các thanh ghi ch c năng đ c bi t.ứ ặ ệ
F5
F4
F3
F2
F1
F0B
7
E6
E5
E4
E3
E2
E1
E0ACC
7
D6
D5
D4
D3
D2
D1
D0PSW
C
D
TH2
Trang 8B9
B8IP
7 C
7 B
7 A
7 9
78 B
0
B7
B6
B5
B4
B3
B2
B1
B0P3
AF
C
AB
AA
A9
A8IE
6 C
6 B
6 A
6 9
6 8
A0
A7
A6
A5
A4
A3
A2
A1
A0P2
5
6 4
6 3
6 2
6 1
6 0
99
5 C
5 B
5 A
5 9
5 8
98 9F 9
E
9D
9C
9B
9A
99 98 S
CON2
A
57 5
6
5 5
5 4
5 3
5 2
4 B
4 A
4 9
4 8
8D
TH1
5
4 4
4 3
4 2
4 1
4 0
8C
TH0
Trang 927 3F 3E 3
D
3 C
3 B
3 A
3 9
3 8
8B
TL1
5
3 4
3 3
3 2
3 1
3 0
8A
TL0
D
2 C
2 B
2 A
2 9
2 8
5
2 4
2 3
2 2
2 1
2 0
89
TMOD
D
1 C
1 B
1 A
1 9
1 8
22 17 16 15 14 13 12 11 10 88 8F 8
E
8D
8C
8B
8A
89 88 T
CON
D
0 C
0 B
0 A
0 9
0 8
PCON
5
0 4
0 3
0 2
0 1
0 0
85
84
83
82
81 80P0
Trang 104.Các thanh ghi đ c bi t ặ ệ
AT89C52 có các thanh ghi R0 đ n R7 và 21 thanh ghi ch c năng đ c bi t SFRế ứ ặ ệ (Special Function Register) n m ph n trên c a RAM t đ a ch 80H đ n FFH.ằ ở ầ ủ ừ ị ỉ ế
Thanh ghi tr ng thái PSWạ (program stastus word):
Bit Ký hi uệ Đ a chị ỉ Mô t bitả
PSW.0 P D0H C ki m tra ch n lờ ể ẵ ẻ
các phép toán nhân và chia. Thanh ghi B xem nh là thanh ghi đ m dùng chung. Nó cóư ệ
đ a ch t F0 đ n F7.ị ỉ ừ ế
đang hi n di n t i đ nh ngăn x p. Ngăn x p ho t đ ng theo phệ ệ ạ ỉ ế ế ạ ộ ương th c LIFO. Ho tứ ạ
Trang 11đ ng đ y vào ngăn x p làm tăng SP lên trộ ẩ ế ước khi ghi d li u vào. Ho t đ ng l y raữ ệ ạ ộ ấ
kh i ngăn x p s đ c d li u ra r I gi m SP.ỏ ế ẽ ọ ữ ệ ồ ả
nh chớ ương trình và b nh d li u ngoài, đó là thanh ghi 16 bot có 8 bit th p đ a chộ ớ ữ ệ ấ ở ị ỉ 82H (DPL) và 8 bit cao đ a ch 83h (DPL)ở ị ỉ
đ a ch 90H, P2 t i đ a ch A0H, P3 t I đ a ch B0H. T t c các c ng đ u có đ a ch bitị ỉ ạ ị ỉ ạ ị ỉ ấ ả ổ ề ị ỉ nên cung c p kh năng giao ti p v i bên ngoài r t m nhấ ả ế ớ ấ ạ
đ nh các kho ng th i gian hay đ m các s ki n. Timer0 có đ a ch 8AH (TL0: bit th p)ị ả ờ ế ự ệ ị ỉ ấ
và 8CH(TH0: byte cao). Timer1 có đ a ch 8BH (TL1: bit th p) và 8DH(TH1: byte cao).ị ỉ ấ Timer2 có đ a ch CCH (TL2: bit th p) và 8CD(TH2: byte cao). Ho t đ ng c a các bị ỉ ấ ạ ộ ủ ộ
đ m th i gian đế ờ ược thi t l p b i các thanh ghi TMOD,TCON, T2CON. Ngoài ra cácế ậ ở thanh ghi RCAP2L, RCAP2H đượ ử ục s d ng trong ch đ t n p c a 16 bitb đ nh th iế ộ ự ạ ủ ộ ị ờ
2.
v i các thi t b n i ti p nh moderm ho c đ giao ti p v i các IC khác s d ng giaoớ ế ị ố ế ư ặ ể ế ớ ử ụ
ti p n i ti p. B đ m d li u n i ti p SBUF l u gi c d li u truy n đi và d li uế ố ế ộ ệ ữ ệ ố ế ư ữ ả ữ ệ ề ữ ệ
nh n đậ ược
ng t b c m sau khi h th ng kh i đ ng l i và đ đắ ị ấ ệ ố ở ộ ạ ể ược b t b ng cách ghi vào thanh ghiậ ằ cho phep ng t IE. M c u tiên đắ ứ ư ược thi t l p thông qua thanh ghi u tiên IP.ế ậ ư
nhi u bit đi u khi n đ m b o các ch c năng khác nhau.ề ề ể ả ả ứ
II.Ho t đ ng c a timer.ạ ộ ủ
Đ truy c p b đ nh th i ta s d ng 11 thanh ghi FSR:ể ậ ộ ị ờ ử ụ
SFR M c đíchụ Đ a chị ỉ Đ nh đ a ch bitị ị ỉ
Trang 12TL0 Byte th p c a b đ nh th i 0ấ ủ ộ ị ờ 8AH Không
TL1 Byte th p c a b đinh th i 1ấ ủ ộ ờ 8BH Không
TH0 Byte cao c a b đinh th i 0ủ ộ ờ 8CH Không
TH1 Byte cao c a b đinh th i 1ủ ộ ờ 8DH Không
T2CON Đi u khi n b đ nh th i 2ề ể ộ ị ờ C8H Có
RCAP2L Nh n byte th p c a b đ nh th i 2ậ ấ ủ ộ ị ờ CAH Không
RCAP2H Nh n byte cao c a b đ nh th i 2ậ ủ ộ ị ờ CBH Không
TL2 Byte th p c a b đinh th i 2ấ ủ ộ ờ CCH Không
TH2 Byte cao c a b đ nh th i 2ủ ộ ị ờ CDH Không
Thanh ghi TMOD (Timer Moder Register):
Bit Tên Timer Ch c năngứ
7 GATE 1 Khi bit Gate=1 và ‘INT1 cao thì Timer 1 m i ho t đ ngớ ạ ộ
Trang 13Thanh ghi TMOD được chia thành 2 nhóm 4 bit dùng đ truy c p các ch đ ho tể ậ ế ộ ạ
đ ng c a Timer0 và Timer1.ộ ủ
Các ch đ ho t đ ng c a b đ nh th i:ế ộ ạ ộ ủ ộ ị ờ
+ M1=0, M0=0: Mode 0 (Ch đ đ nh th i 13bit)ế ộ ị ờ+ M1=0, M0=1: Mode 1 (Ch đ đ nh th i 16 bit)ế ộ ị ờ+ M1=1, M0=0: Mode 2 (Ch đ t đ ng n p 8 bit)ế ộ ự ộ ạ+ M1=1, M0=1: Mode 3 (Ch đô đ nh th i chia x ).ế ị ờ ẻ
Thanh ghi đi u khi n b đ nh th i TCON (Timer control register):ề ể ộ ị ờ
TCON.6 TR1 8EH Bit đi u khi n ho t đ ng c a b đ nh th i 1ề ể ạ ộ ủ ộ ị ờTCON.5 TF0 8DH C tràn b đ nh th i 0ờ ộ ị ờ
TCON.4 TR0 8CH Bit đi u khi n ho t đ ng c a b đ nh th i 1ề ể ạ ộ ủ ộ ị ờ
Ch đ đ nh th i 13 bit (mode 0):ế ộ ị ờ
Mode 0 ít được s d ng trong các h th ng m i. Byte cao c a b đ nh th i THxử ụ ệ ố ớ ủ ộ ị ờ
được k t h p v I 5 bit có tr ng s nh nh t v a byte th p c a b đ nh th i TLx đ t oế ợ ớ ọ ố ỏ ấ ủ ấ ủ ộ ị ờ ể ạ nên b đ nh th i 13 bit. #bit còn l i c a TLx không độ ị ờ ạ ủ ượ ử ục s d ng
Trang 14 Ch đ đ nh th i 16 bit (mode1):ế ộ ị ờ
Trong Mode 1, tín hi u đ ng h đệ ồ ồ ược đ a vào c 2 byte cao và th p c a b đ như ả ấ ủ ộ ị
th i (TLx,THx). Khi nh n xung đ ng h , b đ nh th i b t đ u đ m lên t 0000H. Hi nờ ậ ồ ồ ộ ị ờ ắ ầ ế ừ ệ
tượng tràn x y ra khi có chuy n ti p t FFFFH v 0000H và làm b t c tràn.ả ể ế ừ ề ậ ờ
Ch đ đ nh th i 8 bít t đ ng n p l i (mode 2):ế ộ ị ờ ự ộ ạ ạ
Trong Mode 2, thanh ghi đ nh th i TLx ho t đ ng nh là b d nh th i 8 bitị ờ ạ ộ ư ộ ị ờ trong khi byte cao c a b d nh th i l u giá tr n p l i. Khi quá trình đ m TLx bủ ộ ị ờ ư ị ạ ạ ế ở ị tràn t FFH v 00H thì không nh ng c tràn b t lên mà giá tr t ng THx đừ ề ữ ờ ậ ị ổ ược n pạ vào TLx, và ti p t c quá trình đ m t giá tr này t i khi x y ra s chuy n đ i ti pế ụ ế ừ ị ớ ả ự ể ổ ế theo t FFH v 00H.ừ ề
Ch đ đ nh th i phân chia (mode 3):ế ộ ị ờ
Timer 0 trong mode 3 được chia thành 2 b đ nh th i 8b bit. TL0 và TH0 ho tộ ị ờ ạ
đ ng nh 2 b đ nh th i riêng r và s d ng các c tràn tộ ư ộ ị ờ ẽ ử ụ ờ ương ng là TF0,TF1.ứ Timer 1 trong mode 3 ng ng làm vi c nh ng có th ho t đ ng b ng cách chuy n nóừ ệ ư ể ạ ộ ằ ể sang m t trong mode khác. Đi u h n ch duy nh t là c tràn c a Timer mode khôngộ ề ạ ế ấ ờ ủ
b nh hị ả ưởng khi x y ra tràn Timer1, b i vì nó đả ở ược n i đ n TH0ố ế
Trang 15III.H th ng ng t.ệ ố ắ
Ng t đóng vai trò trong vi c thi t k và th c hi n các ng d ng c a vi đi u khi n.ắ ệ ế ế ự ệ ứ ụ ủ ề ể Chúng cho phép h th ng đáp ng m t cách không đ ng b đ n m t s ki n và gi iệ ố ứ ộ ồ ộ ế ộ ự ệ ả quy t s ki n đó khi chế ự ệ ương trình khác đó khi chương trình khác đang ch y.ạ
Chương trình gi i quy t yêu c u c a m t ng t g i là th t c ph c v ng t ISR.ả ế ầ ủ ộ ắ ọ ủ ụ ụ ụ ắ ISR dùng đ đáp ng l i m t ng t và thể ứ ạ ộ ắ ường là th c hi n các ho t đ ng vào ra đ i v iự ệ ạ ộ ố ớ
m t thi t b vào ra n i v i vi đi u khi n. Khi x y ra m t ng t chộ ế ị ố ớ ề ể ả ộ ắ ương trình chính t mạ
d ng công vi c đang thi hành và r nhánh sang ISR, ti p theo ISR ho t đ ng đ đáp ngừ ệ ẽ ế ạ ộ ể ứ yêu c u c a ng t và nó s k t thúc b ng l nh quay tr v , chầ ủ ắ ẽ ế ằ ệ ở ề ương trình chính s ho tẽ ạ đông ti p t u ngay sau đi m r nhánh. Chế ạ ể ẽ ương trình chính th c hi n m c c b n cònự ệ ở ứ ơ ả ISR th c hi n m c ng t.ự ệ ở ứ ắ
T i chớ ương trình ph c v ng t tr v chụ ụ ắ ở ề ương trình chính n i x y raơ ả
ng tắ
C ch th c hi n ng tơ ế ự ệ ắ
AT89C51 có t t c 6 nguyên nhân ng t: hai ng t do bên ngoài, ba ng t do b đ nhấ ả ắ ắ ắ ộ ị
th i, m t ng t do ờ ộ ắ port n i ti p. T t c các ng t đ u b c m sau khi h th ng kh i đ ngố ế ấ ả ắ ề ị ấ ệ ố ở ộ (reset) sau đó chúng được cho phép b ng ph n m m.ằ ầ ề
Trang 163.Đ u tiên ng t ộ ư ắ
M i m t ngu n ng t có th đỗ ộ ồ ắ ể ượ ậc l p trình đ đ t để ạ ươc m t trong 2 m c u tiênộ ứ ư thông qua thanh ghi ch c năng đ c bi t có đ a ch bit IP t I 0B8H. Thanh ghi IP b xoáứ ặ ệ ị ỉ ạ ị sau khi h th ng kh i đ ng đ đ t các ng t m c u tiên th p h n so v i m c đ nh.ệ ố ở ộ ể ặ ắ ở ứ ư ấ ơ ớ ặ ị Trong AT89C51 t n t I 2 m c u tiên. Khi m t u ng t có m c u tiên cao xu t hi nồ ạ ứ ư ộ ư ắ ứ ư ấ ệ trong m t ISR có m c u tiên th p đang thi hành thì ISR đó s b ng ng l i, ISR có m cộ ứ ư ấ ẽ ị ừ ạ ứ
u tiên cao h n s đ c th c hi n. N u 2 ng t có m c u tiên khác nhau x y ra cùng
m t lúc thì ng t có m c u tiên cao h n s độ ắ ứ ư ơ ẽ ược ph c trụ ước:
Thanh ghi IE
Các bít trong thanh ghi IP (thanh ghi đi u khi n u tiên ng t):ề ể ư ắ
Bit Ký hi uệ Đ a ch bitị ỉ Mô tả
IP.5 PY2 BDH Ưu tiên cho ng t Timer 2ắ
IP.4 PS BCH Ưu tiên cho ng t c ng n I ti pắ ổ ố ế
IP.3 PT1 BBH Ưu tiên cho ng t Timer 1ắ
IP.2 PX1 BAH Ưu tiên cho ng t ngoài 1ắ
IP.1 PT0 B9H Ưu tiên cho ng t Timer 0ắ
Trang 17IP.0 PX0 B8H Ưu tiên cho ng t ngoài 0ắ
N u có 2 ng t cùng m c u tiên x y ra đ ng th i, m t c ch ch n l a theo thế ắ ứ ư ả ồ ờ ộ ơ ế ọ ự ứ
t có s n s xác đ nh ng t nào đự ẵ ẽ ị ắ ược đáp ng trứ ước. Vi c ch n l a theo th t là:ệ ọ ự ứ ự External 0, Timer 0, External 1, Timer 1, Serial Port, Timer 2
Quá trình x lý ng t:ử ắ
Khi m t ng t xu t hi n và nó độ ắ ấ ệ ược CPU ch p nh n, chấ ậ ương trình chính bị
ng ng, các ho t đ ng ti p theo x y ra nh sau:ừ ạ ộ ế ả ư
+ Th c hi n xong l nh hi n hành đóự ệ ệ ệ+ B đ m chộ ế ương trình PC đượ ưc l u vào trong Stack+ L u gi tình tr ng c a ng t hi n t iư ữ ạ ủ ắ ệ ạ
+ Các ngu n ng t đồ ắ ược gi t i m c c a ng t hi n t iữ ạ ứ ủ ắ ệ ạ+ Nap vào PC đ a ch Vector c a ISRị ỉ ủ
+ ISR th c hiênựISR ho t đ ng đ đáp ng l i yêu c u ng t. ISR k t thúc b ng l nh RETI có tácạ ộ ể ứ ạ ầ ắ ế ằ ệ
d ng quay tr v chụ ở ề ương trình chính, l nh này s n p l i giá tr cũ c a PC trong ngănệ ẽ ạ ạ ị ủ
x p và khôi ph c tình tr ng c a ng t cũ. Vi c th c hi n chế ụ ạ ủ ắ ệ ự ệ ương trình chính ti p t cế ụ
di n ra t i n i nó t m d ng.ễ ạ ơ ạ ừ
Khi m t ng t độ ắ ược ch p nh n thì giá tr n p vào PC g i là vect ng t. Nó chínhấ ậ ị ạ ọ ơ ắ
là đ a ch b t đ u c a ISR tị ỉ ắ ầ ủ ương ng v i ng t đứ ớ ắ ược ch p nh n.ấ ậ
Trang 18 Interrupt là hàm ng t ph i phân bi t v i hàm khác ắ ả ệ ớ
Ngu n ng t t 05 theo b ng vecto ng tồ ắ ừ ả ắ
Trang 19I.S đ kh i:ơ ồ ố
Xung đi n ệ
S đ kh i c a m ch.ơ ồ ố ủ ạ
Ch c năng t ng thành ph n trong s đ kh i:ứ ừ ầ ơ ồ ố
Đ ng c :đ ng c đi n độ ơ ộ ơ ệ ượ ử ục s d ng trong m ch là đ ng c đi n m t chi u có ạ ộ ơ ệ ộ ề
đi n áp đ t vào t i đa 24V.Trên tr c đ ng c có g n m t đĩa tròn có khoét các l ệ ặ ố ụ ộ ơ ắ ộ ỗtròn đ cho ánh sáng t led phát quang có th đi qua t i con m t thu quang đ có thể ừ ể ớ ắ ể ể
đo đượ ốc t c đ đ ng c đây chúng ta dùng đ ng c DC 12V.ộ ộ ơ ở ộ ơ
Encoder :dùng đ đo s vòng quay c a đ ng c và phát hi n chi u quoay c a đ ng ể ố ủ ộ ơ ệ ề ủ ộ
c encoder nó s đo t c đ đ ng c thông qua s liên l c, m t liên l c c a led phát ơ ẽ ố ộ ộ ơ ự ạ ấ ạ ủquang và b ph n thu quang r i chuy n thành các xung đi n áp vuông g i t i chân ộ ậ ồ ể ệ ử ớ
ng t c a Vi X Lý.ắ ủ ử
Vi X Lý:nh n các tín hi u t encoder thông qua c ch ng t t đó căn c vào s ử ậ ệ ừ ơ ế ắ ừ ứ ốxung do đó nó s tính toán x lý đ :ẽ ử ể
Đ a ra t c đ đ ng c hi n th lên led 7 thanh.ư ố ộ ộ ơ ể ị
Đi u ch đ r ng xung PWM đ đi u khi n t c đ đ ng c cho phù h p v i ề ế ộ ộ ể ề ể ố ộ ộ ơ ợ ớ
Trang 20 Kh i vi x lý là trái tim là kh i óc c a h th ng là ph n quan tr ng nh t đi u ố ử ố ủ ệ ố ầ ọ ấ ềkhi n m i ho t đ ng c a m ch. ể ọ ạ ộ ủ ạ
Kh i đi u khi n:đi u khi n hố ề ể ề ể ướng c a đ ng c đi n m t chi u.trong bài toán này ủ ộ ơ ệ ộ ềchúng em x d ng m ch c u H đ đi u khi n hử ụ ạ ầ ể ề ể ướng c a đ ng c ủ ộ ơ
Kh i hi n th :nh n s li u v t c đ đ ng c t vi x lý r i hi n th lên các led 7 ố ể ị ậ ố ệ ề ố ộ ộ ơ ừ ử ồ ể ịthanh theo s đi u khi n c a Vi đi u khi n.ự ề ể ủ ề ể
Kh i ngu n n áp 5V:có ch c năng cung c p đi n áp n đ nh cho các kh i trong ố ồ ổ ứ ấ ệ ổ ị ố
m ch.C th trong m ch ta s d ng hai ngu n riêng bi t:ạ ụ ể ạ ử ụ ồ ệ
Ngu n 5V DC dùng đ nuôi các IC trong m ch ho t đ ng t o ra các tín hi u xu tồ ể ạ ạ ộ ạ ệ ấ
ra chu n TTL,tránh các trẩ ường h p nhi u đi n áp không đúng v i đi n áp c p ợ ễ ệ ớ ệ ấcho IC => tránh IC không ho t đ ng,h ng hóc,ch p cháy.ạ ộ ỏ ậ
Ngu n 12V DC dùng đ cung c p cho đ ng c m t chi u DC (trong đ án này sồ ể ấ ộ ơ ộ ề ồ ử
d ng đ ng c m t chi u DC 12V.)ụ ộ ơ ộ ề