Thông báo

Collapse
No announcement yet.

Mạch mô phỏng chạy loạn, bác nào giúp em

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

  • Mạch mô phỏng chạy loạn, bác nào giúp em

    #include <REGX51.H>
    sbit Aled1=P1^0;
    sbit Aled2=P1^1;
    sbit Aled3=P1^2;
    unsigned char maled7[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
    unsigned long x;
    void delay(long time)
    {long n;
    for(n=0;n<time;n++)
    {
    ;
    }
    }
    void quetled()
    {/////////////////////////led hang tram///////////
    Aled1=1;
    P2=maled7[x/100];
    delay(100);
    Aled1=0;
    P2=0xff;
    ////////////////////////led hang chuc/////////////
    Aled2=1;
    P2=maled7[(x/10)%10];
    delay(100);
    Aled2=0;
    P2=0xff;
    //////////////////////////led hang don vi//////////////
    Aled3=1;
    P2=maled7[x%10];
    delay(100);
    Aled3=0;
    P2=0xff;
    }
    void ngatngoai0(void) interrupt 0
    {
    x++;
    }
    void main()
    {
    x=0;
    EA=1;
    EX0=1;
    IT0=1;
    while(1)
    {
    quetled();
    if(x>999)
    x=0;
    }
    }
    Code như trên sao nạp vô mô phỏng bằng pzotues no chạy loạn cả lên là sao các bác, giúp hộ em, mạch đếm các bác ợ

  • #2
    bạn không đưa mạch nguyên lý lên,nhưng mình đoán bạn dùng một phím nhấn nối vào chân INT0,mỗi lần ngắt ngoài xảy ra
    (ấn phím x tăng lên 1 đơn vị)nhưng bạn không chống dội phím khi có ngắt xảy ra biến x sẽ tăng lên rất nhanh,vì vậy bạn cần phải chỉnh lại code trong hàm ngắt.

    Comment


    • #3
      em mới tìm dc cái code thôi bác gắn vào chạy thử, nếu chỉnh thì chỉnh làm sao hả bác, em mới tìm hiểu nên mới bik tàm tạm thôi. Mạch nguyên lý này cần transistor đóng mở từng led 7 đoạn phải k bác, chắc em vẽ mạch bị sai hay sao ý

      Comment


      • #4
        tự vẽ loạn 1 cái mạch rồi kiếm 1 cái code ở đâu cho vào nó chạy loạn là còn may, có mà nó ko chạy j thì đúng hơn. mới học cũng ko ai học mò thế này
        Website chính thức đổi địa chỉ website thành
        Mời các bạn ghé thăm !!!

        Comment


        • #5
          Bác nói thế nào là vẽ loạn, bác đừng cmt linh tinh vào topic của mình, mạch này mình tìm trên mạng công thêm kiến thức mình tìm hiểu mình vẽ, bác k tư vấn thì thoy đi ra topic khác đi bác

          Comment


          • #6
            code bạn mình chỉnh lại một chút làm thật thì cần chỗng nhiễu cho phím nhấn
            Attached Files

            Comment


            • #7
              Nguyên văn bởi lonelyboy26 Xem bài viết
              #include <REGX51.H>
              sbit Aled1=P1^0;
              sbit Aled2=P1^1;
              sbit Aled3=P1^2;
              unsigned char maled7[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x9 0};
              unsigned long x;
              void delay(long time)
              {long n;
              for(n=0;n<time;n++)
              {
              ;
              }
              }
              void quetled()
              {/////////////////////////led hang tram///////////
              Aled1=1;
              P2=maled7[x/100];
              delay(100);
              Aled1=0;
              P2=0xff;
              ////////////////////////led hang chuc/////////////
              Aled2=1;
              P2=maled7[(x/10)%10];
              delay(100);
              Aled2=0;
              P2=0xff;
              //////////////////////////led hang don vi//////////////
              Aled3=1;
              P2=maled7[x%10];
              delay(100);
              Aled3=0;
              P2=0xff;
              }
              void ngatngoai0(void) interrupt 0
              {
              x++;
              }
              void main()
              {
              x=0;
              EA=1;
              EX0=1;
              IT0=1;
              while(1)
              {
              quetled();
              if(x>999)
              x=0;
              }
              }
              Code như trên sao nạp vô mô phỏng bằng pzotues no chạy loạn cả lên là sao các bác, giúp hộ em, mạch đếm các bác ợ
              code này là của e mà. bác gửi mô phỏng lên xem sao. e fomat ổ cứng nên mất hết rồi
              Nguyễn Huy Biên - 01649 802 694
              gmail :

              Comment


              • #8
                Nguyên văn bởi dtcn_112 Xem bài viết
                code bạn mình chỉnh lại một chút làm thật thì cần chỗng nhiễu cho phím nhấn
                vs việc dùng ngắt e nghĩ ko cần chống nhiễu. chỉ cần 1 điện trở kéo duơng để phân biệt mức logic là ok thôi bác
                Nguyễn Huy Biên - 01649 802 694
                gmail :

                Comment


                • #9
                  Nguyên văn bởi bienhou Xem bài viết
                  vs việc dùng ngắt e nghĩ ko cần chống nhiễu. chỉ cần 1 điện trở kéo duơng để phân biệt mức logic là ok thôi bác
                  ko phải chống nhiễu mà là chống nảy debounce đó. Trình phục vụ ngắt làm có mỗi một dòng thì bảo đảm nhấn 1 phát nó nhảy chục phát

                  Comment


                  • #10
                    Nguyên văn bởi chung1608 Xem bài viết
                    ko phải chống nhiễu mà là chống nảy debounce đó. Trình phục vụ ngắt làm có mỗi một dòng thì bảo đảm nhấn 1 phát nó nhảy chục phát
                    e cũng đã làm thực tế qua rồi, chưa thấy hiện tượng gì
                    Nguyễn Huy Biên - 01649 802 694
                    gmail :

                    Comment


                    • #11
                      có thể do 1 lý do nào đó chú chưa gặp trường hợp đấy thôi, vs code ngắt thế kia nó nhảy vài chục số là binh thường. vẫn phải chống nhiễu.
                      chân ngắt vs các chân bình thường làm button nó chỉ khác cái kia là có ngắt thì nhảy ngay tới chương trình phục vụ ngắt thôi chứ đều nhiễu như nhau nếu ko chống
                      Website chính thức đổi địa chỉ website thành
                      Mời các bạn ghé thăm !!!

                      Comment

                      Về tác giả

                      Collapse

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

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

                      Collapse

                      Đang tải...
                      X