RP Store Tìm linh kiện theo mã, gửi BOM nhận báo giá Gửi BOM

Giúp mình! Ngắt trong 8051 dùng C.

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • thanhtoanshs
    Thành viên mới
    • Sep 2011
    • 243

    #1

    Giúp mình! Ngắt trong 8051 dùng C.

    Mình có ý tưởng như thế này: 8 LED nối với 1 Port bất kỳ của 8051. Bình thường cấp nguồn thì các LED chỉ sáng, khi bấm nút 1 thì 8LED nháy theo kiểu thứ nhất hết chu kì thì dừng lại sáng hết, bấm nút 2 thì nó nháy kiểu 2 hết chu kì dừng lại và chỉ sáng.
    Có ai giúp mình ko?
    0979.316.957
    0905.028.957
  • mast090
    Thành viên tích cực
    • Oct 2010
    • 1018

    #2
    cái này có j đâu, bạn cứ xuất dữ liệu ra bình thường thôi, chờ có công tắc ấn thì xuất dữ liệu, còn hiệu ứng thì bạn tự nghĩ, đây là bài đầu tiên va cũng là cơ bản nhất của vdk, xem lại nhé
    Website chính thức đổi địa chỉ website thành
    Mời các bạn ghé thăm !!!

    Comment

    • thanhtoanshs
      Thành viên mới
      • Sep 2011
      • 243

      #3
      Nguyên văn bởi mast090 Xem bài viết
      cái này có j đâu, bạn cứ xuất dữ liệu ra bình thường thôi, chờ có công tắc ấn thì xuất dữ liệu, còn hiệu ứng thì bạn tự nghĩ, đây là bài đầu tiên va cũng là cơ bản nhất của vdk, xem lại nhé
      Thì biết là vậy nhưng mà mình mới bắt đầu nên mình cần code ví dụ luôn. Mình tự học toàn bằng ví dụ thôi
      0979.316.957
      0905.028.957

      Comment

      • thanhtoanshs
        Thành viên mới
        • Sep 2011
        • 243

        #4
        Nguyên văn bởi thaotram92
        nó dây.he.moi thi vxl xong con cai file
        \

        Cảm ơn bạn! Nhưng mà cái quái gì dzậy bạn. Cái đó có liên quan gì tới nút ấn đâu. toàn là các hiệu ứng LED đơn thôi. Mà ASM nữa chứ.
        Mình tự mày mò viết được như thế này (viết cho xe máy) chưa tối ưu lắm, các bạn có gì góp ý nha:
        Bật chìa khóa P2 và P3 các LED lướt vèo -> P1 chớp lên->tắt hết->sáng dần lên->tắt dần ngược lại->sáng hết. Đề máy P2,P3 lướt theo hiệu ứng 1 rồi sáng hết. Bóp phanh P2,P3 lướt theo hiệu ứng 2, nhả phanh thì sáng miết.

        Video:

        Code:
        BT4_Do xe may.C
        0979.316.957
        0905.028.957

        Comment

        • hermex2009
          Thành viên chính thức
          • Nov 2009
          • 34

          #5
          cái này không cần dùng ngắt làm gì cho phức tạp. bạn cứ làm 2 chương trình con cho 2 kiểu quét. khi thấy phím 1 được ấn thì gọi đến chương trình 1. tương tự với nút kia gọi chương trình 2.

          Comment

          • gadgetvn
            Thành viên chính thức
            • Feb 2010
            • 68

            #6
            cái này dùng lệnh JB hay JNB là ok mà. Cái này viết ASM thi dễ vô cùng

            Comment

            • thanhtoanshs
              Thành viên mới
              • Sep 2011
              • 243

              #7
              Nguyên văn bởi hermex2009 Xem bài viết
              cái này không cần dùng ngắt làm gì cho phức tạp. bạn cứ làm 2 chương trình con cho 2 kiểu quét. khi thấy phím 1 được ấn thì gọi đến chương trình 1. tương tự với nút kia gọi chương trình 2.
              Uhm mình cũng nghĩ như dzậy. Nhưng mà: khi bấm nút 1 - chương trình con 1 chạy - không bấm nút thì tất cả LED sáng - Bấm nút 2 - ct2 chạy - không bấm tất cả LED tắt. Thì bạn làm sao.
              0979.316.957
              0905.028.957

              Comment

              • hermex2009
                Thành viên chính thức
                • Nov 2009
                • 34

                #8
                Nguyên văn bởi thanhtoanshs Xem bài viết
                Uhm mình cũng nghĩ như dzậy. Nhưng mà: khi bấm nút 1 - chương trình con 1 chạy - không bấm nút thì tất cả LED sáng - Bấm nút 2 - ct2 chạy - không bấm tất cả LED tắt. Thì bạn làm sao.
                cái này cũng đơn giản mà. ví dụ các led của bản dc nối vói port P2 nhé. 2 nút ấn là nut_1 và nut_2, chương trình con cho 2 nút là ct1 và ct2.

                void main()
                {
                ..... //khởi tạo, đặt biến...
                while(1)
                {
                P2 =1; //cho các led đều sáng nếu ko bấm nút
                if(nut_1 =0) //nếu nút 1 được bấm
                ct1(); //thực hiện chương trình con 1
                if(nut_2 = 0) //nếu nút 2 được bấm
                ct2(); // thực hiện ct con 2
                }
                }

                Comment

                • thanhtoanshs
                  Thành viên mới
                  • Sep 2011
                  • 243

                  #9
                  Nguyên văn bởi hermex2009 Xem bài viết
                  cái này cũng đơn giản mà. ví dụ các led của bản dc nối vói port P2 nhé. 2 nút ấn là nut_1 và nut_2, chương trình con cho 2 nút là ct1 và ct2.

                  void main()
                  {
                  ..... //khởi tạo, đặt biến...
                  while(1)
                  {
                  P2 =1; //cho các led đều sáng nếu ko bấm nút
                  if(nut_1 =0) //nếu nút 1 được bấm
                  ct1(); //thực hiện chương trình con 1
                  if(nut_2 = 0) //nếu nút 2 được bấm
                  ct2(); // thực hiện ct con 2
                  }
                  }
                  Uhm để mình xem lại
                  0979.316.957
                  0905.028.957

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...