• Tin mới

    [8051 TUTORIAL] BÀI 2 Chương trình delay 1s dùng timer

    Sơ đồ mạch điện:




    Chương trình mẫu:

    BIEN_GIAY    EQU    R2   
        ORG     000H
        JMP      MAIN
        ORG     00BH
        JMP      NGAT_T0
    MAIN:
        MOV     TMOD,#01H
        MOV     TH0,#HIGH(-50000)
        MOV     TL0,#LOW(-50000)
        CLR      TF0
        SETB    TR0
        MOV     IE,#82H
    LOOP:
        MOV     BIEN_GIAY,#0
        MOV     P0,#0FFH                  ;LED TAT
        CJNE    BIEN_GIAY,#20,$        ;50000 x 20 = 1000 000us = 1s
        MOV     BIEN_GIAY,#0
        MOV     P0,#00H                     ;LED SANG
        CJNE    BIEN_GIAY,#20,$
        JMP      LOOP
    ;*******************************************
    NGAT_T0:
        MOV    TL0,#LOW(-50000)
        MOV    TH0,#HIGH(-50000)
        INC       BIEN_GIAY
    RETI
    END

     DOWNLOAD CODE+MÔ PHỎNG
    (Bấm vào link đợi 5s, sau đó bấm "Skip Ad" sẽ ra link download, pass giải nén: phamtandatx)

    http://agileurbia.com/9paq
     

    1 comment:

    1. MOV BIEN_GIAY,#0
      MOV P0,#0FFH ;LED TAT
      CJNE BIEN_GIAY,#20,$ ;50000 x 20 = 1000 000us = 1s

      ad ơi em đọc mãi mà k hiểu đoạn này, ad giải thích giúp em với ạ :( em cảm ơn nhiều

      ReplyDelete