viết code assemly cho 8951 đo độ rộng xung

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • nqthieu
    Thành viên mới
    • Apr 2008
    • 7

    #16
    Nguyên văn bởi sangthai Xem bài viết
    Code dai khai nhu the nay:

    ....
    MAIN:
    MOV R1,#1
    MOV TMOD,#01H ;T0 16 BIT
    MOV TH0,#0
    MOV TL0,#0
    CLR TF0
    SETB IT0 ;INT0 VÀ INT1 TÁC ĐỘNG BẰNG CẠNH XUỐNG.
    SETB IT1
    MOV IE,#85H ;CHO PHÉP INT0 VÀ INT1 NGẮT
    CJNE R1,#0,$
    .....
    Cho em hỏi anh sangthai là MOV R1,#1 rùi CJNE R1,#0,$ có phải là đợi ngắt phải kô ạ? Mình có thể thay bằng SJMP $ được không ạ?

    Comment

    • sangthai
      Banned
      • Aug 2008
      • 137

      #17
      CJNE R1,#0,$ đúng như em nói là đợi ngắt. Lệnh này không thể thay bằng lệnh " SJMP $ " vì khi gặp lệnh này vi điều khiển bị gây mê rồi (Không làm gì cả), chỉ có nước nhấn nút reset thì vi điều khiển mới hoạt động lại.

      Comment

      • nqthieu
        Thành viên mới
        • Apr 2008
        • 7

        #18
        Anh Sangthai xem dùm em cái code ASM này với. Em cũng làm về cảm biến siêu âm đo khoảng cách. Khi có sw được nhấn em sẽ tạo ra trên P2.7 1 xung vuông. Khi nhận sóng phản xạ về em tạo ngắt rồi tính toán hiển thị lên LCD.
        File kèm theo:
        Attached Files

        Comment

        • sangthai
          Banned
          • Aug 2008
          • 137

          #19
          Mới sửa 1 chút phần mềm.
          Attached Files

          Comment

          • nqthieu
            Thành viên mới
            • Apr 2008
            • 7

            #20
            Cám ơn anh sangthai nhiều. Anh cho em hỏi thêm là trong phần hiển thị thì có phải chuyển mã giá trị trong thanh ghi R1 và R2 sang dạng khác không hay là LCD có thể hiển thị giá trị thập phân trong thanh ghi R1 và R2 luôn ạ?

            Comment

            • cdvien
              Thành viên mới
              • Feb 2008
              • 7

              #21
              híc cậu này học vdk chán quá... LCD nhận mã asc tu vdk gui xuong... den day cau tu lam nha... Hic

              Comment

              • quyenxinh
                Thành viên mới
                • Sep 2009
                • 9

                #22
                các đại ka ơi? cho em hỏi với? em mới học vdk thui, nhưng phải làm đồ án rùi, về đo độ rộng, tần số và tốc độ hiển thị trên lcd ấy. thực sự là khó hiểu quá, em k biết viết chương chình , nếu ta dùng timer 1 và timer 2 để đo nhé, đo 2 cạnh xuống ấy, ta viết chương trình cho timer 2 chạy trong 1s nhé, rùi dùng counter1 đếm tần số sau mỗi 1s , cứ lặp như vậy đến khi đo đc 400kHz. rù hiển thị lên lcd, làm như này có đo dc độ rộng xung k ạ, các anh có thể cho em chương trình dc k ạ? t2 em phải báo cáo rùi. kái môn này em kém quá, mong các anh chỉ bảo?thanks nhìu nhìu!
                |

                Comment

                • tienhuypro
                  Thành viên tích cực
                  • Mar 2009
                  • 382

                  #23
                  Nguyên văn bởi quyenxinh Xem bài viết
                  các đại ka ơi? cho em hỏi với? em mới học vdk thui, nhưng phải làm đồ án rùi, về đo độ rộng, tần số và tốc độ hiển thị trên lcd ấy. thực sự là khó hiểu quá, em k biết viết chương chình , nếu ta dùng timer 1 và timer 2 để đo nhé, đo 2 cạnh xuống ấy, ta viết chương trình cho timer 2 chạy trong 1s nhé, rùi dùng counter1 đếm tần số sau mỗi 1s , cứ lặp như vậy đến khi đo đc 400kHz. rù hiển thị lên lcd, làm như này có đo dc độ rộng xung k ạ, các anh có thể cho em chương trình dc k ạ? t2 em phải báo cáo rùi. kái môn này em kém quá, mong các anh chỉ bảo?thanks nhìu nhìu!
                  THứ 2 báo cáo mà hôm nay chưa làm gì cả àh
                  Bó chíu cho Bác.
                  Nếu sớm thì tôi có thể giúp bác đó

                  Email:
                  Tel: 0983.497.310

                  Comment

                  • quyenxinh
                    Thành viên mới
                    • Sep 2009
                    • 9

                    #24
                    hix. thì bác cứ giúp em đi mừ...........chứ k thì cứ để em mãi k hỉu sao???????????
                    giúp em với pác ơi?
                    |

                    Comment

                    • tienhuypro
                      Thành viên tích cực
                      • Mar 2009
                      • 382

                      #25
                      Nguyên văn bởi quyenxinh Xem bài viết
                      hix. thì bác cứ giúp em đi mừ...........chứ k thì cứ để em mãi k hỉu sao???????????
                      giúp em với pác ơi?
                      Giúp gì đi chăng nữa bạn cũng bị thầy cho O điểm rùi, hết hạn rồi cưng àh

                      Email:
                      Tel: 0983.497.310

                      Comment

                      • quyenxinh
                        Thành viên mới
                        • Sep 2009
                        • 9

                        #26
                        trời ạ. ng ta mới chỉ thông thui mà, thầy cũng đâu quá đến mức k cho bảo vệ chứ?
                        _k biết thì mới phải hỏi> hỏi để cho biết> biết để k phải hỏi>_
                        chán.
                        |

                        Comment

                        • tienhuypro
                          Thành viên tích cực
                          • Mar 2009
                          • 382

                          #27
                          Nguyên văn bởi quyenxinh Xem bài viết
                          trời ạ. ng ta mới chỉ thông thui mà, thầy cũng đâu quá đến mức k cho bảo vệ chứ?
                          _k biết thì mới phải hỏi> hỏi để cho biết> biết để k phải hỏi>_
                          chán.
                          Bạn ở đâu thế nếu ở HCM thì tới tui chỉ luôn cho

                          Email:
                          Tel: 0983.497.310

                          Comment

                          • quyenxinh
                            Thành viên mới
                            • Sep 2009
                            • 9

                            #28
                            hix. mình ở tận hưng yên cơ, bạn chỉ cho mình qua đây vậy?
                            |

                            Comment

                            • enter88
                              Thành viên tích cực
                              • Nov 2008
                              • 238

                              #29
                              Nguyên văn bởi sangthai Xem bài viết
                              Cái này dễ mà. Bạn sử dụng chân ngắt INT0 và INT1 của 89S52 đi, hai cái ngắt này tác động bằng cạnh xuống.
                              Bạn dùng cổng đảo 74HC14 đổi cạnh lên thành cạnh xuống để kích chân INT0,
                              Chân INT1 nối trực tiếp với tín hiệu xung.

                              Khi INT0 được tác động thì vi điều khiển sẽ ngắt, tại thời điểm này bạn cho Timer T0 chạy. Khi INT1 được tác động thì vi điều khiển lại ngắt, tại thời điểm INT1 được tác động bạn cho Timer T0 dừng chạy.
                              Sau đó lấy thời gian Timer T0 đếm được tính ra độ rộng của xung.
                              Chúc bạn thànhh công.
                              cách này để đo độ rộng xung là ổn đấy chứ .Còn nếu bạn muốn đo cả tần số và độ rộng xung thì bạn thử phương pháp này xem:
                              1--khi tín hiệu ở sườn xuống thì bạn ngắt INT0 thì bạn dừng timer1 ,tại thời điểm này bạn cho timer0 hoạt động cho đến khi xuất hiện lần ngắt INT0 tiếp theo-->từ đây sẽ tính ra dc tần số
                              2--để đo độ rộng xung thì bạn dùng cách trên tạo ngắt INT1 tính timer1

                              Comment

                              • GA_CN
                                Thành viên tích cực
                                • Dec 2008
                                • 332

                                #30
                                Đọc cuốn 8051 của bác On đi, có chỉ luôn cách dùng timer capture đo độ rộng xung luôn. Chỉ cần set bit gate lên là đo độ rộng xung bằng phần cứng luôn, tội gì phải làm như thế cho mệt.

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...