Thông báo

Collapse
No announcement yet.

Xin giúp đỡ về chuyển code ASM sang C

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

  • Xin giúp đỡ về chuyển code ASM sang C

    $INCLUDE(REG51.INC)

    ORG 0000H

    TURN_OFF;

    MOV P3,#0FFH
    MOV P0,#00H
    MOV 30H,#10

    JNB P3.1,RIGHT
    JNB P3.2,LEFT
    JMP TURN_OFF

    ;===QUAY PHAI===
    RIGHT:
    MOV R5,#8
    MOV DPTR,#CODE1
    MOV R0,#1
    CLR P3.6
    SETB P3.7
    ;K1:
    JNB P3.2,LEFT
    JNB QUAY

    ;===QUAY TRAI==
    LEFT:
    MOV R5,#8
    MOV DPTR,#CODE2
    MOV R0,#0
    CLR P3.7
    SETB P3.6
    ;K2:
    JNB P3.1,RIGHT
    JMP QUAY

    ;===CHUONG TRINH QUAY==
    QUAY:
    MOV R4,30H
    JNB P3.0,STOP
    CLR A
    MOVC A@A+DPTR
    MOV P0,A
    CALL DELAY
    INC DPTR
    JNB P3.3,TANG_TOC
    JNB P3.4 GIAM_TOC
    K8:
    CJNE R0,#0,K3
    CJNE R0,#1,K4
    K3:
    ;DJNZ R5,K1
    DJNZ R5,QUAY
    JMP RIGHT
    K4:
    ;DJNZ R5,K2
    DJNZ R5,QUAY
    JMP LEFT

    ;==DUNG DONG CO===
    STOP:
    JMP TURN_OFF

    ;==TANG TOC==
    TANG_TOC:
    CJNE R4,#5,K7
    JMP K8
    K7:
    DEC 30H
    JMP K8

    ;==GIAM TOC==
    GIAM_TOC:
    CJNE R4,#20,K9
    JMP K8
    K9:
    INC 30H
    JMP K8

    ;===CHUOGN TRINH TRE===
    DELAY:
    MOV R1,30H
    LOOP2: MOV R2,#5
    LOOP1: MOV R3,#100
    DJNZ R3,$
    DJNZ R2,LOOP1
    DJNZ R1,LOOP2
    RET

    ;==BANG MA====
    CODE1:
    DB 0F1H,0F3H,0F2H,0F6H,0F4H,0FCH,0F8H,0F9H,
    CODE2:
    DB 0F9H,0F8H,0FCH,0F4H,0F6H,0F2H,0F3H,0F1H
    END


    mọi người cho em hỏi là code này đúng chưa? có thể chuyển sang c dùm em được không ạ!
    e xin chân thành cảm ơn và hậu tạ

Về tác giả

Collapse

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

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

Collapse

Đang tải...
X