Nguyễn Hải CĐT.01
MSSV: DTK1151010234
NGÂN HÀNG CÂU HỎI ÔN THI VẤN ĐÁP TRÊN MÁY TÍNH
Môn học: Vi xử lý – Vi điều khiển
DẠNG 1:
Bài 1: thiết kế mạch và điếm số lần nhấn công tác trên p1.0 và
hiển thị lên 1 led7 thanh
Mình thấy nếu chỉ hiển thị 1 led 7 thanh thì dễ và đếm được 9 lần vậy mình làm 2
led7 thanh đếm từ 01->99 lần
Câu 2 như câu 1 chỉ thay chân công tác
ORG 00H
MAIN:
MOV R0,#0
DIEM:
JB P1.0,$ ; nhay tai cho cho p1.0 = 0 thi chuyen di
INC R0
HIENTHI:
; hien thi so thu nhat hang don vi
MOV A,R0
MOV B,#10
DIV AB
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
CLR P2.1
SETB P2.1
Câu 3 và câu 4 giống nhau chỉ thay port2 -> port1.
Hình vẽ:
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
Code:
; biet led sang muc 0 tat muc 1
ORG 00H
MAIN:
CALL SANGTRAI ; neu ban xoay muon xoay trai thi bo
CALL SANGPHAI ; CALL SANGPHAI va nguoc lai
JMP MAIN
; sang lan luot trai qua phai
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
SANGTRAI:
MOV A,#0FFH
CLR C
MOV R0,#9 ;//////////so lan lap lai
LAP:
MOV P2,A ; gan gia tri A=P2
CALL DELAY ; goi thoi gian tre
RLC A ; xoay trai voi co C
DJNZ R0,LAP ; lap lai 9 lan
RET
; sang lan luot phai qua trai
ORG 00H
MAIN:
CALL LEDSANG
JMP MAIN
LEDSANG:
MOV P3,#0FFH
CALL DELAY
MOV P3,#0E7H
CALL DELAY
MOV P3,#0DBH
CALL DELAY
MOV P3,#0BDH
CALL DELAY
MOV P3,#7EH
CALL DELAY
RET
DELAY:
MOV R7,#255
KT1:MOV R6,#255
KT2:DJNZ R6,KT2
DJNZ R7,KT1
RET
END
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
Câu 6:Sử dụng Timer 0 hoặc Timer 1 viết chương trình tạo 2 xung trên 2 chân P1.0
và P1.1 với tần số lần lượt là 2KHz và 4KHz (Sử dụng osillocope để quan sát). Biết
tần số thạch anh là 12MHz
XUNG1:
CPL P1.0
CALL TS2
CPL P1.0
CALL TS2
RET
XUNG2:
CPL P1.1
CALL TS3
CPL P1.1
CALL TS3
RET
TS2:
MOV TMOD,#01H ;CHON TIMER0 CHE DO 1
MOV TL0,#02H ; TL0 = 1AH
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
MOV TH0,#0FFH
SETB TR0 ; khoi dong bo dinh thoi timer0
JNB TF0,$ ;kiem tra bo dinh thoi
CLR TR0 ; tat timer0
CLR TF0 ; xoa co timer0
RET
TS3:
MOV TMOD,#01H
MOV TH0,#0FFH
MOV TL0,#83H
SETB TR0
JNB TF0,$
MSSV: DTK1151010234
CALL TS2
CPL P1.0
CALL TS2
RET
XUNG2:
CPL P1.1
CALL TS3
CPL P1.1
CALL TS3
RET
; chu ky song vuong la:T= 1/f =1/2=0,5ms= 500us
;khoang thoi gian cao ( hoac thap) la: 0,5T= 250Us
; so nhip: n= 250/1= 250nhip
; gia trin can nap la: 65536-250=65286 = 0FF06H
; TH0= 0FFH, TL0=06H
TS2:
MOV TMOD,#01H ;SU DUNG TIMER0 CHE DO 1
MOV TH0,#0FFH
MOV TL0,#06H
SETB TR0 ;khoi dong bo dinh thoi timer0
JNB TF0,$ ; KIEM TRA TF0
CLR TR0 ; TAT TIMER0
CLR TF0 ; XOA CO TF0
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
RET
Với tần số là 1khz thì tương tự làm như trên ta có
TH0=0FEH, TL0=0CH
Viết chương trình giống như bài 6,7
Câu 9:Thiết kế mạch điều khiển và viết chương trìnhhiển thị Led 7 thanh sáng các
số từ 00 đến 99. Biết tần số thạch anh là 12MHz
Bài làm
Hình vẽ:
CODE:
ORG 000H
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
MAIN:
MOV P2,#0FFH ;TAT LED 7 THANH
MOV R0,#100 ;SO LAN LAP
MOV R1,#0
HIENTHI:
; HIEN THI SO HANG CHUC
MOV A,R1
MOV B,#10
DIV AB
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
CLR P2.1
SETB P2.1
; HIEN THI SO HANG DON VI
MOV A,B
MOVC A,@A+DPTR
MAIN:
MOV P2,#0FFH ;TAT LED 7 THANH
MOV R0,#100 ;SO LAN LAP
MOV R1,#99
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
HIENTHI:
; HIEN THI SO HANG CHUC
MOV A,R1
MOV B,#10
DIV AB
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
CLR P2.1
SETB P2.1
; HIEN THI SO HANG DON VI
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
CLR P2.0
SETB P2.0
DEC R1
CALL DELAY
DJNZ R0,HIENTHI
JMP MAIN
; TAO CTRINH TRE
DELAY: MOV R7,#255
MSSV: DTK1151010234
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
CLR P2.1
SETB P2.1
; HIEN THI SO HANG DON VI
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
CLR P2.0
SETB P2.0
INC R1
CALL DELAY
DJNZ R0,HIENTHI
JMP MAIN
; TAO CTRINH TRE
DELAY: MOV R7,#255
KT1: MOV R6,#255
KT2: NOP
NOP
NOP
DJNZ R6,KT2
DJNZ R7,KT1
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
RET
MOV P0,A
CLR P2.0
SETB P2.0
INC R1
INC R1
CALL DELAY
DJNZ R0,HIENTHI
JMP MAIN
; TAO CTRINH TRE
DELAY: MOV R7,#255
KT1: MOV R6,#255
KT2: NOP
NOP
NOP
DJNZ R6,KT2
DJNZ R7,KT1
RET
; TAO MA LED 7 THANH
MALED7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
Nguyễn Hải CĐT.01
MSSV: DTK1151010234
Câu 13:Thiết kế mạch điều khiển và viết chương trìnhhiển thị Led 7 thanh sáng
các số lẻ từ 99 về00 (khoảng thời gian trễ tùy chọn để phù hợp với hiển thị). Biết
tần số thạch anh là 12MHz
Bài làm
Code:
ORG 000H
DELAY: MOV R7,#255
KT1: MOV R6,#255
KT2: NOP
NOP
NOP
DJNZ R6,KT2
DJNZ R7,KT1
RET
; TAO MA LED 7 THANH
MALED7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
Câu 14:14. Thiết kế mạch điều khiển và viết chương trình hiển thị Led 7 thanh
sáng các số chẵn từ 99 về 00. (khoảng thời gian trễ tùy chọn để phù hợp với hiển
thị). Biết tần số thạch anh là 12MHz
Bài làm
Code:
ORG 000H