Thông báo

Collapse
No announcement yet.

kiểm tra code em viết điều khiển LED bằng remote TV qua 8051

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

  • kiểm tra code em viết điều khiển LED bằng remote TV qua 8051

    mọi người giúp em với mạch em sử dụng 1 nút nhấn từ remote tivi để điều khiển 3 led đơn như sau: nhấn 1 lần thì led 1 sáng , nhấn 2 lần liên tục thì led 2 sáng, nhấn 3 lần liên tục thì led 3 sáng ( muốn tắt đi bằng cách nhấn tương tự như mở thêm 1 lần thì tắt). ai chỉ em viết code với ạ.. em cám ơn nhiều -em viết code vậy mọi người coi đúng không ạ em cám ơn....giúp em với em cám ơn
    DEM EQU 50H ; Gán giá trị cho nút nhấn
    LED1 BIT P0.0
    LED2 BIT P0.1
    LED3 BIT P0.2
    ORG 000H
    JMP MAIN
    ORG 000BH
    JMP NGATTIMER0
    MAIN: SETB LED1
    SETB LED2
    SETB LED3
    MOV DEM,#0
    MOV R0,#40
    MOV TMOD,#01H
    MOV TH0,#HIGH(-50000)
    MOV TL0,#LOW(-50000)
    SETB EA
    SETB ET0
    SETB TR0
    LOOP: JNB DEM,LOOP ;HOI XEM CO BAM REMOTE KHONG
    KT_PN: JB DEM,KT_PN
    INC DEM
    JMP LOOP
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX NGATTIMER0: MOV TL0,#LOW(-50000) MOV TL0,#HIGH(-50000) DJNZ R0,EXIT MOV R0,#40 KT_L1:
    MOV A,DEM
    CJNE A,#1,KT_L2
    CPL LED1
    MOV DEM,#0
    JMP EXIT

    KT_L2:
    MOV A,DEM
    CJNE A,#2,KT_L3
    CPL LED2
    MOV DEM,#0
    JMP EXIT

    KT_L3:
    MOV A,DEM
    CJNE A,#3,
    EXIT_DEM
    CPL LED3
    MOV DEM,#0
    JMP EXIT
    EXIT_DEM:
    EXIT: RETI
    ;===========================================
    DELAY: MOV R2,#200
    D1: MOV R3,#250
    DJNZ R3,$
    DJNZ R2,D1
    RET
    ;================================================= ==========
    DELAY500:
    MOV R7,#200 D2:
    DJNZ R7,$
    RET
    END

  • #2
    Nguyên văn bởi nghiaphamsg Xem bài viết
    mọi người giúp em với mạch em sử dụng 1 nút nhấn từ remote tivi để điều khiển 3 led đơn như sau: nhấn 1 lần thì led 1 sáng , nhấn 2 lần liên tục thì led 2 sáng, nhấn 3 lần liên tục thì led 3 sáng ( muốn tắt đi bằng cách nhấn tương tự như mở thêm 1 lần thì tắt). ai chỉ em viết code với ạ.. em cám ơn nhiều -em viết code vậy mọi người coi đúng không ạ em cám ơn....giúp em với em cám ơn
    DEM EQU 50H ; Gán giá trị cho nút nhấn
    LED1 BIT P0.0
    LED2 BIT P0.1
    LED3 BIT P0.2
    ORG 000H
    JMP MAIN
    ORG 000BH
    JMP NGATTIMER0
    MAIN: SETB LED1
    SETB LED2
    SETB LED3
    MOV DEM,#0
    MOV R0,#40
    MOV TMOD,#01H
    MOV TH0,#HIGH(-50000)
    MOV TL0,#LOW(-50000)
    SETB EA
    SETB ET0
    SETB TR0
    LOOP: JNB DEM,LOOP ;HOI XEM CO BAM REMOTE KHONG
    KT_PN: JB DEM,KT_PN
    INC DEM
    JMP LOOP
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXX NGATTIMER0: MOV TL0,#LOW(-50000) MOV TL0,#HIGH(-50000) DJNZ R0,EXIT MOV R0,#40 KT_L1:
    MOV A,DEM
    CJNE A,#1,KT_L2
    CPL LED1
    MOV DEM,#0
    JMP EXIT

    KT_L2:
    MOV A,DEM
    CJNE A,#2,KT_L3
    CPL LED2
    MOV DEM,#0
    JMP EXIT

    KT_L3:
    MOV A,DEM
    CJNE A,#3,
    EXIT_DEM
    CPL LED3
    MOV DEM,#0
    JMP EXIT
    EXIT_DEM:
    EXIT: RETI
    ;===========================================
    DELAY: MOV R2,#200
    D1: MOV R3,#250
    DJNZ R3,$
    DJNZ R2,D1
    RET
    ;================================================= ==========
    DELAY500:
    MOV R7,#200 D2:
    DJNZ R7,$
    RET
    END
    sao bạn không nạp vào thử xem thế nào mà hỏi j nủa

    Comment

    Về tác giả

    Collapse

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

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

    Collapse

    Đang tải...
    X