MOV TMOD,#01H SETB TR

Một phần của tài liệu Tap lenh 8951 doc (Trang 106 - 108)

I BỘ NHỚ CHỈ ĐỌC(ROM:Read Only Memory)

MOV TMOD,#01H SETB TR

2. INTERRUPT

MOV TMOD,#01H SETB TR

SETB TR0

SETB EA

SETB ET0 ; cho phep ngat Timer0 SETB EX1 ; cho phep ngat ngoai 1 SETB IT1 ; INT1 tac dong canh MOV DPTR,#2003H

MOV A,#89H ; PA: XUAT, PB:XUAT, PC: NHAPMOVX @DPTR,A MOVX @DPTR,A

MOV R3,#0LOOP: MOV A,30H LOOP: MOV A,30H

CALL BIN2BCDCALL DISPLAY CALL DISPLAY LJMP LOOP T0_ISR: CLR TR0 MOV TH0,#HIGH(-50000) MOV TL0,#LOW(-50000) SETB TR0 CJNE R3,#20,EXIT MOV R3,#0

;phat xung START CLR P3.4 NOP SETB P3.4 EXIT: INC R3 RETI EX1_ISR: ;doc AD CLR P3.2 NOP NOP MOV DATA1,P1 SETB P3.2 RETI DISPLAY: PUSH ACC Trang 106

MOVC A,@A+DPTR

MOV DPTR,#2000H ; xuat ma LED ra LED6 MOVX @DPTR,A

MOV A,#00100000BMOV DPTR,#2001H MOV DPTR,#2001H

MOVX @DPTR,A ; nối cathode cua LED6 xuong GND CALL DELAY

MOV A,#0

MOVX @DPTR,A ; ngắt cathode LED6 xuong GND MOV DPTR,#T7SEG ; tra bang ma LED

MOV A,BCD7MOVC A,@A+DPTR MOVC A,@A+DPTR

MOV DPTR,#2000H ; xuat ma LED ra LED7 MOVX @DPTR,A

MOV A,#01000000BMOV DPTR,#2001H MOV DPTR,#2001H

MOVX @DPTR,A ; nối cathode cua LED7 xuong GND CALL DELAY

MOV A,#0

MOVX @DPTR,A ; ngắt cathode LED7 xuong GND MOV DPTR,#T7SEG ; tra bang ma LED

MOV A,BCD8MOVC A,@A+DPTR MOVC A,@A+DPTR

MOV DPTR,#2000H ; xuat ma LED ra LED8 MOVX @DPTR,A

MOV A,#10000000BMOV DPTR,#2001H MOV DPTR,#2001H

MOVX @DPTR,A ; nối cathode cua LED8 xuong GND CALL DELAY

MOV A,#0

MOVX @DPTR,A ; ngắt cathode LED8 xuong GND POP ACC

RET

;****************************************************************; chuyen so bin 8 bit trong A sang BCD, ; chuyen so bin 8 bit trong A sang BCD,

; ket qua luu trong BCD6 (tram), BCD7 (chuc), BCD8(don vi)

;****************************************************************BIN2BCD: MOV B,#10 BIN2BCD: MOV B,#10 DIV AB MOV BCD8,B MOV B,#10 DIV AB Trang 107

RETDELAY: DELAY: PUSH 7 MOV R7,#200 DJNZ R7,$ POP 7 RET T7SEG: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END

; 1 sec phát dữ liệu (8 bit) ra DAC 1 lần 0-50-100-150-200-250-0-50-... (tuần tự) ; Quan sát độ sáng của LED đầu ra DAC: sáng dần... (adsbygoogle = window.adsbygoogle || []).push({});

; Dữ liệu phát ra PB (8255) chỉ để kiểm tra giá trị xuất ra DAC ;

; DATA_CPU(P0) <-> DATA_8255 ; DECODER_8255 <-> CTRL_8255 ; PA_8255 <-> DATA_DAC

; PB_8255 <-> DATA_LED (de kiem tra du lieu xuat ra AD) ; $INCLUDE(REG51.INC) ORG 8000H LJMP MAIN ORG 800BH LJMP T0ISR ORG 8030H

;KHOI DONG TIMERMAIN: MOV TMOD,#01H MAIN: MOV TMOD,#01H

Một phần của tài liệu Tap lenh 8951 doc (Trang 106 - 108)