Thông báo

Collapse
No announcement yet.

chương trình delay

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

  • chương trình delay

    em mới học 89c51 nên cũng chưa hiểu rõ hết mấy anh chỉ giúp em với .em muốn viết 1 chương trình delay mà thời gian delay phu thuộc vào 1 port bất kỳ chẳng hạn như port P0 mấy anh chỉ em với nếu có code = ASM thi cho em xin tham khảo nha

  • #2
    DL300ms:
    PUSH 05
    MOV TMOD,#01H ; TIMER 0 MODE 1
    MOV R5,#6
    X1: MOV TH0,#HIGH(-50000)
    MOV TL0,#LOW(-50000)
    SETB TR0
    CLR TF0
    NB TF0,$
    DJNZ R5,X1
    POP 05
    RET
    Last edited by lonelycat; 30-03-2009, 12:15.
    Nick yahoo: nguyenphuocho
    Mail:
    Web:
    PICKIT2

    Comment


    • #3
      DELAY: trễ khoảng 500ms
      mov R1,#250
      del1: mov R2,#250
      del: djnz R2,del1
      djnz R1,del1
      ret
      end

      Comment


      • #4
        bac nao biet cach queyt led don jup em voi

        Comment


        • #5
          gui cho em bai quet led don nhe. em cam on truoc nhe

          Comment


          • #6
            em đang học lập trình nhưng chưa quét được led vậy bác nào biết giúp em với. em cảm ơn trước nhe.

            Comment


            • #7
              Anh bạn này đặt câu hỏi xong rồi bỏ chạy, không thèm nghe câu trả lời.
              Có mạch chưa ? Cho xem phát rồi mới đưa ra cách quét đúng được. OK !

              Comment


              • #8
                Nguyên văn bởi thao88 Xem bài viết
                em đang học lập trình nhưng chưa quét được led vậy bác nào biết giúp em với. em cảm ơn trước nhe.
                -Bạn phải hiểu rằng VDK chỉ xuất ra hai mức điện áp 5V (mức 1) và 0V (mức 0), ở các CT quét LED của bạn cũng chỉ cần hai mức điện áp này để điểu khiển các trạng thái sáng, tắt của LED như bạn mong muốn.
                -Khi muốn điều khiển một số LED mắc vào một cổng nào đó của VDK sáng, tắt nhấp, nháy... theo ý của bạn thì phải biết dùng những lệnh nào để thu được kết quả như vậy, muốn như thế thì phải hiểu được tác dụng của các lệnh.
                -Một lưu ý nhỏ khi viết CT là bạn phải biết trước được khi thực hiện xong một lệnh nào đó thì ta thu được kết quả thế nào và lệnh nào sẽ được thực hiện tiếp theo (muốn làm được như thế thì phải nhắc lại là "Phải hiểu được tác dụng của các lệnh").
                -Cuối cùng thì bạn nên vào trang wed sau tham khảo các bài quét LED được trình bày rất dễ hiểu: http://www.giaoducvn.net/codientu/ki...04/4vdk001.htm
                Chúc thành công.
                Nhớ quá khứ buồn rơi nước mắt.
                Nhìn tương lai lạnh buốt sống lưng.
                Y!M: nhamdtk4.

                Comment


                • #9
                  Quet led ma tran ha ban?thao88

                  Comment


                  • #10
                    Ban can code va mo phong minh gui cho minh cung vua nghien cuu lam xong!

                    Comment


                    • #11
                      dia chi gmail cua minh la thewalldthy@gmail.com co gi thi lien lac voi minh ban thao88 ak: so phone cua minh la 01663306686

                      Comment


                      • #12
                        Nguyên văn bởi lonelycat Xem bài viết
                        DL300ms:
                        PUSH 05
                        MOV TMOD,#01H ; TIMER 0 MODE 1
                        MOV R5,#6
                        X1: MOV TH0,#HIGH(-50000)
                        MOV TL0,#LOW(-50000)
                        SETB TR0
                        CLR TF0
                        NB TF0,$
                        DJNZ R5,X1
                        POP 05
                        RET
                        bạn ơi, cái code delay trên lệnh PUSH và POP là dùng như thế nào vậy bạn?

                        Comment


                        • #13
                          lệnh push để đẩy nội dung hiện tại của thanh ghi vào stack, lúc đó bạn có thể dùng thanh ghi để làm việc khác trong trường hợp này là dùng cho hàm delay,sau đó lệnh pop sẽ trả lại nội dung cũ của thanh ghi

                          Comment


                          • #14
                            Nguyên văn bởi trimen Xem bài viết
                            lệnh push để đẩy nội dung hiện tại của thanh ghi vào stack, lúc đó bạn có thể dùng thanh ghi để làm việc khác trong trường hợp này là dùng cho hàm delay,sau đó lệnh pop sẽ trả lại nội dung cũ của thanh ghi
                            vậy là nó sẽ như câu lệnh của bạn như trên thì nó sẽ PUSH rồi POP cứ như vậy 5 lần hả bạn?

                            Comment


                            • #15
                              push đi kèm với địa chỉ thanh ghi bạn, push 05 là đẩy thanh ghi có địa chỉ 05 vào stack và pop tuơng tự

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X