Thông báo

Collapse
No announcement yet.

Em cần thêm phần quay nhanh quay chậm cho động cơ dc sử dụng vdk 89 và L298.

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

  • Em cần thêm phần quay nhanh quay chậm cho động cơ dc sử dụng vdk 89 và L298.

    như tiêu đề ạ, nút 1 quay thuận, nút 2 quay ngịch rồi ạ. em muốn làm thêm quay nhanh và quay chậm được ở cả 2 chiều thuận ngịch từ mạch đã có dưới đây ( chạy không tải ạ ) , các anh giúp em với.
    Còn đây là code em tìm được trên diễn đàn ạ:

    ;PHAN KHAI BAO CAC BIT NGO VAO
    PWM BIT P1.6 ;BIT DIEU KHIEN THIET BI
    UP BIT P3.4 ;TANG GIA TRI PWM
    DOWN BIT P3.5 ;GIAM GIA TRI PWM
    ;PHAN KHAI BAO BIEN LED
    PWM_VALUE EQU 31H
    ;KHAI BAO CAC VECTOR NGAT
    ORG 0000H
    LJMP SETUP ;KHOI DONG CHUONG TRINH KHI CAP NGUON
    ORG 000BH
    LJMP T0_ISR ;NGAT TIMER 0 DIEU RONG XUNG
    ORG 0030H
    SETUP:
    SETB EA ;CHO PHEP NGAT TOAN CUC
    SETB ET0 ;CHO PHEP NGAT TIMER 0
    CLR PWM ;TAT THIET BI
    MOV TMOD,#11H
    MOV TH0,#HIGH(-200) ;\ ;TA 12MHZ => 200us x 100% = 20000us = 20ms
    MOV TL0,#LOW(-200) ;/ CHU KY DIEU XUNG
    MOV PWM_VALUE,#0 ;MAC DINH GIA TRI PWM = 0
    MOV R7,#0 ;BIEN XAC DINH SO LAN NGAT TIMER
    SETB TR0 ;CHO PHEP TIMER HOAT DONG
    MAIN:
    JB UP,CHECK_DOWN ;NEU PHIM UP = '1' THI KIEM TRA PHIM DOWN
    LCALL DELAY200MS ;NEU PHIM UP = '0' THI CHO CHONG XUNG NAY
    INC PWM_VALUE ;TANG GIA TRI PWM
    MOV A,PWM_VALUE
    CJNE A,#101,EXIT_UP ;CHUA TOI NGUONG TREN THI THOAT THU TUC NHAN PHIM
    MOV PWM_VALUE,#100 ;DO DAY XUNG DAT 100%
    EXIT_UP:
    JMP MAIN
    CHECK_DOWN:
    JB DOWN,MAIN
    LCALL DELAY200MS
    DEC PWM_VALUE
    MOV A,PWM_VALUE
    CJNE A,#-1,EXIT_DOWN ;CHUA TOI NGUONG DUOI THI THOAT THU TUC NHAN PHIM
    MOV PWM_VALUE,#0 ;DO DAY XUNG BANG 0
    EXIT_DOWN:
    JMP MAIN
    T0_ISR: ;NGAT TIMER DUNG DE DIEU RONG XUNG
    PUSH ACC
    MOV 7FH,C
    CLR TR0
    MOV TH0,#HIGH(-200)
    MOV TL0,#LOW(-200)
    SETB TR0
    MOV A,PWM_VALUE
    CJNE A,#0,EN_PWM ;DO DAY XUNG <> 0 THI CHO DIEU XUNG
    JMP EXIT_ISR ;DO DAY XUNG = 0 THI THOAT KHOI THU TUC NGAT
    EN_PWM:
    INC R7 ;TANG BIEN DEM NGAT
    MOV A,R7
    CJNE A,PWM_VALUE,OFF_PULSE ;DU THOI GIAN DAY XUNG THI TAT THIET BI
    CLR PWM ;TAT THIET BI
    OFF_PULSE:
    CJNE A,#100,EXIT_ISR ;CHUA HET CHU KY DIEU XUNG THI THOAT NGAT
    SETB PWM ;TOI ROI THI MO THIET BI
    MOV R7,#0 ;RESET LAI BIEN DEM
    EXIT_ISR:
    MOV C,7FH
    POP ACC
    RETI
    DELAY50MS:
    MOV TH1,#HIGH(-50000) ; CHUONG TRINH CON TRE 50MS GIAY
    MOV TL1,#LOW(-50000) ; SU DUNG THACH ANH 12MHZ
    SETB TR1
    JNB TF1,$
    CLR TR1
    CLR TF1
    RET
    DELAY200MS:
    LCALL DELAY50MS
    LCALL DELAY50MS
    LCALL DELAY50MS
    LCALL DELAY50MS
    RET
    END
    Attached Files
    Last edited by conthanlanvt; 27-09-2013, 00:35.

  • #2
    không ai giúp em với ạ

    Comment


    • #3
      @@! có ai giúp em với

      Comment


      • #4
        ai gúp em với ới

        Comment


        • #5
          xem lại cách điều khiển xung PWM
          nhóm điện tử facebook

          Comment


          • #6
            Nguyên văn bởi conthanlanvt Xem bài viết
            như tiêu đề ạ, nút 1 quay thuận, nút 2 quay ngịch rồi ạ. em muốn làm thêm quay nhanh và quay chậm được ở cả 2 chiều thuận ngịch từ mạch đã có dưới đây ( chạy không tải ạ ) , các anh giúp em với.
            Còn đây là code em tìm được trên diễn đàn ạ:

            ;PHAN KHAI BAO CAC BIT NGO VAO
            PWM BIT P1.6 ;BIT DIEU KHIEN THIET BI
            UP BIT P3.4 ;TANG GIA TRI PWM
            DOWN BIT P3.5 ;GIAM GIA TRI PWM
            ;PHAN KHAI BAO BIEN LED
            PWM_VALUE EQU 31H
            ;KHAI BAO CAC VECTOR NGAT
            ORG 0000H
            LJMP SETUP ;KHOI DONG CHUONG TRINH KHI CAP NGUON
            ORG 000BH
            LJMP T0_ISR ;NGAT TIMER 0 DIEU RONG XUNG
            ORG 0030H
            SETUP:
            SETB EA ;CHO PHEP NGAT TOAN CUC
            SETB ET0 ;CHO PHEP NGAT TIMER 0
            CLR PWM ;TAT THIET BI
            MOV TMOD,#11H
            MOV TH0,#HIGH(-200) ;\ ;TA 12MHZ => 200us x 100% = 20000us = 20ms
            MOV TL0,#LOW(-200) ;/ CHU KY DIEU XUNG
            MOV PWM_VALUE,#0 ;MAC DINH GIA TRI PWM = 0
            MOV R7,#0 ;BIEN XAC DINH SO LAN NGAT TIMER
            SETB TR0 ;CHO PHEP TIMER HOAT DONG
            MAIN:
            JB UP,CHECK_DOWN ;NEU PHIM UP = '1' THI KIEM TRA PHIM DOWN
            LCALL DELAY200MS ;NEU PHIM UP = '0' THI CHO CHONG XUNG NAY
            INC PWM_VALUE ;TANG GIA TRI PWM
            MOV A,PWM_VALUE
            CJNE A,#101,EXIT_UP ;CHUA TOI NGUONG TREN THI THOAT THU TUC NHAN PHIM
            MOV PWM_VALUE,#100 ;DO DAY XUNG DAT 100%
            EXIT_UP:
            JMP MAIN
            CHECK_DOWN:
            JB DOWN,MAIN
            LCALL DELAY200MS
            DEC PWM_VALUE
            MOV A,PWM_VALUE
            CJNE A,#-1,EXIT_DOWN ;CHUA TOI NGUONG DUOI THI THOAT THU TUC NHAN PHIM
            MOV PWM_VALUE,#0 ;DO DAY XUNG BANG 0
            EXIT_DOWN:
            JMP MAIN
            T0_ISR: ;NGAT TIMER DUNG DE DIEU RONG XUNG
            PUSH ACC
            MOV 7FH,C
            CLR TR0
            MOV TH0,#HIGH(-200)
            MOV TL0,#LOW(-200)
            SETB TR0
            MOV A,PWM_VALUE
            CJNE A,#0,EN_PWM ;DO DAY XUNG <> 0 THI CHO DIEU XUNG
            JMP EXIT_ISR ;DO DAY XUNG = 0 THI THOAT KHOI THU TUC NGAT
            EN_PWM:
            INC R7 ;TANG BIEN DEM NGAT
            MOV A,R7
            CJNE A,PWM_VALUE,OFF_PULSE ;DU THOI GIAN DAY XUNG THI TAT THIET BI
            CLR PWM ;TAT THIET BI
            OFF_PULSE:
            CJNE A,#100,EXIT_ISR ;CHUA HET CHU KY DIEU XUNG THI THOAT NGAT
            SETB PWM ;TOI ROI THI MO THIET BI
            MOV R7,#0 ;RESET LAI BIEN DEM
            EXIT_ISR:
            MOV C,7FH
            POP ACC
            RETI
            DELAY50MS:
            MOV TH1,#HIGH(-50000) ; CHUONG TRINH CON TRE 50MS GIAY
            MOV TL1,#LOW(-50000) ; SU DUNG THACH ANH 12MHZ
            SETB TR1
            JNB TF1,$
            CLR TR1
            CLR TF1
            RET
            DELAY200MS:
            LCALL DELAY50MS
            LCALL DELAY50MS
            LCALL DELAY50MS
            LCALL DELAY50MS
            RET
            END
            Hehe, chương trình này của mình đây mà.
            Để diều khiển tốc độ động cơ DC dùng L298 thì bạn phải điều xung cho cả 2 chân IN1 và IN2.
            Yêu cầu của bạn chắc tương tự cái này: motor - YouTube
            Công ty TNHH Tự Động Hóa Đạt Lân
            32/36, Ông Ích Khiêm, F14, Q11
            ĐT: 08.3974 7308 - 0937.197.001
            email:
            Webite:

            Comment

            Về tác giả

            Collapse

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

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

            Collapse

            Đang tải...
            X