BÀI T P VI ĐI U KHI N 89C51
Ch ng Iươ
1. V minh h a và đi n đ y đ thông tin các bít trongc thanh ghi có ch c năng
đ c bi t c a 89C51(TMOD, TCON, IE, IP)
i rõ ch c năng c a t ng thanh ghi, ch c năng c a t ng bít trong các thanh ghi
đ c bi t
2. V nh minh h a, phân tích ch c năng các ch đ ho t đ ng c a thanh ghi ế
Timer, phân tích các thanh ghi liên quan
N u mu n vi t ch ng trình tr 25000 chu kỳ máy thì n i dung trong Tmod b ngế ế ươ
bao nhiêu, phân tích ?
3. Cho m t đo n ch ng trình x d li u trong RAM n i nh sau: ươ ư
Org 0000h ;
X0: Mov 50h, # 30 ;
Mov 01h, #
50h
;
Mov a, # 20 ;
Add a, @ r1 ;
X1: Mov @R1, a ;
Inc a ;
Inc r1 ;
Cjne a,# 81,
x1
;
Jmp $ ;
End ;
- Gi i thích ý nghĩa c a t ng câu l nh trong ch ng trình trên và t ng th i gian ươ
th c hi n
- Cho bi t n i dung c a t ng ngăn nh trong RAM n i(ế sau khi th c hi n xong
ch ng trìnhươ ) đ a ch b t đ u t 50h – 60h
4. Cho m t đo n ch ng trình x d li u trong RAM n i nh sau: ươ ư
Org 0000h ;
K0: Mov 45h, # 30 ;
Mov 00h, #
45h
;
Mov a, # 20 ;
Add a, @ R0 ;
K1: Mov @R0, a ;
Inc a ;
Inc R0 ;
Cjne a,# 81,
K1
;
Jmp $ ;
End ;
- Gi i thích ý nghĩa c a t ng câu l nh trong ch ng trình trên và t ng th i gian ươ
th c hi n
- Cho bi t n i dung c a t ng ngăn nh trong RAM n i (sau khi th c hi n xongế
ch ng trình) đ a ch b t đ u t 45h – 60hươ
5. Cho m t đo n ch ng trình x d li u trong RAM n i nh sau: ươ ư
Org 0000h ;
K0: Mov A, # 20 ;
Mov 01h, #
30h
;
K1: Mov @R1, a ;
Inc a ;
Inc R1 ;
Cjne a, # 99,
K1
;
Jmp $ ;
End ;
- Gi i thích ý nghĩa c a t ng câu l nh trong ch ng trình trên và t ng th i gian ươ
th c hi n
- Cho bi t n i dung c a t ng ngăn nh trong RAM n i (sau khi th c hi n xongế
ch ng trình) đ a ch b t đ u t 30h – 75hươ
6. Cho m t đo n ch ng trình x d li u RAM ngo i nh sau: ươ ư
Org 0000h ;
M0: Mov A, # 100 ;
Mov Dptr , # 100h ;
M1: MovX @Dptr, a ;
Inc a ;
Inc Dptr ;
Cjne a, # 200, M1 ;
Jmp $ ;
End ;
- Gi i thích ý nghĩa c a t ng câu l nh và t ng th i gian th c hi n trong ch ng ươ
trình trên?
- Cho bi t n i dung c a t ng ngăn nh RAM ngo i (sau khi th c hi n xongế
ch ng trình) đ a ch b t đ u t 100h – 150hươ
7. Cho m t đo n ch ng trình x d li u RAM ngo i nh sau: ươ ư
Org 0000h ;
Mov A, # 50h ;
Mov Dptr , #
2000h
;
X1: MovX @Dptr, a ;
Inc a ;
Inc Dptr ;
Cjne a, # 96h, X1 ;
Jmp $ ;
End ;
- Gi i thích ý nghĩa c a t ng câu l nh và t ng th i gian th c hi n trong ch ng ươ
trình trên?
- Cho bi t n i dung c a t ng ngăn nh RAM ngo i (sau khi th c hi n xongế
ch ng trình) đ a ch b t đ u t 2000h – 2045hươ
8. Vi t ch ng trình chuy n d li u có giá tr ng d n b t đ u t 10h đ n 40hế ươ ế
o vùng nh c a RAM n i có đ a ch b t đ u t 20h đ n 50h. Sau đó vi t ế ế
ch ng trình chuy n n i dungng nh y sang ng nh m i đ a ch b tươ
đ u t 30h
9. Vi t ch ng trình chuy n giá tr 50h vào b nh trong đ a ch t 30h đ nế ươ ế
45h, sau đó vi t ch ng trình chuy n n i dung vùng nh y sang vùng nh c aế ươ
Ram ngi có đ a ch b t đ u t 3000h.
10. Vi t ch ng trình chuy n d li u có giá tr tăng d n b t đ u t 10h đ n 50hế ươ ế
o vùng nh c a RAM n i có đ a ch b t đ u t 20h đ n 60h. Sau đó vi t ế ế
ch ng trình chuy n n i dungng nh y sang ng nh m i đ a ch b tươ
đ u t 30h
Ch ng IIươ
Vi t ch ng trình chuy n d li u ế ươ AAh vào vùng nh có đ a ch b t đ u t 10h đ n ế15h
Vi t ch ng trình chuy n d li u ế ươ BBh vào vùng nh có đ a ch b t đ u t 20h đ n ế25h
Vi t ch ng trình chuy n d li u ế ươ CCh vào vùng nh có đ a ch b t đ u t 30h đ n ế35h
Vi t ch ng trình chuy n d li u ế ươ DDh vào vùng nh có đ a ch b t đ u t 40h đ n ế45h
Vi t ch ng trình chuy n d li u ế ươ EEh vào vùng nh có đ a ch b t đ u t 50h đ n ế55h
Vi t ch ng trình chuy n d li u ế ươ FFh vào vùng nh có đ a ch b t đ u t 60h đ n ế65h
Vi t ch ng trình chuy n d li u ế ươ FAh vào vùng nh có đ a ch b t đ u t 70h đ n ế75h
Vi t ch ng trình chuy n n i dung vùng nh đ a ch b t đ u t ế ươ 10h đ n ế25h sang vùng
nh m i có đ a ch b t đ u t 30h
Vi t ch ng trình chuy n n i dung vùng nh đ a ch b t đ u t ế ươ 20h đ n ế45h sang vùng
nh m i có đ a ch b t đ u t 50h
Vi t ch ng trình chuy n n i dung vùng nh đ a ch b t đ u t ế ươ 40h đ n ế55h sang vùng
nh m i có đ a ch b t đ u t 70h
Ch ng IIIươ
i 1 K t n i m t nút nh n th ng h đ n P3.1, 8 LED đ n trên p0 1 LED 7 thanh trên P2. Vi tế ư ế ơ ế
ch ng trình đi u khi n các LED hi n th theo yêu c u:ươ
- Khi P3.1 = 0 thì LED 7 thanh hi n th c s t s 9 v s 0 và ng c l i ượ
- Khi P3.1 = 1 thì 8 LED đ n sáng d n t gi a ra và t t d n t ngoài vào 10 l n.ơ
i 2 K t n i m t nút nh n th ng h đ n P3.0, 8 LED đ n trên p0 1 LED 7 thanh trên P2. Vi tế ườ ế ơ ế
ch ng trình đi u khi n các LED hi n th theo yêu c u:ươ
- Khi P3.0 = 0 thì LED 7 thanh hi n th c s t s 0 đ n s 9 và ng c l i ế ượ
- Khi P3.0 = 1 thì 8 LED đ n sáng d n và t t d n ng c chi u 10 l n.ơ ượ
i 3 K t n i 16 Led đ n trên P0 – P1 và 1 công t c th ng h đ n P3.2. Vi t ch ng trình đi u khi nế ơ ườ ế ế ươ
các Led này ho t đ ng theo yêu c u nh sau: ư
- Khi P3.2 = 0 thì 16 Led đ n sáng d n t gi a ra và t t d n t ngoài vàoơ
- Khi P3.2 = 1 thì 16 Led đ n sáng d n t ngoài vào và t t d n t gi a raơ
i 4 t n i 8 Led đ n trên P0 và 1 công t c th ng h đ n P3.1. Vi t ch ng trình đi u khi n các Ledế ơ ườ ế ế ươ
y ho t đ ng theo yêu c u nh sau: ư
- Khi P3.1 = 0 thì 8 Led đ n sáng d n t gi a ra sau đó nh p nháy 10 l nơ
- Khi P3.1 = 1 thì 8 Led đ n sáng d n t trái sang ph i sau đó nh p nháy 10 l nơ
i 5 K t n i Led 7 thanh A chung đ n c ng P0 1 công t c th ng h đ n P2.0 Vi t ch ng trìnhế ế ườ ế ế ươ
đi u khi n Led này ho t đ ng theo yêu c u nh sau: ư
- Khi P2.0 = 0 thì Led hi n th s ch n tăng d n t 0 – 2 – 4 – 6 – 8 và l p l i
- Khi P2.0 = 1 thì Led hi n th s l tăng d n t 1 – 3 – 5 – 7 – 9 và l p l i
i 6 Thi t k m ch, vi t ch ng trình đi u khi n các LED đ n trên c ng P1 LED 7 thanh trên P0ế ế ế ươ ơ
theo l u đ thu t toán nh sauư ư
Start
KT ?
P3.2 = 0
KT ?
P3.3 = 0
Đ
Đ
S
S
End
Đ m gi m t 9ế
÷
0
P1 sáng d n r i t t d n
Chú ý : (ch ng trình hi n th có s d ng hàm ch 0,02 s dùng T1)ươ
i 7
Vi t ch ng trình t o th i gian tr kho ng th i gian 40µs s d ng Timer1 (bi t VĐK s d ng th ch anhế ươ ế
12 MHz)
Vi t ch ng trình t o tín hi u âm thanh trên P0.0 có f = 25KHz s d ng b Timer 0(bi t VĐK s d ngế ươ ế
th ch anh 12 MHz)
Vi t ch ng trình t o th i gian tr kho ng th i gian100µs s d ng Timer1 (bi t VĐK s d ng th chế ươ ế
anh 12 MHz)
Vi t ch ng trình t o tín hi u âm thanh trên P1.1 có f = 10KHz s d ng b Timer 0(bi t VĐK s d ngế ươ ế
th ch anh 12 MHz)
Vi t ch ng trình t o th i gian tr kho ng th i gian 200µs s d ng Timer1 (bi t VĐK s d ng th chế ươ ế
anh 12 MHz)