Thông báo

Collapse
No announcement yet.

Giúp mạch đếm sản phẩm từ 0-99

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

  • #16
    Nguyên văn bởi romance_qt Xem bài viết
    Cái này mà xài VDK thì đếm thì củng đơn gian mà, đại khái là bạn xài 1 port thôi cung đc, sau đó đếm tăng p đó lên, byte thấp quan IC giải mã 4 bit ta sẽ có số đơn vị, byte cao sẽ có số hàng chục. đếm tràn thì tự động lặp lại, mới học nên làm như vậy củng đc.
    Đã dùng đến VĐK thì còn sài tới IC giải mã làm gì hả bác?

    Comment


    • #17
      Nguyên văn bởi lonelyboy26 Xem bài viết
      Bác nói em hiểu gì em chết liền, em đang lò mò tìm hiểu mà mãi chả bik dc j, k dc học vất vả quá, bác nào giúp em định hướng code thế nào vs, em pót mach nguyên lý lên cho cac bác xem này[ATTACH=CONFIG]52630[/ATTACH]
      Bạn vào tham khảo luồng này đi:

      Comment


      • #18
        Nguyên văn bởi Ck33spkt Xem bài viết
        Đã dùng đến VĐK thì còn sài tới IC giải mã làm gì hả bác?
        Ý mình nói là cho những ng mới học vdk chứ đã làm về vdk rồi thì cần j IC giải mã nữa, mình nói đó là cho những ng chưa quen vdk, chưa lập trình đc nhiều, nên mới xai IC giải mã cho thuật toán đơn gian, chú hiểu chưa???????
        _--------------------------------------------------

        **** ------------------------------------------***

        Comment


        • #19
          Nguyên văn bởi romance_qt Xem bài viết
          Ý mình nói là cho những ng mới học vdk chứ đã làm về vdk rồi thì cần j IC giải mã nữa, mình nói đó là cho những ng chưa quen vdk, chưa lập trình đc nhiều, nên mới xai IC giải mã cho thuật toán đơn gian, chú hiểu chưa???????
          Hóa ra là bác nói ý như thế. Xin lỗi bác vì em hiểu lầm ý bác! Nhưng bác cũng nên xem lại, vì bác diễn đạt bằng những câu chữ như trên thì em chắc rằng không chỉ em mà sẽ có rất nhiều người hiểu lầm ý bác đấy!
          Thân !

          Comment


          • #20
            chưa chắc đâu bác ơi...!!
            có người làm chỉ cần 1 port mà đk đc 8 led 7 vạch đấy.!! còn có thể mở rộng lên đến 16 led đấy ạ..
            mà cái này chỉ có người làm nhiều mới làm thôi.
            họ cho 4 bít thấp xuất dữ liệu 7447.
            3 bít tiếp chọn kênh cho 138.
            bít trọng số cao nhất làm tín hiệu điều khiển enable cho 138.
            cái này xử lý nhiều nhưng toàn là xử lý bit nên tốc độ vẫn ok..

            Comment


            • #21
              Code:
              #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,0x90};
              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;
              }
              }
              mình mới làm cho đứa em hôm qua. bạn thêm bớt vào là ok
              Nguyễn Huy Biên - 01649 802 694
              gmail :

              Comment


              • #22
                Nguyên văn bởi bienhou Xem bài viết
                Code:
                #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,0x90};
                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;
                }
                }
                mình mới làm cho đứa em hôm qua. bạn thêm bớt vào là ok
                TKS nhé, để tớ tham khảo, mà code này có chạy dc k bợn, tớ nhìn sơ qua tớ k hiểu vài thứ rồi đấy @@, để tớ suy nghĩ xong lên hỏi. Pác nào cho em yahoo em liên lạc cho dễ ợ, tks các bác

                Comment


                • #23
                  sbit Aled1=P1^0;
                  sbit Aled2=P1^1;
                  sbit Aled3=P1^2;

                  void quetled()
                  {/////////////////////////led hang tram///////////
                  Aled1=1;
                  P2=maled7[x/100];
                  delay(100);
                  Aled1=0;
                  P2=0xff;
                  Bác nào giải thix hộ em code trên vs, tại sao lại cho aled1=1 rồi lại cho aled1=0, p2= 11111111 là thế lào

                  Comment


                  • #24
                    Nguyên văn bởi lonelyboy26 Xem bài viết
                    sbit Aled1=P1^0;
                    sbit Aled2=P1^1;
                    sbit Aled3=P1^2;

                    void quetled()
                    {/////////////////////////led hang tram///////////
                    Aled1=1;
                    P2=maled7[x/100];
                    delay(100);
                    Aled1=0;
                    P2=0xff;
                    Bác nào giải thix hộ em code trên vs, tại sao lại cho aled1=1 rồi lại cho aled1=0, p2= 11111111 là thế lào
                    làm thế để xóa led...khỏi bị sáng mờ

                    Comment


                    • #25
                      code này thì liên quan j đến port2 hả bác tan. Hay bác cho em xin yahoo em trao đổi cho tiện, em gần hiểu code này rồi

                      Comment


                      • #26
                        @@
                        p2 xuất mã led 7 vạch còn mấy cái
                        sbit Aled1=P1^0;
                        sbit Aled2=P1^1;
                        sbit Aled3=P1^2;
                        là để xuất tín hiệu chọn led ( giống như enable cho led nào sáng ấy.)

                        Comment


                        • #27
                          rồi tks bác, đã sáng tỏ. Em đang tìm hiểu truyền thông nối tiếp mà khó nuốt quá
                          Em hỏi thêm bác phát nữa, nếu như em mún đếm đến 100 thì nó sẽ báo chuông và reset về 0 thì ta lập trình làm sao

                          Comment


                          • #28
                            @@ thì cho if else vào chứ còn sao..
                            trong code có cái biến đếm là x đấy...
                            if (x==100)
                            {
                            đổ chuông;
                            x=0;
                            }

                            Comment


                            • #29
                              Đổ chuông : chết là ở cái này bác ợ

                              Comment


                              • #30
                                cái này thì cho chương trình con tạo PWM cho ra loa chứ sao (nếu thầy giáo bắt)
                                nếu k thì cho 1 chân nào đấy cho ra mức cao lấy đèn thay loa...

                                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