Thông báo

Collapse
No announcement yet.

Giúp mình bài tập này với

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

  • Giúp mình bài tập này với

    Mọi người giúp mình bài này với, bài này sử dụng chương trình ngắt, nhưng mà mình vẫn chưa biết nhiều về chương trình ngắt, mong mọi người giải giúp.
    ----Một ứng dụng trên bộ AT89S51 có 5 led đơn L1..L5. Có 3 nút RUN, PAUSE, STOP.
    - Khi bật điện hoặc nhấn stop cả 5 led đều tắt.
    - khi nút RUN được nhấn, một led sáng chạy theo hướng L1...L5 và tự lặp lại theo hướng này. Thời gian sáng led là 10s
    - Khi nút PAUSE được nhấn, sự dịch chuyển điểm sáng sẽ dừng lại tại led đang sáng, cho đến khi nút RUN được nhấn.
    Cảm ơn mọi người!

  • #2
    Nguyên văn bởi toilatoi2004 Xem bài viết
    Mọi người giúp mình bài này với, bài này sử dụng chương trình ngắt, nhưng mà mình vẫn chưa biết nhiều về chương trình ngắt, mong mọi người giải giúp.
    ----Một ứng dụng trên bộ AT89S51 có 5 led đơn L1..L5. Có 3 nút RUN, PAUSE, STOP.
    - Khi bật điện hoặc nhấn stop cả 5 led đều tắt.
    - khi nút RUN được nhấn, một led sáng chạy theo hướng L1...L5 và tự lặp lại theo hướng này. Thời gian sáng led là 10s
    - Khi nút PAUSE được nhấn, sự dịch chuyển điểm sáng sẽ dừng lại tại led đang sáng, cho đến khi nút RUN được nhấn.
    Cảm ơn mọi người!
    bài này ko phải sử dụng ngắt chỉ là dừng giữa chừng khi đang hoạt động thôi nên chỉ việc đi kiểm tra nút nhấn pause thường xuyên, bạn có thể tự viết cái này đơn giản, viết ko chạy thì up lên đây sửa lỗi

    Comment


    • #3
      Như trong đề bài của mình thì nút PAUSE dùng chân ngắt INT0, nên mình nghĩ là dùng ct ngắt. Còn led sáng trong 10s mình nghĩ là dùng hàm delay 10s nên không biết cách cho nó kiểm tra nút PAUSE liên tục. Bạn có bài giải gửi lên giúp mình luôn

      Comment


      • #4
        Nguyên văn bởi toilatoi2004 Xem bài viết
        Như trong đề bài của mình thì nút PAUSE dùng chân ngắt INT0, nên mình nghĩ là dùng ct ngắt. Còn led sáng trong 10s mình nghĩ là dùng hàm delay 10s nên không biết cách cho nó kiểm tra nút PAUSE liên tục. Bạn có bài giải gửi lên giúp mình luôn
        bài tập thì phải tự làm, sai thì sửa

        Comment


        • #5
          Làm đại như vầy ko bik sai chỗ nào, mong mấy huynh giúp
          PAUSE BIT P3.2
          RUN BIT P3.1
          ORG 000BH
          JMP MAIN
          ORG 000BH
          MOV IE,#10000001B
          X0: JB RUN,X0
          RETI
          MAIN:
          JB RUN,MAIN
          X1: MOV P1,#11111110B
          CALL DELAY10S
          MOV P1,#11111101B
          CALL DELAY10S
          MOV P1,#11111011B
          CALL DELAY10S
          MOV P1,#11110111B
          CALL DELAY10S
          MOV P1,#11011111B
          CALL DELAY10S
          JMP X1
          END

          Comment


          • #6
            Bạn thêm dòng lệnh quay trái quay phải rồi delay, bỏ bớt mấy lệnh mov kia đi dài quá, thêm vào đó bạn khởi tạo dò phím bấm.
            |

            Comment


            • #7
              Khởi tạo dò phím bấm là sao bạn ? Mình chưa gì về ngắt hết, cảm ơn bạn nhiều.

              Comment


              • #8
                ko ai giúp hết, sắp thi rồi

                Comment

                Về tác giả

                Collapse

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

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

                Collapse

                Đang tải...
                X