Thông báo

Collapse
No announcement yet.

Xin đoạn code ASM tạo PWM

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

  • Xin đoạn code ASM tạo PWM

    Ai đã tạo PWM bằng ASM cho mình xin đoạn code. Thank 4 read

  • #2
    Nguyên văn bởi kissyou Xem bài viết
    Ai đã tạo PWM bằng ASM cho mình xin đoạn code. Thank 4 read
    bác tham khảo thêm cái này
    Attached Files

    Comment


    • #3
      Nguyên văn bởi oriondn Xem bài viết
      bác tham khảo thêm cái này
      pass giải nén là gì vậy bác Oriondn

      Comment


      • #4
        Cái này ko đc bạn ak. PWM mà bạn?

        Comment


        • #5
          Chào bạn, đây là đoạn code tạo 3 kênh PWM điều khiển LED RGB. Không biết có đúng cái bạn cần không.
          PWM_RED BIT P0.6
          PWM_GREEN BIT P0.5
          PWM_BLUE BIT P0.7
          SW_RED BIT P1.0 ;Tang duty cycle RED
          SW_GREEN BIT P1.1 ;Tang duty cycle GREEN
          SW_BLUE BIT P1.2 ;Tang duty cycle BLUE
          DUTY_RED EQU 20H
          DUTY_GREEN EQU 21H
          DUTY_BLUE EQU 22H
          BIEN_PHU EQU 23H
          ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          ORG 000H
          JMP TD
          ORG 00BH
          JMP NGAT_T0
          TD:
          MOV TMOD,#02H ;T0 + MODE 2
          MOV TH0,#-1
          MOV TL0,#-1
          SETB TR0
          MOV IE,#82H ;CHO PHEP T0 NGAT
          MOV DUTY_RED,#0
          MOV DUTY_GREEN,#0
          MOV DUTY_BLUE,#0
          MOV BIEN_PHU,#0
          MAIN:
          JB SW_RED,X1
          JNB SW_RED,$
          INC DUTY_RED
          X1:
          JB SW_GREEN,X2
          JNB SW_GREEN,$
          INC DUTY_GREEN
          X2:
          JB SW_BLUE,MAIN
          JNB SW_BLUE,$
          INC DUTY_BLUE
          JMP MAIN
          ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
          NGAT_T0:
          INC BIEN_PHU
          MOV A,BIEN_PHU

          CJNE A,DUTY_RED,CLR_PWM_GREEN
          CLR PWM_RED
          CLR_PWM_GREEN:
          CJNE A,DUTY_GREEN,CLR_PWM_BLUE
          CLR PWM_GREEN
          CLR_PWM_BLUE:
          CJNE A,DUTY_BLUE,SET_PWM
          CLR PWM_BLUE
          SET_PWM:
          CJNE A,#255,EXIT
          MOV P0,#0FFH
          EXIT:
          RETI
          END

          Comment


          • #6
            -Mình đang cần test một cái mạch đơn giản là : tạo pwm 10 cấp tốc độ. Khi VĐK chạy nó sẽ ở mức 5, ấn tăng tốc thì nó nhảy lên 1 mức, giảm tốc thì giảm đi 1 mức.
            -Cái thứ 2 mình muốn hỏi là : VDK đầu ra 5V, mình dùng PWM điều khiển động cơ 24 V thì dùng cách ghép nối nào đc. Mọi người giúp mình với . Thank

            Comment


            • #7
              Bạn có thể dùng mạch này để điều khiển động cơ của bạn. Nếu tìm không có TLP251 bạn có thể sử dụng opto PC921.

              Comment


              • #8
                Nguyên văn bởi OpenDoor Xem bài viết
                Chào bạn, đây là đoạn code tạo 3 kênh PWM điều khiển LED RGB. Không biết có đúng cái bạn cần không.
                PWM_RED BIT P0.6
                PWM_GREEN BIT P0.5
                PWM_BLUE BIT P0.7
                SW_RED BIT P1.0 ;Tang duty cycle RED
                SW_GREEN BIT P1.1 ;Tang duty cycle GREEN
                SW_BLUE BIT P1.2 ;Tang duty cycle BLUE
                DUTY_RED EQU 20H
                DUTY_GREEN EQU 21H
                DUTY_BLUE EQU 22H
                BIEN_PHU EQU 23H
                ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                ORG 000H
                JMP TD
                ORG 00BH
                JMP NGAT_T0
                TD:
                MOV TMOD,#02H ;T0 + MODE 2
                MOV TH0,#-1
                MOV TL0,#-1
                SETB TR0
                MOV IE,#82H ;CHO PHEP T0 NGAT
                MOV DUTY_RED,#0
                MOV DUTY_GREEN,#0
                MOV DUTY_BLUE,#0
                MOV BIEN_PHU,#0
                MAIN:
                JB SW_RED,X1
                JNB SW_RED,$
                INC DUTY_RED
                X1:
                JB SW_GREEN,X2
                JNB SW_GREEN,$
                INC DUTY_GREEN
                X2:
                JB SW_BLUE,MAIN
                JNB SW_BLUE,$
                INC DUTY_BLUE
                JMP MAIN
                ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                NGAT_T0:
                INC BIEN_PHU
                MOV A,BIEN_PHU

                CJNE A,DUTY_RED,CLR_PWM_GREEN
                CLR PWM_RED
                CLR_PWM_GREEN:
                CJNE A,DUTY_GREEN,CLR_PWM_BLUE
                CLR PWM_GREEN
                CLR_PWM_BLUE:
                CJNE A,DUTY_BLUE,SET_PWM
                CLR PWM_BLUE
                SET_PWM:
                CJNE A,#255,EXIT
                MOV P0,#0FFH
                EXIT:
                RETI
                END
                e test ngoài thực tế thấy ko đc bác ơi.
                ĐT: 0972 20 58 68
                Gmail:

                Comment


                • #9
                  Phản hồi

                  Nguyên văn bởi oriondn Xem bài viết
                  bác tham khảo thêm cái này
                  Mẹ nó. Đã cho file thì cho pass luôn. Không thì dẹp mẹ đi.

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...
                  X