Thông báo

Collapse
No announcement yet.

Chương trinh c đếm số dung 89c51

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

  • Chương trinh c đếm số dung 89c51

    em muốn làm thử mạch đếm số dùng 2 led 7 thanh va con 89c51(thử làm mô phỏng trên proteus thôi).em dùng con led 7 thanh thứ nhất để đếm hàng đơn vị,con thứ 2 đếm hàng chục.Hiện giờ em chưa biết phải viết ct như thế nào(làm sao để led 1 đếm đến 9 thì led2 nhảy thêm 1 đv),nếu ai biết thì giúp em với.Ct không cần quá cao siêu vì có thể có nhiều câu lệnh em chưa hoc đến,hãy viết sao cho người mới học lập trình như em biết là được và giải thích tưng câu lệnh trong đó giúp em.thank

  • #2
    chắc em hỏi gà quá không ai muốn giúp ak.hi

    Comment


    • #3
      Hình như trong đây có bài này rồi. Bạn lật lại vài trang sẽ thấy đếm số từ 000-999 cũng tương tự

      Comment


      • #4
        Nguyên văn bởi viem1991 Xem bài viết
        chắc em hỏi gà quá không ai muốn giúp ak.hi
        Chắc là ko phải đơn giản mà không ai muốn giúp bạn đâu, mà là bài này đã có rất nhiều trên diễn đàn rồi mà, bạn phải tìm chứ.
        Mình up lại cho bạn này.
        Led 7 thanh.rar
        Đếm hẳn tới 1000 luôn. Bạn ko hiểu dòng nào thì lên hỏi mọi người, chắc sẽ trả lời ngay chứ bảo mọi người giải thích từng dòng lệnh thì.....
        Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
        http://diencongnghiep360.com/
        http://tudienhathe.vn/

        Comment


        • #5
          void HIEN_THI(void)
          {
          P0=M[nghin];
          P2=~0x1;
          delay_10ms(1);
          P2=~0;
          P0=0xFF;
          P0=M[tram];
          P2=~0x2;
          delay_10ms(1);
          P2=~0;
          P0=0xFF;
          P0=M[chuc];
          P2=~0x4;
          delay_10ms(1);
          P2=~0;
          P0=0xFF;
          P0=M[donvi];
          P2=~0x8;
          delay_10ms();
          P2=~0;
          P0=0xFF;
          }

          Comment


          • #6
            mình khong hiểu đoan này lắm,ai giải thích giúp mình với

            Comment


            • #7
              Đơn giản hoá.Bạn có 2 biến hàng hơn vị(donvi) và hàng chục(chuc).
              for(chuc=0;chuc<=9;chuc++)
              {
              for(donvi=0;donvi<=9;donvi++){
              //gọi hàm hiển thị
              //delay
              }
              }
              cái này thì chạy tít mÙ nhénvi<=9;donvi++){
              //gọi hàm hiển thị
              //delay
              }
              }
              cái này thì chạy tít mÙ nhé
              , , ,

              Comment


              • #8
                Đây chương trình của bạn đây
                Code:
                #include"reg52.h"
                sbit    Led_dv  =  P3^0;
                sbit    Led_chuc  =  P3^1;
                unsigned char Ma[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
                int a,b,c,d,k;
                void delay(unsigned int ms)  
                {
                unsigned int i,j;    
                for(i=0;i<ms;i++)
                  for(j=0;j<125;j++);   
                }
                void main()
                { int i;
                while(1)
                {
                for(k=0;k<=99;k++)
                {
                
                a=k/10;
                b=k%10;
                for(i=0;i<20;i++)
                {
                {
                Led_dv=1;  //led dv
                P2=Ma[a];
                delay(20);
                Led_dv=0;  
                P2=0xff;//xoa data
                Led_chuc=1;  //led chuc
                P2=Ma[b];
                delay(20);  
                Led_chuc=0;
                P2=0xff; 
                }
                }
                }
                
                }
                }
                với bao nhiêu led thì chỉnh sửa một tý là ok.

                Comment


                • #9
                  void HIEN_THI(void) // Hàm Quet led.
                  {
                  P0=M[nghin]; // Đầu tiên, cho số hàng nghìn sáng (Đưa catot của led về 0)
                  P2=~0x1; // Đưa Anot của led lên 1 (xem phần cứng có cổng not)
                  delay_10ms(1); // Trễ một khoảng thời gian t để đủ thời gian lưu ảnh trên mắt !
                  P2=~0; // Tắt led hàng nghìn, chuẩn bị hiện thị led hàng trăm(để led ko bị nhấp nháy)
                  P0=0xFF;
                  P0=M[tram]; // Tương tự như với số hàng nghìn (hiện thị số hàng trăm)
                  P2=~0x2;
                  delay_10ms(1);
                  P2=~0;
                  P0=0xFF;
                  P0=M[chuc];
                  P2=~0x4;
                  delay_10ms(1);
                  P2=~0;
                  P0=0xFF;
                  P0=M[donvi];
                  P2=~0x8;
                  delay_10ms();
                  P2=~0;
                  P0=0xFF;
                  }

                  Bài trên mình viết chi tiết các hàm riêng biệt nên hơi dài dòng, tuy nhiên sẽ dễ hiểu hơn.
                  Mua bán thiết bị điện công nghiệp tại Hà Nội, toàn quốc.
                  http://diencongnghiep360.com/
                  http://tudienhathe.vn/

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  • bqviet
                    Trả lời cho Đấu tắt điện cho máy tính bảng
                    bởi bqviet
                    Bqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
                    06-12-2025, 17:17
                  • nguyendinhvan
                    Trả lời cho Xin hỏi về mạch thu FM/AM trong catsette
                    bởi nguyendinhvan
                    Theo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
                    05-12-2025, 19:59
                  • afrendly
                    Trả lời cho Đấu tắt điện cho máy tính bảng
                    bởi afrendly
                    Có vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
                    04-12-2025, 01:27
                  • nick22
                    Trả lời cho Máy điện châm ?
                    bởi nick22
                    Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
                    01-12-2025, 13:23
                  Đang tải...
                  X