Thông báo

Collapse
No announcement yet.

Giúp em cái code(ASM) .......!!!

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

  • Giúp em cái code(ASM) .......!!!

    Em làm viết cái chương trình cho robot chạy dùng 2 cảm biến (thay bằng nút bấm) em cho nó cahỵ thẳng gặp tín hịu từ cảm biến trái thì cho dc phải dừng rồi sau đó cho nó chạy tiếp khi ko nhận dc tín hịu nữa và ngược lại (CHIP AT89S52)
    em viết cho nó chạy và dừng theo thời gian dc rồi nhưng nhận tín hịu từ cảm biến rồi dk thì em ko bít mong các cao thủ giúp em
    ah viết bẳng asm nha
    mong nhận dc hồi đáp sớm
    8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
    liên lạc với em qua địa chi email: Mob: 01882.076.989

  • #2
    Nguyên văn bởi hoangphat Xem bài viết
    Em làm viết cái chương trình cho robot chạy dùng 2 cảm biến (thay bằng nút bấm) em cho nó cahỵ thẳng gặp tín hịu từ cảm biến trái thì cho dc phải dừng rồi sau đó cho nó chạy tiếp khi ko nhận dc tín hịu nữa và ngược lại (CHIP AT89S52)
    em viết cho nó chạy và dừng theo thời gian dc rồi nhưng nhận tín hịu từ cảm biến rồi dk thì em ko bít mong các cao thủ giúp em
    ah viết bẳng asm nha
    mong nhận dc hồi đáp sớm
    có code kô bạn ơi ? mà người ta thường dùng 8 cặp mà
    Chuyên cung cấp inverter dạng sin chuẩn
    Email :

    Comment


    • #3
      nói cho đơn giản là dùng 2 cặp rồi mới tính típ mình thử viết nhưng nó ko hoạt động
      để post lên các pác sửa giúp
      ;______________________________________________
      ;|*********************************************|
      ;|* NAME:HOANG VINH PHAT *|
      ;|* PHANKEY ELECTRONIC *|
      ;|* 114/7:LY THUONG KIET -VUNG TAU *|
      ;|* PROGRAM FOR ROBOT *|
      ;|* *|
      ;|*********************************************|
      ;_______________________________________________

      ;DELAY X2 =1S
      ;_______________________________________________
      ;|||||||||||||||||MAIN PROGRAM||||||||||||||||||
      ;_______________________________________________
      ORG 00H
      MOV P3,#0H;SET P3=0
      MOV P2,#0FFH ;SET P2=1
      mov P1,#0F0H ;SET P1
      MOV P0,#0FFH ;SET P0=0

      ;LED DO TRUOC RB
      CB1 BIT P0.0 ; LED1 BEN TRAI
      CB2 BIT P0.1 ; LED2 BEN PHAI

      ;LED DO 2 BEN RB
      CB3 BIT P0.2 ; LED1 BEN TRAI
      CB4 BIT P0.3 ; LED2 BEN PHAI
      ;LED DO DUONG DUOI RB
      CB5 BIT P0.4 ;LED DO DUONG TRAI1
      CB6 BIT P0.5 ;LED DO DUONG TRAI2
      ;LED DO TREN KO
      CB7 BIT P0.6 ;MAT TRAI
      CB8 BIT P0.7 ;MAT PHAI



      START:
      JNB P1.1,START
      SJMP MIAN
      MAIN:
      LCALL DENNHAY
      LCALL TOI
      LCALL DODUONG
      LCALL DELAY2S
      LCALL DUNG
      LCALL QUAYPHAI90
      LCALL DUNG
      LCALL TOI
      LCALL DUNG
      LCALL QUAYPHAI90
      LJMP EXIT
      ;_________________________________________________ _______________
      ;<<<<<<<<<<<<<<<<<<CAC CHUONG TRINH CHAY>>>>>>>>>>>>>>>>>>>>>>>>>>
      KTROBOT:
      LCALL TOI
      LCALL DELAY1S
      LCALL LUI
      LCALL DELAY1S
      LCALL CANHTAY
      LCALL DELAY1S
      RET
      DODUONG:
      JB CB1,KT2
      LJMP RETRAI
      KT2:
      JB CB2,KT3
      LJMP REPHAI
      RET
      KT3:
      JB CB3,KT4
      LJMP RETRAI
      RET
      KT4:
      JB CB4,KT5
      LJMP REPHAI
      RET
      KT5:
      JB CB5,KT6
      LJMP CUATRAI
      RET
      KT6:
      JB CB6,KT7
      LJMP CUAPHAI
      RET
      KT7:
      JB CB7,KT8
      LJMP COWA
      RET
      KT8:
      JB CB8,THOAT1
      LJMP LOTCAUTHANG
      THOAT1:
      RET
      ;<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>
      ;<<<<<<<<<<<<<<<<PROGRAM SMALL>>>>>>>>>>>>>>>>
      ;<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>

      DENNHAY:
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      LCALL DELAY1S
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      LCALL DELAY1S
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      LCALL DELAY1S
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      LCALL DELAY1S
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      LCALL DELAY1S
      MOV P2,#0H
      LCALL DELAY1S
      MOV P2,#1H
      RET
      DUNG:
      MOV P3,#0H
      LCALL DELAY1S
      RET
      TOI:
      MOV P3,#0C0H
      LCALL DELAY3S
      RET
      LUI:
      MOV P3,#30H
      LCALL DELAY3S
      RET
      QUAYPHAI90:
      MOV P3,#90H
      LCALL DELAY3S
      RET
      QUAYTRAI90:
      MOV P3,#60H
      LCALL DELAY3S
      RET
      QUAY180:
      MOV P3,#90H
      LCALL DELAY5S
      RET
      RETRAI:
      MOV P3,#80H
      LCALL DELAY1S
      RET
      REPHAI:
      MOV P3,#40H
      LCALL DELAY1S
      RET
      COWA:
      LCALL LAYWA
      RET
      CUATRAI:
      LCALL QUAYTRAI90
      RET
      CUAPHAI:
      LCALL QUAYPHAI90
      RET
      LOTCAUTHANG:
      LCALL LUI
      LCALL QUAY180
      RET
      CANHTAY:
      MOV P3,#8H
      LCALL DELAY3S
      RET
      LAYWA:
      MOV P3,#0C0H
      LCALL DELAY1S
      MOV P3,#8H
      LCALL DELAY5S
      MOV P3,#30H
      LCALL DELAY1S
      MOV P3,#60H
      LCALL DELAY1S
      RET
      THAWA:
      LCALL DELAY1S
      MOV P3,#8H
      LCALL DELAY5S
      LCALL DELAY3S
      MOV P3,#30H
      LCALL DELAY1S
      MOV P3,#60H
      LCALL DELAY1S
      RET
      ;_______________________________________
      ;************DELAY PROGRAM************;|
      ;______________________________________|
      DELAY20MS:
      PUSH 04H
      PUSH 05H
      MOV R4,#100
      DL201:MOV R5,#100
      DJNZ R5,$
      DJNZ R4,DL201
      POP 05H
      POP 04H
      RET
      DELAY100MS:
      PUSH 04H
      PUSH 05H
      MOV R4,#200
      DL1001:MOV R5,#250
      DJNZ R5,$
      DJNZ R4,DL1001
      POP 05H
      POP 04H
      RET
      DELAY250mS:
      PUSH 04H
      PUSH 05H
      PUSH 06H
      MOV R4,#12
      DL2501:MOV R5,#100
      DL2502:
      MOV R6,#100
      DJNZ R6,$
      DJNZ R5,DL2502
      DJNZ R4,DL2501
      POP 06H
      POP 05H
      POP 04H
      RET
      DELAY500mS:
      PUSH 04H
      PUSH 05H
      PUSH 06H
      MOV R4,#25
      DL5001:MOV R5,#100
      DL5002:
      MOV R6,#100
      DJNZ R6,$
      DJNZ R5,DL5002
      DJNZ R4,DL5001
      POP 06H
      POP 05H
      POP 04H
      RET
      DELAY1S:
      PUSH 04H
      PUSH 05H
      PUSH 06H
      MOV R4,#50
      DL11:MOV R5,#100
      DL12:
      MOV R6,#100
      DJNZ R6,$
      DJNZ R5,DL12
      DJNZ R4,DL11
      POP 06H
      POP 05H
      POP 04H
      RET
      DELAY2S:
      LCALL DELAY1S
      LCALL DELAY1S
      RET
      DELAY3S:
      LCALL DELAY2S
      LCALL DELAY1S
      RET
      DELAY5S:
      LCALL DELAY3S
      LCALL DELAY2S
      RET
      DELAY10S:
      LCALL DELAY5S
      LCALL DELAY5S
      RET
      ;_________________________________________________ __________________________________________________ ________

      END
      cảm biến xuất mức thấp đến vdk nha
      XEM giúp em phần dò đường nha(em chưa làm tới điều tốc chỉ cho nó chạy 1 tốc độ ban đầu)cái này em dùng 8 cặp đấy
      Last edited by hoangphat; 25-05-2009, 12:00.
      8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
      liên lạc với em qua địa chi email: Mob: 01882.076.989

      Comment


      • #4
        bạn dùng trình dịch gì thế ? viết nhầm cả main -> mian , kô có chương trình con exit .
        mà bạn có sơ đồ phần cứng kết nối , vị trí cảm biến kiểu gì nữa kô ^^!
        Đọc kô hiểu cho lắm )
        Chuyên cung cấp inverter dạng sin chuẩn
        Email :

        Comment


        • #5
          oh! em sửa mấy cái râu ria kia mà wên kiểm tra lại (chữ EXIT thay vào là START)
          em dùng Keil C để biên soạn
          em là viết như vậy mà nó ko chạy(tức là sai) giúp em mấy câu lệnh thôi còn cái phần cứng thì như nhau cả mà .em nói đại khái như vậy nếu sửa dc thỉ sửa giúp cho em đi nói đi nói lại mà chẳng giúp j dc .oh!!!
          Last edited by hoangphat; 25-05-2009, 16:22.
          8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
          liên lạc với em qua địa chi email: Mob: 01882.076.989

          Comment


          • #6
            Nguyên văn bởi hoangphat Xem bài viết
            oh! em sửa mấy cái râu ria kia mà wên kiểm tra lại (chữ EXIT thay vào là START)
            em dùng Keil C để biên soạn
            em là viết như vậy mà nó ko chạy(tức là sai) giúp em mấy câu lệnh thôi còn cái phần cứng thì như nhau cả mà .em nói đại khái như vậy nếu sửa dc thỉ sửa giúp cho em đi nói đi nói lại mà chẳng giúp j dc .oh!!!
            Trong đoạn chương trình dò đường, anh thấy chưa hợp lí chỗ sao em không gọi chương trình con mà lại nhảy đến nó, để rồi sau đó con trỏ sẽ về đâu?, ví dụ thay vì LJMP RETRAI, em nên thay là CALL RETRAI. Khi đó sau khi thực hiện 1 chương trình con nào đó, chẳng hạn RETRAI, con trỏ chương trình sẽ trở về chương trình DO_DUONG. CHuc Vui!

            Comment


            • #7
              =.= bạn post phần cứng lên đi hay giải thích ý tưởng thế nào ?
              Chứ lấy quà , gắp quà mov P3 >>> kô hiểu !!!
              Chuyên cung cấp inverter dạng sin chuẩn
              Email :

              Comment


              • #8
                thanks bác quangdụy đã chỉ dẫn
                theo pác ngchien thì em nói về phần cứng như sau:
                cảm biến:
                có 8 cặp vào các port P0 tích cực mức thấp
                2 để trước robot tránh đụng đồ vật
                2 để 2 góc trước của robot tránh 2 bên tường
                2 để 2 bên hong robot nhận biết lối 2 bên
                còn 2 cặp+1 để nhận bít có wà trước tay kẹp
                +1 để trước nhận biết thềm tránh robot rơi xuống cầu thang
                các port P3 điều khiển motor
                có 2 motor (dùng 4 replay để dk) chạy 1 kéo tay kẹp lên xuống 1 kẹp(dùng 2 relay 1 dk 1dk chìu)
                còn P1 nối với bàn phím(cái này tính sau)
                P2 chưa dùng
                vậy thôi
                h em cần giúp phần dò tức nhận và xử lý led dò
                mong cái pác giúp
                8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                liên lạc với em qua địa chi email: Mob: 01882.076.989

                Comment


                • #9
                  bạn thử kiểm tra liên tục các port xem ,nếu có thay đổi thì nhảy về chương trình con tương ứng.Thực hiện xong thì quét tiếp
                  Chuyên cung cấp inverter dạng sin chuẩn
                  Email :

                  Comment


                  • #10
                    DUNG:
                    MOV P3,#0H
                    LCALL DELAY1S
                    RET
                    TOI:
                    MOV P3,#0C0H
                    LCALL DELAY3S
                    RET
                    LUI:
                    MOV P3,#30H
                    LCALL DELAY3S
                    RET
                    QUAYPHAI90:
                    MOV P3,#90H
                    LCALL DELAY3S
                    RET
                    QUAYTRAI90:
                    MOV P3,#60H
                    LCALL DELAY3S
                    RET
                    QUAY180:
                    MOV P3,#90H
                    LCALL DELAY5S
                    RET
                    RETRAI:
                    MOV P3,#80H
                    LCALL DELAY1S
                    RET
                    REPHAI:
                    MOV P3,#40H
                    LCALL DELAY1S
                    RET
                    COWA:
                    LCALL LAYWA
                    RET
                    CUATRAI:
                    LCALL QUAYTRAI90
                    RET
                    CUAPHAI:
                    LCALL QUAYPHAI90
                    RET
                    LOTCAUTHANG:
                    LCALL LUI
                    LCALL QUAY180
                    RET
                    CANHTAY:
                    MOV P3,#8H
                    LCALL DELAY3S
                    RET
                    LAYWA:
                    MOV P3,#0C0H
                    LCALL DELAY1S
                    MOV P3,#8H
                    LCALL DELAY5S
                    MOV P3,#30H
                    LCALL DELAY1S
                    MOV P3,#60H
                    LCALL DELAY1S
                    RET
                    THAWA:
                    LCALL DELAY1S
                    MOV P3,#8H
                    LCALL DELAY5S
                    LCALL DELAY3S
                    MOV P3,#30H
                    LCALL DELAY1S
                    MOV P3,#60H
                    LCALL DELAY1S
                    RET
                    không hiểu bạn điều khiển động cơ kiểu j mà xuất mã đã chạy à ?
                    Chuyên cung cấp inverter dạng sin chuẩn
                    Email :

                    Comment


                    • #11
                      trong diễn đàn có rất nhiều bài về điều khiển động cơ .Đi thể dục đã , hehe.
                      Chuyên cung cấp inverter dạng sin chuẩn
                      Email :

                      Comment


                      • #12
                        oh! ko vấn để
                        phần dk từ chíp
                        vdk xuất mức thấp liên tục
                        khi dk thì xuất mức cao
                        phần relay
                        em dùng 2 relay cho 1 dc
                        2 tran để dk relay
                        gắn 2 trở vào 2 chân dk tran để đưa chân này lên mức cao và chờ vdk dk lên mức cao là chạy
                        chú ý: ở đây em ko điều xung để giảm tốc(đây là robot chạy trong nhà ko cần phải điều tốc)
                        Attached Files
                        Last edited by hoangphat; 27-05-2009, 12:59.
                        8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                        liên lạc với em qua địa chi email: Mob: 01882.076.989

                        Comment


                        • #13
                          Nguyên văn bởi hoangphat Xem bài viết
                          oh! ko vấn để
                          phần dk từ chíp
                          vdk xuất mức thấp liên tục
                          khi dk thì xuất mức cao
                          phần relay
                          em dùng 2 relay cho 1 dc
                          2 tran để dk relay
                          gắn 2 trở vào 2 chân dk tran để đưa chân này lên mức cao và chờ vdk dk lên mức cao là chạy
                          chú ý: ở đây em ko điều xung để giảm tốc(đây là robot chạy trong nhà ko cần phải điều tốc)
                          hehe,dùng L298 mà điều khiển chứ
                          Chuyên cung cấp inverter dạng sin chuẩn
                          Email :

                          Comment


                          • #14
                            Nguyên văn bởi hoangphat Xem bài viết
                            thanks bác quangdụy đã chỉ dẫn
                            theo pác ngchien thì em nói về phần cứng như sau:
                            cảm biến:
                            có 8 cặp vào các port P0 tích cực mức thấp
                            2 để trước robot tránh đụng đồ vật
                            2 để 2 góc trước của robot tránh 2 bên tường
                            2 để 2 bên hong robot nhận biết lối 2 bên
                            còn 2 cặp+1 để nhận bít có wà trước tay kẹp
                            +1 để trước nhận biết thềm tránh robot rơi xuống cầu thang
                            các port P3 điều khiển motor
                            có 2 motor (dùng 4 replay để dk) chạy 1 kéo tay kẹp lên xuống 1 kẹp(dùng 2 relay 1 dk 1dk chìu)
                            còn P1 nối với bàn phím(cái này tính sau)
                            P2 chưa dùng
                            vậy thôi
                            h em cần giúp phần dò tức nhận và xử lý led dò
                            mong cái pác giúp
                            CHương trình em nên viết đơn giản lại để kiểm tra từng cảm biến và từng chương trình con như sau:
                            ...
                            MAIN:
                            JB CB1,KT2
                            CALL RETRAI
                            LJMP MAIN
                            KT2:
                            JB CB2,MAIN
                            CALL REPHAI
                            LJMP MAIN
                            ....
                            Đoạn chương trình trên kiểm tra 2 cảm biến và 2 chương trình con.

                            Comment


                            • #15
                              Chưa điều chỉnh được tốc độ
                              Attached Files
                              Chuyên cung cấp inverter dạng sin chuẩn
                              Email :

                              Comment

                              Về tác giả

                              Collapse

                              hoangphat đam mê về ngành điện tử Tìm hiểu thêm về hoangphat

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

                              Collapse

                              Đang tải...
                              X