Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 65 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
65
Dung lượng
162,64 KB
Nội dung
00 99 DÙNG NGẮT T0(COI LẠI BẢNG MÃ NẾU SAI) INCLUDE REG_51.PDF CNT EQU 127 LED7 EQU 126 LED8 EQU 125 LJMP MAIN ORG 000BH LJMP QL MAIN: MOV TMOD,#01H MOV TH0,#HIGH(-1000) MOV TL0,#LOW(-1000) SETB EA SETB ET0 SETB TR0 MOV CNT,#0 MOV P2,#0 BEGIN: CALL DOISO CALL DELAY INC CNT MOV A,CNT CJNE A,#100,BEGIN LJMP BEGIN DOISO: PUSH ACC PUSH B MOV B,#10 DIV AB MOV DPTR,#BANG MOVC A,@A+DPTR MOV LED7,A MOV A,B MOVC A,@A+DPTR MOV LED8,A POP B POP ACC RET DELAY: PUSH 07 PUSH 06 MOV R1,#100 X1: MOV R6,#250 DJNZ R6,$ DJNZ R1,X1 POP 06 POP 07 RET QL: MOV TH0,#HIGH(-1000) MOV TL0,#LOW(-1000) MOV P1,LED7 SETB P2.6 CALL DL CLR P2.6 MOV P1,LED8 SETB P2.7 CALL DL CLR P2.7 RETI DL: MOV R7,#200 DJNZ R7,$ RET BANG: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END 20 87 DÙNG T0M1,NGẮT T1M2 INCLUDE REG_51.PDF CNT EQU 127 LED6 EQU 126 LED5 EQU 125 POS EQU 124 LJMP MAIN ORG 000BH LJMP QL MAIN: MOV P2,#00H MOV CNT,#20 MOV POS,#10H MOV R0,#LED5 MOV TMOD,#21H MOV TH1,#HIGH(-5000) MOV TL1,#LOW(-5000) SETB EA SETB ET1 SETB TR1 BEGIN: CALL DOISO CALL DL_350MS INC CNT MOV A,CNT CJNE A,#88,BEGIN MOV CNT,#20 LJMP BEGIN DOISO: MOV A,CNT MOV B,#10 DIV AB MOV LED5,A MOV LED6,B DL_350MS: PUSH 07 PUSH 06 MOV TMOD,#21H MOV TH0,#HIGH(-1000) MOV TL0,#LOW(-1000) MOV R7,#3500 X2: MOV R6,#1000 X1: CLR TF0 SETB TR0 JNB TF0,$ DJNZ R6,X1 DJNZ R7,X2 POP 07 POP 06 RET QL: PUSH ACC MOV P2,#00H MOV DPTR,#LED_7S MOV TH1,#HIGH(-5000) MOV TL1,#LOW(-5000) MOV A,@R0 MOVC A,@A+DPTR MOV P1,A MOV A,POS MOV P2,A RL A MOV POS,A INC R0 MOV A,R0 CJNE A,#127,EXIT MOV R0,#LED5 MOV POS,#10H EXIT: POP ACC RETI LED_7S: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END VIẾT CHƯƠNG TRÌNH THỰC HIỆN. NHẤN SW1 HIỂN THỊ CHỮ “good” NHẤN SW2 HIỂN THỊ CHỮ “HEPL” DÙNG NGẮT TIMER 1 ĐỂ QUÉT LED,CHU KÌ QUÉT 4MS INCLUDE REG_51.PDF LED1 EQU 127 LED2 EQU 126 LED3 EQU 125 LED4 EQU 124 LJMP MAIN ORG 001BH LJMP QL SW1 BIT P1.0 SW2 BIT P1.1 MAIN: MOV TMOD,#11H MOV TH1,#HIGH(-8000) MOV TL1,#LOW(-8000) SETB EA SETB ET1 SETB TR1 MOV P3,#0FFH BEGIN: JNB SW1,good JNB SW2,HELP LJMP BEGIN good: MOV LED1,#90H MOV LED2,#0A6H MOV LED3,#0A6H MOV LED4,#0A4H HELP: MOV LED1,#8CH MOV LED2,#83H MOV LED3,#0C7H MOV LED4,#89H QL: MOV TH1,#HIGH(-8000) MOV TL1,#LOW(-8000) MOV P2,LED1 CLR P3.2 CALL DL SETB P3.2 MOV P2,LED2 CLR P3.3 CALL DL SETB P3.3 MOV P2,LED3 CLR P3.4 CALL DL SETB P3.4 MOV P2,LED4 CLR P3.5 CALL DL SETB P3.5 RETI DL: PUSH 05 MOV R5,#200 DJNZ R5,$ POP 05 RET END HIỂN THỊ START-STOP INCLUDE REG_51.PDF SW1 BIT P3.2 SW2 BIT P3.3 POS EQU 127 MOV R0,#00H MOV POS,#01H MOV P2,#00H MAIN: JNB SW1,START JNB SW2,HELP LJMP MAIN START: MOV P2,#00H MOV DPTR,#BANG1 JNB SW1,$ JB SW1,HIENTHI HELP: MOV P2,#00H MOV DPTR,#BANG2 JNB SW2,$ JB SW2,HIENTHI DELAY: PUSH 07 PUSH 06 MOV TMOD,#02H MOV TH0,#HIGH(-100) MOV TL0,#LOW(-100) MOV R7,#5 X1: MOV R6,#10 X2: CLR TF0 SETB TR0 JNB TF0,$ DJNZ R6,X1 DJNZ R7,X2 POP 07 POP 06 RET HIENTHI: MOV P2,#00H MOV A,R0 MOVC A,@A+DPTR MOV P1,A MOV A,POS MOV P2,A RL A ;MOV POS,A INC R0 CALL DELAY CJNE R0,#5,HIENTHI MOV POS,A MOV R0,#0 MOV POS,#01H JNB SW1,START JNB SW2,HELP LJMP HIENTHI BANG1: DB 6DH,78H,5CH,50H,78H BANG2: DB 76H,79H,38H,73H END DỊCH 1 LED SÁNG D1 D8 VÀ NGƯỢC LẠI, SỐ LÀN CÓ THỂ THAY ĐỔI(CAO PHI) INCLUDE REG_51.PDF MOV R4,#5 ;SO LAN QUAY THUAN MOV R5,#8 ;SO LED CHAY MOV R1,#10 ;SO LAN QUAY NGUOC MOV R0,#3 ;SO LAN LAP LAI X2: MOV A,#01H X1: MOV P1,A CALL DL RL A DJNZ R5,X1 MOV R5,#8 DJNZ R4,X2 MOV R4,#5 X3: MOV A,#80H X4: MOV P1,A CALL DL RR A DJNZ R5,X4 MOV R5,#8 DJNZ R1,X3 MOV R1,#10 DJNZ R0,X2 SJMP $ DL: MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6,LAP RET END DỊCH 1 LED SÁNG DẦN D1 D8 VÀ NGƯỢC LẠI, SỐ LẦN CÓ THỂ THAY ĐỔI INCLUDE REG_51.PDF MOV R1,#6 ;SO LAN QUAY THUAN MOV R2,#3 ;SO LAN QUAY NGUOC MOV R3,#7 ;SÔ LÂN LAP LAI MAIN: MOV A,#01H X1: SETB C MOV P1,A RLC A CALL DELAY JNC X1 DJNZ R1,MAIN LJMP X2 X2: MOV A,#80H X3: SETB C MOV P1,A RRC A CALL DELAY JNC X3 DJNZ R2,X2 LJMP X4 X4: DJNZ R3,$ DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6, LAP POP 07 POP 06 RET END TẮT DẦN D1 D8 5 LẦN INCLUDE REG_51.PDF DEM EQU 127 MOV DEM,#0 BEGIN: MOV A,#0FFH MAIN: MOV P1,A CALL DELAY CLR C RLC A JNB ACC.7,NEXT SJMP MAIN NEXT: MOV P1,A CALL DELAY INC DEM MOV A,DEM CJNE A,#5,BEGIN SJMP $ DELAY: MOV R5,#255 X1: MOV R4,#255 DJNZ R4,$ DJNZ R5,X1 RET END 1.1 CHỚP TẮT 8 LED VÔ HẠN LẦN INCLUDE REG_51.PDF MAIN: MOV P1,#0FFH CALL DELAY MOV P1,#00H CALL DELAY LJMP MAIN DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6,LAP POP 07 POP 06 RET END 1.2 CHỚP TẮT 10 LẦN INCLUDE REG_51.PDF MOV R7,#10 MAIN: MOV P1,#0FFH CALL DELAY MOV P1,#00H CALL DELAY DJNZ R7,MAIN ; SJMP $ DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6,LAP POP 07 POP 06 RET END 1.3 1 LED SÁNG, DỊCH DẦN TỪ D1 D8 VÔ HẠN LẦN INCLUDE REG_51.PDF MAIN: MOV A,#00H BEGIN: SETB C MOV P1,A RLC A CALL DELAY JNC BEGIN LJMP MAIN DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6, LAP POP 07 POP 06 RET END 1.4 HIểN THị 1 LED SÁNG, DịCH DầN Từ D8 ĐếN D1 VớI Số LầN LặP LÀ 6 [...]... thúc chương trình con END D8 1.6 DịCH MộT LED SÁNG Từ D8 D1 MAIN: MOV A,#80H BEGIN: MOV P1, A RR A CALL DELAY LJMP BEGIN DELAY: PUSH 06 ; cất nội dung R6 vào ngăn xếp PUSH 07 ; cất nội dung R7 vào ngăn xếp MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ ; X: DJNZ R7,X DJNZ R6, LAP POP 07 ; lấy lại giá trị cũ của R7 trong ngăn xếp POP 06 ; lấy lại giá trị cũ của R0 trong ngăn xếp RET ; kết thúc chương trình con... SJMP $ D8 D1 JONG BAIF 1.9 NHUNG D1, THựC HIệN LặP LạI 20 LầN DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6,LAP POP 07 POP 06 RET END BÀI BỎ XUNG: B1;SÁNG DẦN CÁC LED TỪ D1_D8, 247 LẦN VẦ NGƯỢC LẠI 300 LẦN,LẶP LẠI WÁ TRÌNH TRÊN 4 LẦN INCLUDE REG_51.PDF MOV R5,#4 X1: MOV A,#00H BEGIN: CALL CT1 CALL CT2 DJNZ R5,X1 LJMP $ ; -CT1: PUSH 01 PUSH 02 MOV R1,#13 X2: MOV R2,#19... R2,X1 POP 03 POP 02 RET 3.2 TƯƠNG Tự CHƯƠNG TRÌNH 3.1, NHƯNG DÙNG TIMER0, MODE2 INCLUDE REG_51.PDF MAIN: MOV A,#0 MOV TMOD,#02H MOV TH0,#6 MOV TL0,#6 BIG: MOV P1,A CALL DL200MS SETB C RLC A JNC BIG SJMP MAIN DL200MS: PUSH 01 PUSH 02 MOV R1,#20 LAP: MOV R2,#40 X1: SETB TR0 CLR TF0 JNB TF0,$ DJNZ R2,X1 DJNZ R1,LAP POP 02 POP 01 RET END 3.4 TƯƠNG Tự CHƯƠNG TRÌNH 3.1, NHƯNG THờI GIAN DELAY LÀ 500MS, DUNG... R3,X5 POP04 POP03 RET ; DELAY: PUSH 00 PUSH 07 MOV R0,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R0,LAP POP 07 POP 00 RET END B2; DỊCH 1 LED SÁNG TỪ D1_D8, 247 LẦN VẦ NGƯỢC LẠI 300 LẦN,LẶP LẠI WÁ TRÌNH TRÊN 4 LẦN: INCLUDE REG_51.PDF MOV R5,#4 X1: MOV A,#00H BEGIN: CALL CT1 CALL CT2 DJNZ R5,X1 LJMP $ ; -CT1: PUSH 01 PUSH 02 MOV R1,#13 X2: MOV R2,#19 X3: MOV A,#01H X4: CLR C MOV P1,A CALL... ; DELAY: PUSH 00 PUSH 07 MOV R0,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R0,LAP POP 07 POP 00 RET END B1;SÁNG DẦN CÁC LED TỪ D1_D8, 247 LẦN VẦ DỊCH 1 LED SÁNG TỪ D8_D1:SỐ LẦN MÌNH TỰ THAY ĐỔI: BÀI CHƯA ĐÚNG INCLUDE REG_51.PDF MOV R5,#4 X1: MOV A,#00H BEGIN: CALL CT1 CALL CT2 DJNZ R5,X1 LJMP $ ; -CT1: PUSH 01 PUSH 02 MOV R1,#2 X2: MOV R2,#3 X3: MOV A,#01H X4: SETB C MOV P1,A CALL DELAY... PUSH 05 PUSH 06 PUSH 07 MOV R5,#2 LAP1: MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ R6, LAP DJNZ R5,LAP1 POP 07 POP 06 POP 05 RET MA_7S: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH END 2.8 GIốNG CHƯƠNG TRÌNH 1 NHƯNG HIểN THị CÁC Số THAY ĐổI TRONG KHOảNG 00 – 99 INCLUDE REG_51.PDF CNT EQU 127 SW1 BIT P3.0 SW2 BIT P3.1 MAIN: MOV P2,#00H SETB P2.6 SETB P2.7 MOV CNT,#0 MOV DPTR,#MA7S BIG: JNB SW1,TANG JNB... ngăn xếp MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ ; X: DJNZ R7,X DJNZ R6, LAP POP 07 ; lấy lại giá trị cũ của R7 trong ngăn xếp POP 06 ; lấy lại giá trị cũ của R0 trong ngăn xếp D8 RET ; kết thúc chương trình con END 1.9 TắT DầN CÁC LED Từ D1 INCLUDE REG_51.PDF MAIN: MOV A,#0FFH BEGIN: MOV P0,A CLR C RLC A CALL DELAY JC BEGIN LJMP MAIN DELAY: PUSH 06 PUSH 07 MOV R6,#255 LAP: MOV R7,#255 DJNZ R7,$ DJNZ . R7,$ DJNZ R6,LAP POP 07 POP 06 RET END BÀI BỎ XUNG: B1;SÁNG DẦN CÁC LED TỪ D1_D8, 247 LẦN VẦ NGƯỢC LẠI 300 LẦN,LẶP LẠI WÁ TRÌNH TRÊN 4 LẦN INCLUDE REG_51.PDF MOV R5,#4 X1:. của R7 trong ngăn xếp POP 06 ; lấy lại giá trị cũ của R0 trong ngăn xếp RET ; kết thúc chương trình con. END 1.6 DịCH MộT LED SÁNG Từ D8 D1 MAIN: MOV A,#80H BEGIN: MOV P1, A. của R7 trong ngăn xếp POP 06 ; lấy lại giá trị cũ của R0 trong ngăn xếp RET ; kết thúc chương trình con. END 1.7 SÁNG DầN CÁC LED Từ D1 D8 1.8 TƯƠNG TỰ D8 D1 MAIN:MOV