đề bài:
Thiết kế mạch đồng hồ thời gian thực .
Thiết kế mạch hiển thị thời gian thực trên led 7 vạch : giờ phút giây
Hoạt động nhấn phím : 3 hiện số đếm h phím : 1 phút phím : 2 s phím 4 điều chỉnh giảm với số hiện hành . chuông kêu vào lúc 6h hàng ngày.
Yêu cầu :
Các link kiện 2 led 7 vạch 1 chuông 1 bàn phím 2*2
các anh xem hộ e sao e ấn phím 4 để giảm số hiện hành mà không dc mà nó cứ nhảy k kiểm soát dc là sao?
code:
#include <sfr52.inc>
GIO DATA 30H
PHUT DATA 31H
GIAY DATA 32H
SPEAKER BIT P2.0
ORG 0000H ; Diem nhap sau khi RESET
LJMP MAIN ; Nhay den chuong trinh chinh
ORG 000BH ; Bang vector ngat cua Timer1
LJMP DEMTHOIGIAN
ORG 100H
MAIN:
MOV P3,#0FFH ; chon P3 la cong vao
MOV TMOD,#01H ; CHON TIMER0 CHE DO 1
MOV TL0,#0B0H
MOV TH0,#3CH
MOV IE, #82H ; CHO PHEP NGAT TIMER0
SETB TR0
MOV R7,#20 ; 20*50 uS= 1S . THOI GIAN DEM 1S
MOV GIAY,#0H
MOV PHUT,#0H
MOV GIO,#0H
CLR SPEAKER
AGAIN:
MOV A,GIO
CJNE A,#06H,NEXT ; KIEM TRA 6h
SETB SPEAKER ; BAT LOA
SJMP NEXT5
NEXT: CLR SPEAKER
NEXT5:
JNB P3.0,NEXT2 ; KIEM TRA KEY GIAY
JNB P3.1,NEXT3 ; KIEM TRA KEY PHUT
JNB P3.2,NEXT4 ; KIEM TRA KEY GIO
MOV A,GIAY
LCALL HIENTHILED
SJMP AGAIN ; LAP LAI CHUONG TRINH
NEXT2:
MOV A,GIAY
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC GIAY
MOV A,GIAY
CJNE A,#3CH,AGAIN ; SO SANH GIAY VOI 60
INC PHUT
MOV GIAY,#0H
NEXT3:
MOV A,PHUT
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC PHUT
MOV A,PHUT
CJNE A,#3CH,AGAIN ; SO SANH PHUT VOI 60
INC GIO
MOV PHUT,#0H
NEXT4:
MOV A,GIO
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC GIO
MOV A,GIO
CJNE A,#0DH,AGAIN ; SO SANH GIO VOI 12
MOV GIO,#1H
SJMP AGAIN ; LAP LAI CHUONG TRINH
DEMTHOIGIAN:
CLR TR0 ; TAM DUNG TIMER0
DJNZ R7, NEXT1
MOV R7,#20
INC GIAY ; TANG THEM 1 GIAY
MOV A,GIAY
CJNE A,#3CH,NEXT1 ; SO SANH GIAY VOI 60
INC PHUT
MOV GIAY,#0H
MOV A,PHUT
CJNE A,#3CH,NEXT1 ; SO SANH GIAY VOI 60
INC GIO
MOV PHUT,#0H
MOV A, GIO
CJNE A,#0DH,NEXT1 ; SO SANH GIAY VOI 12
MOV GIO,#01H
NEXT1:
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
RETI
HIENTHILED:
MOV B,#10
DIV AB
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
MOV DPTR,#MALED7
MOV A,B
MOVC A,@A+DPTR
MOV P1,A
RET
DELAY100ms: MOV R2,#200
DL5: MOV R1,#250
DL4: NOP
NOP
DJNZ R1,DL4
DJNZ R2,DL5
RET
MALED7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
Thiết kế mạch đồng hồ thời gian thực .
Thiết kế mạch hiển thị thời gian thực trên led 7 vạch : giờ phút giây
Hoạt động nhấn phím : 3 hiện số đếm h phím : 1 phút phím : 2 s phím 4 điều chỉnh giảm với số hiện hành . chuông kêu vào lúc 6h hàng ngày.
Yêu cầu :
Các link kiện 2 led 7 vạch 1 chuông 1 bàn phím 2*2
các anh xem hộ e sao e ấn phím 4 để giảm số hiện hành mà không dc mà nó cứ nhảy k kiểm soát dc là sao?
code:
#include <sfr52.inc>
GIO DATA 30H
PHUT DATA 31H
GIAY DATA 32H
SPEAKER BIT P2.0
ORG 0000H ; Diem nhap sau khi RESET
LJMP MAIN ; Nhay den chuong trinh chinh
ORG 000BH ; Bang vector ngat cua Timer1
LJMP DEMTHOIGIAN
ORG 100H
MAIN:
MOV P3,#0FFH ; chon P3 la cong vao
MOV TMOD,#01H ; CHON TIMER0 CHE DO 1
MOV TL0,#0B0H
MOV TH0,#3CH
MOV IE, #82H ; CHO PHEP NGAT TIMER0
SETB TR0
MOV R7,#20 ; 20*50 uS= 1S . THOI GIAN DEM 1S
MOV GIAY,#0H
MOV PHUT,#0H
MOV GIO,#0H
CLR SPEAKER
AGAIN:
MOV A,GIO
CJNE A,#06H,NEXT ; KIEM TRA 6h
SETB SPEAKER ; BAT LOA
SJMP NEXT5
NEXT: CLR SPEAKER
NEXT5:
JNB P3.0,NEXT2 ; KIEM TRA KEY GIAY
JNB P3.1,NEXT3 ; KIEM TRA KEY PHUT
JNB P3.2,NEXT4 ; KIEM TRA KEY GIO
MOV A,GIAY
LCALL HIENTHILED
SJMP AGAIN ; LAP LAI CHUONG TRINH
NEXT2:
MOV A,GIAY
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC GIAY
MOV A,GIAY
CJNE A,#3CH,AGAIN ; SO SANH GIAY VOI 60
INC PHUT
MOV GIAY,#0H
NEXT3:
MOV A,PHUT
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC PHUT
MOV A,PHUT
CJNE A,#3CH,AGAIN ; SO SANH PHUT VOI 60
INC GIO
MOV PHUT,#0H
NEXT4:
MOV A,GIO
LCALL HIENTHILED
JB P3.3,AGAIN
; LCALL DELAY5ms ; KIEM TRA KEY AN TRONG 5ms
; JB P3.3,AGAIN
INC GIO
MOV A,GIO
CJNE A,#0DH,AGAIN ; SO SANH GIO VOI 12
MOV GIO,#1H
SJMP AGAIN ; LAP LAI CHUONG TRINH
DEMTHOIGIAN:
CLR TR0 ; TAM DUNG TIMER0
DJNZ R7, NEXT1
MOV R7,#20
INC GIAY ; TANG THEM 1 GIAY
MOV A,GIAY
CJNE A,#3CH,NEXT1 ; SO SANH GIAY VOI 60
INC PHUT
MOV GIAY,#0H
MOV A,PHUT
CJNE A,#3CH,NEXT1 ; SO SANH GIAY VOI 60
INC GIO
MOV PHUT,#0H
MOV A, GIO
CJNE A,#0DH,NEXT1 ; SO SANH GIAY VOI 12
MOV GIO,#01H
NEXT1:
MOV TL0,#0B0H
MOV TH0,#3CH
SETB TR0
RETI
HIENTHILED:
MOV B,#10
DIV AB
MOV DPTR,#MALED7
MOVC A,@A+DPTR
MOV P0,A
MOV DPTR,#MALED7
MOV A,B
MOVC A,@A+DPTR
MOV P1,A
RET
DELAY100ms: MOV R2,#200
DL5: MOV R1,#250
DL4: NOP
NOP
DJNZ R1,DL4
DJNZ R2,DL5
RET
MALED7: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END
Comment