Thông báo

Collapse
No announcement yet.

Xuất 2 số bất kỳ ra led 7 đoạn

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Xuất 2 số bất kỳ ra led 7 đoạn

    Mình có vấn đề như thế này nhờ các bạn giúp đở nha.
    Mình dùng post 1 giao tiếp với bàn phím (chỉ sữ dụng các số và nút enter, xóa.) các nút khác bỏ qua.
    P0 xuất ra led 7 đoạn:
    Mình làm xong chương trình quét bàn phím rồi. Bây giờ mình muốn xuất số vừa nhập từ bàn phím vào ra cập led đầu . Ví dụ nhập 59 từ bàn phím vào thì cập led đầu hiện 5 trứoc và chuyển 5 qua led kế bên rồi số 9 thay led số 5 và ấn "enter" thì số đó được lưu vào một ô nhớ bất kỳ còn bấm "xóa" thì xóa về 00.(Nếu bấm số 5 hiển thị số 05) Mong các bạn giúp đở.
    Xin chân thành cảm ơn
    Code quet led:
    OUT_LED:
    MOV P2,#0H
    MOV A,10H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    MOV A,11H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.1
    LCALL DELAY_500US
    CLR P2.1
    MOV A,12H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.2
    LCALL DELAY_500US
    CLR P2.2
    MOV A,13H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.3
    LCALL DELAY_500US
    CLR P2.3
    MOV A,14H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.4
    LCALL DELAY_500US
    CLR P2.4
    MOV A,15H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.5
    LCALL DELAY_500US
    CLR P2.5
    MOV A,16H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.6
    LCALL DELAY_500US
    CLR P2.6
    MOV A,17H
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.7
    LCALL DELAY_500US
    CLR P2.7
    RET
    Quet Ban Phim:
    ;QUET PHIM HIEN THI RA LED
    ORG 00H
    SJMP MAIN
    ;P1.0,P1.1,P1.2,P1.3= HANG
    ;P1.4,P1.5,P1.6,P1.7= COT
    ;--------------------------------------------
    MAIN:
    MOV DPTR,#MALED
    LCALL QUET_PHIM
    SJMP MAIN
    RET
    QUET_PHIM:
    QLAY1: MOV P1,#0FFH ; CHO TAT CA CAC HANG COT LEN MUC 1
    MOV P1,#0F0H ;NOI DAT CAC HANG
    MOV A,P1
    ANL A,#0F0H
    CJNE A,#0F0H,QLAY1
    QLAY2: LCALL DELAY_200MS ;17
    MOV A,P1
    ANL A,#0F0H
    CJNE A,#0F0H,TIEP ; CO PHIM NHAN THI TIEP
    SJMP QLAY2 ;KO CO PHIM BAM QUAY LAI 2
    TIEP:
    MOV P1,#11111110B ;NOI DAT HANG 0
    MOV A,P1 ; DOC PHIM
    ANL A,#0F0H
    CJNE A,#0F0H,HANG_00
    MOV P1,#11111101B ;NOI DAT HANG 1
    MOV A,P1 ; DOC PHIM
    ANL A,#0F0H
    CJNE A,#0F0H,HANG_01
    MOV P1,#11111011B ;NOI DAT HANG 2
    MOV A,P1 ; DOC PHIM
    ANL A,#0F0H
    CJNE A,#0F0H,HANG_02
    MOV P1,#11110111B ;NOI DAT HANG 3
    MOV A,P1 ; DOC PHIM
    ANL A,#0F0H
    CJNE A,#0F0H,HANG_03
    SJMP THOAT
    HANG_00: ;40
    MOV A,P1
    CJNE A,#11101110b,SO_2
    LCALL NUM_1
    SO_2: MOV A,P1
    CJNE A,#11011110b,SO_3
    LCALL NUM_2
    SO_3: MOV A,P1
    CJNE A,#10111110b,THOAT
    LCALL NUM_3
    HANG_01:
    MOV A,P1
    CJNE A,#11101101b,SO_5
    LCALL NUM_4
    SO_5: MOV A,P1
    CJNE A,#11011101b,SO_6
    LCALL NUM_5
    SO_6: MOV A,P1
    CJNE A,#10111101b,THOAT
    LCALL NUM_6
    HANG_02:
    MOV A,P1
    CJNE A,#11101011b,SO_8
    LCALL NUM_7
    SO_8: MOV A,P1
    CJNE A,#11011011b,SO_9
    LCALL NUM_8
    SO_9: MOV A,P1
    CJNE A,#10111011b,THOAT
    LCALL NUM_9
    HANG_03:
    MOV A,P1
    CJNE A,#11100111b,SO_0
    LCALL NUT_XOA
    SO_0:
    MOV A,P1
    CJNE A,#11010111b,NUT_ENTER
    LCALL NUM_0
    NUT_ENTER:
    MOV A,P1
    CJNE A,#11100111b,THOAT
    LCALL ENTER
    THOAT:
    RET
    NUM_0:
    MOV P2,#0FFH
    MOV A,#0
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_1:

    MOV P2,#0FFH
    MOV A,#1
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US; 100
    CLR P2.0
    RET
    NUM_2:

    MOV P2,#0FFH
    MOV A,#2
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_3:

    MOV P2,#0FFH
    MOV A,#3
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_4:

    MOV P2,#0FFH
    MOV A,#4
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_5:

    MOV P2,#0FFH
    MOV A,#5
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_6:

    MOV P2,#0FFH
    MOV A,#6
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_7:

    MOV P2,#0FFH
    MOV A,#7
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_8:

    MOV P2,#0FFH
    MOV A,#8
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUM_9:

    MOV P2,#0FFH
    MOV A,#9
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    NUT_XOA:
    MOV P2,#0FFH
    MOV A,#0
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    ENTER:
    MOV P2,#0FFH
    MOV A,#9
    MOVC A,@A+DPTR
    MOV P0,A
    SETB P2.0
    LCALL DELAY_500US
    CLR P2.0
    RET
    DELAY_500US:
    MOV R5,#250
    DJNZ R5,$
    RET
    DELAY_200MS:
    MOV R6,#20
    LOOP3: LCALL DELAY_500US
    DJNZ R6,LOOP3
    RET
    MALED: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
    END
    Last edited by manhkha85; 09-04-2009, 13:49.

  • #2
    Cái code quet bàn phím đâu? Sao ko post lên để người khác biết bạn quét thế nào mà giúp đỡ chứ!
    Trần Đức Sơn

    tel:0934691385

    Comment


    • #3
      chương trình quét bàn phím của bạn có 2 chữ số,như vây nếu bạn bấm số đầu tiên chip sẽ hiểu là số hàng chục. Nếu bạn nhấn một phim số 5 mà muốn hiển thị số 05. Bạn phải thêm chương trình nếu nhấn một số chip phải hiểu là hàng đơn vị khi nhấn phím enter
      |

      Comment

      Về tác giả

      Collapse

      manhkha85 Tìm hiểu thêm về manhkha85

      Bài viết mới nhất

      Collapse

      • nguyendinhvan
        Trả lời cho Vấn đề về tốc độ quay
        bởi nguyendinhvan
        Sử dụng động cơ servor, hoặc lắp thêm một cái encoder vào động cơ bước. Encoder sẽ kiểm soát động cơ có quay hoặc đứng im.
        Hôm qua, 19:50
      • Andrea14
        Vấn đề về tốc độ quay
        bởi Andrea14
        Chào mọi người,

        Tôi muốn mô phỏng sự thay đổi các mùa bằng cách từ từ nghiêng một quả địa cầu 16 inch bằng một động cơ bước nhỏ. Một động cơ bước khác sẽ quay quả địa cầu theo thời gian thực. Hệ thống truyền động...
        12-12-2025, 12:42
      • bqviet
        Trả lời cho Đấu tắt điện cho máy tính bảng
        bởi bqviet
        Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
        06-12-2025, 17:17
      • nguyendinhvan
        Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
        bởi nguyendinhvan
        Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
        05-12-2025, 19:59
      Đang tải...
      X