Thông báo

Collapse
No announcement yet.

Nạp vào chạy liền không đợi lệnh

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

  • Nạp vào chạy liền không đợi lệnh

    while (BUT == 1)
    while (1)
    {
    // Place your code here
    LED= LED^1;
    delay_ms(1000);
    };
    }
    Em chạy mô phỏng bằng Proteus nhưng chẳng hiểu sao. không nhấn nút đèn cũng chớp tắt liên tục nhờ các anh giúp. có phải tại chương trình mô phỏng hay do lệnh sai .

  • #2
    Bạn xem lại code đi! Mô phỏng đơn giản thì proteus ko sai đâu

    Comment


    • #3
      thêm dấu ; vào lệnh đầu đi xem có đc không

      Comment


      • #4
        while (1)
        while (BUT == 1)
        {
        // Place your code here
        LED= LED^1;
        delay_ms(1000);
        };
        }

        đảo 2 dòng đầu lại xem tình hình thế nào bạn

        Comment


        • #5
          - Yêu cầu của bạn cần là gì?
          1. Nhấn phím>> chớp led, Phím nhả>> Led tắt ngay lập tức???
          2. Nhấn phím>>nhả phím>>chớp led một lúc rồi tắt???
          - theo yêu cầu 1: viết giống của bạn achut nhé, mà khối while(1) nên có "{};" , thay "LED= LED^1;" bằng 2 dòng lệnh xen kẽ delay như ở dưới đây để tránh tình trạng mất kiểm soát trạng thái của led là tắt hay sáng khi ta nhả phím ( vì khoảng thời gian giữa các lệnh là rất nhỏ). Khi dùng một lệnh như của bạn, sẽ sảy ra trường hợp: khi thôi nhấn phím, led sẽ luôn sáng hoặc luôn tắt.

          while(1)
          {
          while(BUT==1)
          {
          // Place your code here
          LED= 0; // tắt led
          delay_ms(1000);
          LED=1; // sáng led
          delay_ms(1000);
          };
          };

          - Theo yêu cầu 2:
          while(1)
          {
          while(BUT==1)
          {
          while(BUT==1){};
          // Place your code here
          LED= 0; // tắt led
          delay_ms(1000);
          LED=1; // sáng led
          delay_ms(1000);
          };
          };

          - Nếu bạn thử code mà vẫn không được thì bạn nên kiểm tra lại mạch cách nối phím nhấn ( phím luôn ở mức logic "1" nên chưa nhấn lần nào nó sẽ chớp led liên tục)
          Chúc thành công!
          Đối với Tôi Đam mê là yếu tố không thể thiếu để quyết định sự Thành Công ...!
          Gmail: -Mobile: 0989.194.472

          Comment


          • #6
            Bạn dùng CodeVision hả?

            Comment


            • #7
              Nguyên văn bởi tadbkhn Xem bài viết
              Bạn dùng CodeVision hả?
              Em dùng codevision....sao anh lại hỏi vậy lỗi gì vậy anh?

              Comment


              • #8
                Gửi Code lên đi! Đã xác lập cổng vào/ra chưa?
                Dạy kèm thiết kế mạch: Orcad, Proteus, Altiudesign
                Dạy kèm lập trình C/Assembly cho 8051, AVR
                Nhận thiết kế mạch điện tử, đồ án tự động hóa.
                Email :

                Comment


                • #9
                  Nguyên văn bởi kitty511 Xem bài viết
                  while (BUT == 1)
                  while (1)
                  {
                  // Place your code here
                  LED= LED^1;
                  delay_ms(1000);
                  };
                  }
                  Em chạy mô phỏng bằng Proteus nhưng chẳng hiểu sao. không nhấn nút đèn cũng chớp tắt liên tục nhờ các anh giúp. có phải tại chương trình mô phỏng hay do lệnh sai .
                  Thế này:
                  * lệnh While(but==1) điều này có thể luôn đúng lúc bật VĐK lên ( trong con AVR có trở treo thì phải )
                  * Thành ra: lệnh thứ 2 được thực hiện ngay sau đó: While (1){...}; đây là một lệnh lặp vô điều kiện, cái nút bấm bên trên kia không có tác dụng gì.
                  * Như vậy: có 2 chỗ cần xem lại:
                  - 1. Nút bấm thường kéo âm, và xác lập trở treo bên trong của AVR.
                  - 2. đổi đoạn code trên thành:

                  while(1)
                  {
                  while (but==1)
                  {
                  // Place your code here
                  LED= LED^1;
                  delay_ms(1000);
                  };
                  }
                  hoặc:
                  while(but==1){}
                  while (1)
                  {
                  // Place your code here
                  LED= LED^1;
                  delay_ms(1000);
                  };
                  Dạy kèm thiết kế mạch: Orcad, Proteus, Altiudesign
                  Dạy kèm lập trình C/Assembly cho 8051, AVR
                  Nhận thiết kế mạch điện tử, đồ án tự động hóa.
                  Email :

                  Comment


                  • #10
                    nối thêm mass sau nút ấn nhé.Vừa bị y như thế, ấn xong chân chip cứ giữ ở mức 1 nên vòng lặp vô điều kiện. Bạn phải nối nó với mass để nó chỉ lên 1 khi ấn nút thôi. Nhìn kỹ trong mô phỏng cũng thấy.

                    Comment


                    • #11
                      sửa lại như sau :
                      while(BUT==1);

                      Comment

                      Về tác giả

                      Collapse

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

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

                      Collapse

                      • nhathung1101
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi nhathung1101
                        Ngoại ngữ là không thể thiếu, nhất là làm việc với công nghệ.

                        Nhưng học để tán gái hay để đọc datasheet, manual là chuyện cần quan tâm.

                        Và đọc ở nguồn nào đáng tin cậy, chứ cứ lên tictok hay facebook học lỏm thì...
                        hôm nay, 22:18
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Bác nói rất khách quan và chính xác. Ngoại ngữ là chìa khóa thăng tiến dù làm gì. Chả thế mà nay nước mình dạy tiếng Anh từ tiểu học.

                        Nhớ hồi năm 2006 em ra Hải Phòng, Hải Dương tìm việc, thời đó ở Bình Dương lương công...
                        hôm nay, 14:51
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Cảm ơn bạn, ĐT cũng có ý nghĩ như vậy.

                        Thực ra, lỗi của hãng đó ( gọi là hãng vì không chỉ một model sản phẩm) là về phần cứng, ĐT tuy không biết về lập trình phần mềm nhưng cũng thấy rằng sẽ chẳng khó khăn gì đáng...
                        hôm nay, 14:39
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Dạ, bác bảy mấy tuổi đời rồi cũng không kém bố cháu bao nhiêu. Tuổi nghề thì bác cũng đáng tuổi cha chú.

                        Nhưng 2 điều trên thì chưa hẳn đã đáng quí và đáng tôn trọng bằng việc bác rất nhiệt tình chia sẻ kinh nghiệm chuyên...
                        hôm nay, 14:28
                      • bqviet
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi bqviet
                        Đúng, nếu chú tâm thì chỉ cần mỗi tiếng Việt là đã khá đủ để làm đa số công việc thông thường, ở thời đại ngày nay khi tài liệu sách vở phương tiện thông tin liên lạc đã nhiều. Nhưng cũng chính ở thời nay giao lưu các nước nhiều...
                        Hôm qua, 20:26
                      • mèomướp
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi mèomướp
                        Dạ cháu nghĩ chú dinh... cứ mạnh dạn gửi thư đi ạ, chú có thể gửi bằng văn bản in chuyển phát nhanh sẽ có giá trị hơn. Vấn đề chưa hẳn là cần hãng làm gì đó, mà chỉ đơn giản là mình cảm thấy nhẹ lòng vì đã làm những việc bản...
                        Hôm qua, 12:32
                      • vi van pham
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi vi van pham
                        Những lần hắt hơi sổ mũi làm tôi mệt lã, phải dùng rượu uống để ngũ. Tôi cũng đang uống rượu 1 mình, viết vài dòng này cho em ( có lẽ dt chỉ bằng tuổi em tôi).

                        Dinh thuong dang đi vào vết xe đổ của tôi. Càng chứng minh, có...
                        20-02-2025, 21:31
                      • bqviet
                        Trả lời cho Hỏi về cách hàn linh kiện ( giúp tớ với )
                        bởi bqviet
                        Thiết nghĩ thi thoảng bác lên đây chia xẻ ít kinh nghiệm cũng vui rồi. Còn chuyện con người sinh lão bệnh tử là thường, sống cùng với quy luật đó thôi. Bqv nhớ trước đây bác từng kể về chuyện rang chì ô-xít bằng chảo để phục hồi bình điện, đấy cũng là thành quả đáng nể phục ở thời kỳ thiếu thốn đó.
                        20-02-2025, 17:22
                      • dinhthuong80
                        Trả lời cho Tiếng Anh cho người Việt
                        bởi dinhthuong80
                        Tiếng Anh, Đình Thường phải nói là rất tệ, khiến việc giao tiếp đời thường thôi cũng khó chứ nói gì về kĩ thuật.

                        Nhân tiện, nhờ các bạn, các bác xem giúp thư ĐT viết thế này liệu có thể gửi tới địa chỉ nhận hay chăng,...
                        20-02-2025, 11:52
                      • vi van pham
                        Trả lời cho Hỏi về cách hàn linh kiện ( giúp tớ với )
                        bởi vi van pham
                        Uống rượu 1 mình, thấy trang này nhớ lại cách đây vài chục năm hàn thiếc với inox cực kỳ khó, phải dùng acid Hcl tác dụng lên kẻm Zn để có Zncl2 làm thuốc trợ hàn, lúc đó làm gì có acid Hcl và thuốc trợ hàn?

                        Cái khó bó cái...
                        19-02-2025, 23:05
                      Đang tải...
                      X