Tài liệu Chương5: CHƯƠNG TRÌNH NHẬP SỐ BCD TỪ BÀN PHÍM pptx

11 461 1
Tài liệu Chương5: CHƯƠNG TRÌNH NHẬP SỐ BCD TỪ BÀN PHÍM pptx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Chương5: CH ƯƠ NG TRÌNH NHẬP SỐ BCD TỪ BÀN PHÍM READ_BCD:;8 bit READ_BCD_1:; DOC SO BCD THU 1 LCALL SCAN_KEYPAD CJNE A,#0AH,NOT_EQUAL1 LJMP READ_BCD_1 NOT_EQUAL1: JNC IS_ESC;CHI DOC NHUNG SO TU 0-9 MOV R7,A LCALL WRITE_DIGIT CLR BIT_ESC LJMP READ_BCD_2 IS_ESC: CJNE A,#27H,READ_BCD_1 LJMP NOT_READ_BCD READ_BCD_2:;DOC SO BCD THU 2 LCALL SCAN_KEYPAD CJNE A,#13H,RB1 LJMP READ_BCD_COMPLISH RB1: CJNE A,#27H,RB2 LJMP NOT_READ_BCD RB2: CJNE A,#0AH,NOT_EQUAL2 LJMP READ_BCD_2 NOT_EQUAL2: JNC READ_BCD_2 CLR BIT_ESC PUSH ACC MOV A,R7 SWAP A ANL A,#0F0H;LOAI BO 4 BIT THAP MOV R7,A POP ACC ORL A,R7 MOV R7,A LCALL WRITE_DIGIT LJMP READ_BCD_2 NOT_READ_BCD: SETB BIT_ESC READ_BCD_COMPLISH: MOV A,R7 RET CH ƯƠNG TRÌNH YEU CAU NHAP PHIM DIEU KHIEN READ_CONTROL_KEY: LCALL SCAN_KEYPAD CJNE A,#13H,IS_CONTROL_KEY IS_CONTROL_KEY: JC READ_CONTROL_KEY RET CH ƯƠNG TRÌNH LẤY GIỜ TỪ BÀN PHÍM VÀ CÀI GIỜ CHO RTC GET_CLOCK: ;GET_HOUR CLR BIT_ESC SETB GET_HOUR;CAC BIT NAY DE CHO CHUONG TRINH GHI SO BIT CLR GET_MINUTE CLR GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV HOUR,R7 ;GET MINUTE CLR GET_HOUR SETB GET_MINUTE CLR GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV MINUTE,R7 ;GET SECOND CLR GET_HOUR CLR GET_MINUTE SETB GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV SECOND,R7 CLR GET_HOUR CLR GET_MINUTE CLR GET_SECOND LCALL READ_CONTROL_KEY CJNE A,#13H,NO_SET_CLOCK LCALL SET_CLOCK RET NO_SET_CLOCK: SETB BIT_ESC RET CHƯƠNG TRÌNH GHI SO LÚC PHAM GIO BAN PHIM WRITE_DIGIT: JB GET_HOUR,WRITE_HOUR CH ƯƠNG TRÌNH NH ẬP SỐ BCD TỪ BÀN PHÍM READ_BCD:;8 bit READ_BCD_1:; DOC SO BCD THU 1 LCALL SCAN_KEYPAD CJNE A,#0AH,NOT_EQUAL1 LJMP READ_BCD_1 NOT_EQUAL1: JNC IS_ESC;CHI DOC NHUNG SO TU 0-9 MOV R7,A LCALL WRITE_DIGIT CLR BIT_ESC LJMP READ_BCD_2 IS_ESC: CJNE A,#27H,READ_BCD_1 LJMP NOT_READ_BCD READ_BCD_2:;DOC SO BCD THU 2 LCALL SCAN_KEYPAD CJNE A,#13H,RB1 LJMP READ_BCD_COMPLISH RB1: CJNE A,#27H,RB2 LJMP NOT_READ_BCD RB2: CJNE A,#0AH,NOT_EQUAL2 LJMP READ_BCD_2 NOT_EQUAL2: JNC READ_BCD_2 CLR BIT_ESC PUSH ACC MOV A,R7 SWAP A ANL A,#0F0H;LOAI BO 4 BIT THAP MOV R7,A POP ACC ORL A,R7 MOV R7,A LCALL WRITE_DIGIT LJMP READ_BCD_2 NOT_READ_BCD: SETB BIT_ESC READ_BCD_COMPLISH: MOV A,R7 RET CH ƯƠNG TRÌNH YEU CAU NHAP PHIM DIEU KHIEN READ_CONTROL_KEY: LCALL SCAN_KEYPAD CJNE A,#13H,IS_CONTROL_KEY IS_CONTROL_KEY: JC READ_CONTROL_KEY RET CH ƯƠNG TRÌNH LẤY GIỜ TỪ BÀN PHÍM VÀ CÀI GIỜ CHO RTC GET_CLOCK: ;GET_HOUR CLR BIT_ESC SETB GET_HOUR;CAC BIT NAY DE CHO CHUONG TRINH GHI SO BIT CLR GET_MINUTE CLR GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV HOUR,R7 ;GET MINUTE CLR GET_HOUR SETB GET_MINUTE CLR GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV MINUTE,R7 ;GET SECOND CLR GET_HOUR CLR GET_MINUTE SETB GET_SECOND LCALL READ_BCD JB BIT_ESC,NO_SET_CLOCK MOV SECOND,R7 CLR GET_HOUR CLR GET_MINUTE CLR GET_SECOND LCALL READ_CONTROL_KEY CJNE A,#13H,NO_SET_CLOCK LCALL SET_CLOCK RET NO_SET_CLOCK: SETB BIT_ESC RET CH ƯƠNG TRÌNH GHI SO LÚC PHAM GIO BAN PHIM JB GET_HOUR,WRITE_MINUTE JB GET_HOUR,WRITE_SECOND LJMP EXIT_WRITE_DIGIT WRITE_HOUR: MOV A,HOUR ANL A,#0F0H SWAP A CLR EN2 MOV P1,A SETB EN2;CHOT DU LIEU MOV A,HOUR ANL A,#0FH CLR EN3 MOV P1,A SETB EN3 LJMP EXIT_WRITE_DIGIT WRITE_MINUTE: MOV A,MINUTE ANL A,#0F0H SWAP A CLR EN4 MOV P1,A SETB EN4;CHOT DU LIEU MOV A,MINUTE ANL A,#0FH CLR EN5 MOV P1,A SETB EN5;CHOT DU LIEU . Chương5 : CH ƯƠ NG TRÌNH NHẬP SỐ BCD TỪ BÀN PHÍM READ _BCD: ;8 bit READ _BCD_ 1:; DOC SO BCD THU 1 LCALL SCAN_KEYPAD CJNE A,#0AH,NOT_EQUAL1 LJMP READ _BCD_ 1. BIT_ESC RET CHƯƠNG TRÌNH GHI SO LÚC PHAM GIO BAN PHIM WRITE_DIGIT: JB GET_HOUR,WRITE_HOUR CH ƯƠNG TRÌNH NH ẬP SỐ BCD TỪ BÀN PHÍM READ _BCD: ;8 bit READ _BCD_ 1:;

Ngày đăng: 13/12/2013, 23:15

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan