mình mới viết chương trình quét phím hiển thị 2 led 7 doan,nhung chương trình không chạy,mìnnh pot chương trình lên đây nhờ mọi người chỉ giáo dùm
$mod51
org 0h
mov 30h,#00h
mov r6,#00h
mov r7,#00h
Main:
MOV P1,#0FEH ; Ch?n c?t ch?a các phím 7,8,9,÷
JNB P1.4,Sw7
JNB P1.5,Sw8
JNB P1.6,Sw9
JNB P1.7,Swchia
MOV P1,#0FDH ; Ch?n c?t ch?a các phím 4,5,6,X
JNB P1.4,Sw4
JNB P1.5,Sw5
JNB P1.6,Sw6
JNB P1.7,Swnhan
MOV P1,#0FBH ; Ch?n c?t ch?a các phím 1,2,3,-
JNB P1.4,Sw1
JNB P1.5,Sw2
JNB P1.6,Sw3
JNB P1.7,Swtru
MOV P1,#0F7H ; Ch?n c?t ch?a các phím ON/C,0
JNB P1.4,Swon
JNB P1.5,Sw0
JNB P1.6,Swbang
JNB P1.7,Swcong
SJMP Main
;-------------
SW0:
MOV 30H,#0
SJMP Hienthi
;-------------
SW1:
MOV 30H,#1
SJMP Hienthi
;-------------
SW2:
MOV 30H,#2
SJMP Hienthi
;-------------
SW3:
MOV 30H,#3
SJMP Hienthi
;-------------
SW4:
MOV 30H,#4
SJMP Hienthi
;-------------
SW5:
MOV 30H,#5
SJMP Hienthi
;-------------
SW6:
MOV 30H,#6
SJMP Hienthi
;-------------
SW7:
MOV 30H,#7
SJMP Hienthi
;-------------
SW8:
MOV 30H,#8
SJMP Hienthi
;-------------
SW9:
MOV 30H,#9
SJMP Hienthi
;-------------
Swon:
MOV 30H,#10
SJMP Hienthi
;-------------
Swbang:
MOV 30H,#11
SJMP Hienthi
;-------------
Swcong:
MOV 30H,#12
SJMP Hienthi
;-------------
Swtru:
MOV 30H,#13
SJMP Hienthi
;-------------
Swnhan:
MOV 30H,#14
SJMP Hienthi
;-------------
Swchia:
MOV 30H,#15
SJMP Hienthi
;-------------
Hienthi:
cjne a,#9,ht1
ljmp ht
ht1:
cjne a,#8,ht2
ljmp ht
ht2:
cjne a,#7,ht3
ljmp ht
ht3:
cjne a,#6,ht4
ljmp ht
ht4:
cjne a,#5,ht5
ljmp ht
ht5:
cjne a,#4,ht6
ljmp main
ht6:
cjne a,#3,ht7
ljmp ht
ht7:
cjne a,#2,ht8
ljmp ht
ht8:
cjne a,#1,nt
ljmp ht
nt:
MOV A,30H
MOV DPTR,#MALED7
MOVC A,@A+DPTR
mov r6,a
ljmp lap1
ht:
MOV A,30H
MOV DPTR,#MALED7
MOVC A,@A+DPTR
mov r7,a
ljmp lap2
lap1:
mov p2,r6
clr p3.1
call delay
setb p3.1
cjne r7,#9,kt1
ljmp lap2
kt1:
cjne r7,#8,kt2
ljmp lap2
kt2:
cjne r7,#7,kt3
ljmp lap2
kt3:
cjne r7,#6,kt4
ljmp lap2
kt4:
cjne r7,#5,kt5
ljmp lap2
kt5:
cjne r7,#4,kt6
ljmp lap2
kt6:
cjne r7,#3,kt7
ljmp lap2
kt7:
cjne r7,#2,kt8
ljmp lap2
kt8:
cjne r7,#1,thoat
sjmp lap2
thoat:ljmp main
lap2:
mov p2,r7
clr p3.0
call delay
setb p3.0
ljmp lap1
Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
;--------------
Delay:
PUSH 07
PUSH 06
MOV R6,#100
Delay1:
MOV R7,#255
DJNZ R7,$
DJNZ R6,Delay1
POP 06
POP 07
RET
END
nhân tiện cho mình hỏi có bạn nào có chương trình wét phím hiển thị 4 led 7 đoạn không up lên cho mình tham khảo,xin cám ơn sụ hổ trợ của các bạn
$mod51
org 0h
mov 30h,#00h
mov r6,#00h
mov r7,#00h
Main:
MOV P1,#0FEH ; Ch?n c?t ch?a các phím 7,8,9,÷
JNB P1.4,Sw7
JNB P1.5,Sw8
JNB P1.6,Sw9
JNB P1.7,Swchia
MOV P1,#0FDH ; Ch?n c?t ch?a các phím 4,5,6,X
JNB P1.4,Sw4
JNB P1.5,Sw5
JNB P1.6,Sw6
JNB P1.7,Swnhan
MOV P1,#0FBH ; Ch?n c?t ch?a các phím 1,2,3,-
JNB P1.4,Sw1
JNB P1.5,Sw2
JNB P1.6,Sw3
JNB P1.7,Swtru
MOV P1,#0F7H ; Ch?n c?t ch?a các phím ON/C,0
JNB P1.4,Swon
JNB P1.5,Sw0
JNB P1.6,Swbang
JNB P1.7,Swcong
SJMP Main
;-------------
SW0:
MOV 30H,#0
SJMP Hienthi
;-------------
SW1:
MOV 30H,#1
SJMP Hienthi
;-------------
SW2:
MOV 30H,#2
SJMP Hienthi
;-------------
SW3:
MOV 30H,#3
SJMP Hienthi
;-------------
SW4:
MOV 30H,#4
SJMP Hienthi
;-------------
SW5:
MOV 30H,#5
SJMP Hienthi
;-------------
SW6:
MOV 30H,#6
SJMP Hienthi
;-------------
SW7:
MOV 30H,#7
SJMP Hienthi
;-------------
SW8:
MOV 30H,#8
SJMP Hienthi
;-------------
SW9:
MOV 30H,#9
SJMP Hienthi
;-------------
Swon:
MOV 30H,#10
SJMP Hienthi
;-------------
Swbang:
MOV 30H,#11
SJMP Hienthi
;-------------
Swcong:
MOV 30H,#12
SJMP Hienthi
;-------------
Swtru:
MOV 30H,#13
SJMP Hienthi
;-------------
Swnhan:
MOV 30H,#14
SJMP Hienthi
;-------------
Swchia:
MOV 30H,#15
SJMP Hienthi
;-------------
Hienthi:
cjne a,#9,ht1
ljmp ht
ht1:
cjne a,#8,ht2
ljmp ht
ht2:
cjne a,#7,ht3
ljmp ht
ht3:
cjne a,#6,ht4
ljmp ht
ht4:
cjne a,#5,ht5
ljmp ht
ht5:
cjne a,#4,ht6
ljmp main
ht6:
cjne a,#3,ht7
ljmp ht
ht7:
cjne a,#2,ht8
ljmp ht
ht8:
cjne a,#1,nt
ljmp ht
nt:
MOV A,30H
MOV DPTR,#MALED7
MOVC A,@A+DPTR
mov r6,a
ljmp lap1
ht:
MOV A,30H
MOV DPTR,#MALED7
MOVC A,@A+DPTR
mov r7,a
ljmp lap2
lap1:
mov p2,r6
clr p3.1
call delay
setb p3.1
cjne r7,#9,kt1
ljmp lap2
kt1:
cjne r7,#8,kt2
ljmp lap2
kt2:
cjne r7,#7,kt3
ljmp lap2
kt3:
cjne r7,#6,kt4
ljmp lap2
kt4:
cjne r7,#5,kt5
ljmp lap2
kt5:
cjne r7,#4,kt6
ljmp lap2
kt6:
cjne r7,#3,kt7
ljmp lap2
kt7:
cjne r7,#2,kt8
ljmp lap2
kt8:
cjne r7,#1,thoat
sjmp lap2
thoat:ljmp main
lap2:
mov p2,r7
clr p3.0
call delay
setb p3.0
ljmp lap1
Maled7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
;--------------
Delay:
PUSH 07
PUSH 06
MOV R6,#100
Delay1:
MOV R7,#255
DJNZ R7,$
DJNZ R6,Delay1
POP 06
POP 07
RET
END
nhân tiện cho mình hỏi có bạn nào có chương trình wét phím hiển thị 4 led 7 đoạn không up lên cho mình tham khảo,xin cám ơn sụ hổ trợ của các bạn
Comment