cần giúp cấu trúc vòng lặp

Collapse
X
 
  • Giờ
  • Show
Clear All
new posts
  • mykhanh
    Thành viên mới
    • Feb 2014
    • 28

    #1

    cần giúp cấu trúc vòng lặp

    Mình viết chương trình cấu trúc vòng lặp dùng C cho 8051 như sau:
    while(1)
    {
    if (!P3^X) //or while(P3^X)
    {...
    }
    if (!P3^Y) //or while(P3^Y)
    {....
    }
    if (!P3^Z) //or while(P3^Z)
    {....
    }
    }
    nhưng tại sao khi VĐK kiểm tra được 1 điều kiện thỏa mãn thì làm các lệnh trong điều kiện đó nhưng nếu điều kiện thứ 2 xuất hiện và điều kiện thứ nhất không còn thì VĐK không tiếp tục thực hiện điều kiện thứ 2 đó nhỉ?
    Các Pro giải thích giúp với.
    thank!
  • Trung Kiên
    Thành viên mới
    • Feb 2010
    • 25

    #2
    Bạn biết viết lệnh IF...trong exel không?
    Bạn có 3 cái IF. Nếu cái IF thứ nhất = True(1), thì làm cái gì? = False (0) thì làm cái IF thứ 2.
    Nếu cái IF thứ 2 = True(1), thì làm cái gì? = False (0) thì làm cái IF thứ 3.

    Comment

    • mykhanh
      Thành viên mới
      • Feb 2014
      • 28

      #3
      tức là viết kiểu
      if(!P3^X)
      {
      ...
      }
      else
      {
      if(!P3^Y)
      {
      ...
      }
      else
      if(P3^Z)
      {
      ...
      }
      }
      phải không bạn, mình không biết exel!

      Comment

      • Trung Kiên
        Thành viên mới
        • Feb 2010
        • 25

        #4
        Bạn diễn giải bằng lời đi nào:
        Nếu P3=X.......Thì làm cái gi?P3=Y.......Thì làm cái gi? P3=Z.......Thì làm cái gi?

        Comment

        • mykhanh
          Thành viên mới
          • Feb 2014
          • 28

          #5
          là như thế này.
          Mình quét 3 chân của P3.
          nếu chân 1 được kéo xuống GND thì chạy 1 chương chình (chương trình này có lưu biến x, tăng giảm do mình dùng)
          nếu chân 2 được kéo xuống GND thì chạy 1 chương chình (chương trình này có lưu biến y, tăng giảm do mình dùng)
          nếu chân 3 được kéo xuống GND thì chạy 1 chương chình (chương trình này có lưu biến z, tăng giảm do mình dùng)
          chương trình liên tục quét các chân (cùng 1 lúc chỉ 1 chân được nối với GND, cái này do phần cứng)
          vấn đề là làm sao khi các điều kiện xuất hiện thì các biến phải được lưu và tiếp tục làm việc khi các điều kiện xuất hiện.
          vì thế mình dùng vòng lặp
          While(1)
          if(...)
          {...
          }
          else{
          if()
          {...}
          else...
          {if()
          {
          }
          }

          Comment

          Về tác giả

          Collapse

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

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

          Collapse

          Đang tải...