Thông báo

Collapse
No announcement yet.

Help mình đoạn code điều khiển led đơn dùng 74595 .

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

  • #16
    Nguyên văn bởi tdm Xem bài viết
    viết thử cho bạn 3 hiệu ứng:
    Code:
      #include"regx52.h"
    sbit DATA = P2^1;
    sbit SCK = P2^0;
    sbit SCL = P2^2;
             const unsigned char ma[4][8]={           
             0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,//
             0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
             0x01,0x03,0x07,0x0F,0x1F,0x3F,0x7F,0xff,//sang dan lsb..msb
             0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};//sang dan 1 led lsb...msb
    unsigned char y,j;
    
    void quet(unsigned char x)
    {
    unsigned char i,temp;
    SCK=0;
    SCL=0;
    for(i=0;i<=7;i++)
    {
    temp=x;
    temp=temp&0x80;
    if(temp==0x80)
    DATA=1;
    else
    DATA=0;
    x*=2;
    
    SCK=1;
    SCK=0;
    }
    SCL=1;
    SCL=0;
    }
    void delay(unsigned long int t)
    {
        unsigned long int l;
        for(l=0;l<t;l++);
    }
    void sang_dan()
     {
     for(y=0;y<=7;y++)
    {
    quet(ma[0][y]);
    quet(ma[2][y]);
    delay(5000);
    }
     for(y=0;y<=7;y++)
    {
    quet(ma[2][y]);
    quet(ma[1][y]);
    delay(5000);
    }
     }
    void nhap_nhay()
     {
     for(y=0;y<=7;y++)
    {
    quet(0xff);
    quet(0xff);
    delay(5000);
    quet(0x00);
    quet(0x00);
    delay(5000);
    }
     }
      void sang_dan_1led()
     {
     for(y=0;y<=7;y++)
    {
    quet(ma[0][y]);
    quet(ma[3][y]);
    delay(5000);
    }
     for(y=0;y<=7;y++)
    {
    quet(ma[3][y]);
    quet(ma[0][y]);
    delay(5000);
    }
     }
    void main()
    {
    
    while(1)
    {
    sang_dan();
    nhap_nhay();
    sang_dan_1led();
    }}
    Thanks bạn " tdm " nhiều nhé Phần code bạn sửa giúp mình chạy theo đúng ý mình muốn rồi nhưng bạn chú thích mỗi dòng lệnh cho mình hiểu với dc ko? Mình chứ hiểu và chỗ sau :
    1) trong hàm void quet(void) câu lệnh " x*=2; " có ý nghĩa là j ? nếu ko có nó thì ntn? , tại sao lại mang temp And vs 0x80 mà ko là giá trị khác bất kì ?
    2) --------------------------------- " temp=temp&0x80;" có nghĩa là ntn ?
    3) Giờ mình muốn sáng dần 80 con led tương đương với là xài 10 con 595 thì mình phải xuất data như thế nào ? cho mình ví dụ kèm chú thích cho mình hiểu vs nha
    trình độ còn gà hỏi có j ko phải bạn thông cảm nhé
    ................. Pleiku .................... GIA LAI ...................

    Comment


    • #17
      tốt nhất bạn nên học lại C cơ bản , mấy cái bạn hỏi chả có gì phức tạp lắm đâu .Chỉ mấy lệnh thao tác về bit thôi !!

      Comment


      • #18
        Bạn này học nhảy cóc quá.Lo học c đi.Học xong làm được liền.Cái kiểu chân nọ chân kia thế này thì đến bao giờ.80 con led thì không ai chơi 10 con 595 làm gì cần 1 con cũng được.Hoặc 2 con.Quét như matrix.
        , , ,

        Comment


        • #19
          Nguyên văn bởi rptdnmqs Xem bài viết
          Bạn này học nhảy cóc quá.Lo học c đi.Học xong làm được liền.Cái kiểu chân nọ chân kia thế này thì đến bao giờ.80 con led thì không ai chơi 10 con 595 làm gì cần 1 con cũng được.Hoặc 2 con.Quét như matrix.
          Uhm , có thể là mình nhảy cóc thật , nhưng mình điều khiển 80 con led đơn độc lập ko xài 10 con 595 mắc nối tiếp thì làm ntn? Pro múa thế nào mà 80 con chỉ cần 2 con 595 thế ? chỉ mình múa với
          ................. Pleiku .................... GIA LAI ...................

          Comment


          • #20
            Nguyên văn bởi thi tran Xem bài viết
            Uhm , có thể là mình nhảy cóc thật , nhưng mình điều khiển 80 con led đơn độc lập ko xài 10 con 595 mắc nối tiếp thì làm ntn? Pro múa thế nào mà 80 con chỉ cần 2 con 595 thế ? chỉ mình múa với
            Vậy như bạn 80 con led bạn dùng 10 con 595. Thế bây giờ cái bảng led nó cỡ 16.000 con led thì bạn định dùng 2000 con 595 sao .
            Bạn dùng 595 theo kiểu điều khiển 1 phát cả 80 con riêng. Để tiết kiệm, người ta chia số led ra thành 10 nhóm, người ta sẽ điều khiển 8 con một, như vậy chỉ cần 1 con 595 cho 80 led. Nhưng do khi chuyển các nhóm rất nhanh nên không phát hiện ra, chỉ có cảm giác cả 80 con cùng sáng.

            Comment


            • #21
              Em bổ xung chút xíu:cứ coi 8 con led là 1 hàng thì 80 con sẽ có 10 hàng.Như vậy thực ra 80 led đơn là 1 ma trận 10x8(10 hàng,8 cột).bạn dÙng phương pháp quét hàng là được.Nhưng bạn phải hiểu nó kô xếp thành cái hình chữ nhật mà các hàng xếp nối tiếp thành dây.Oke Em bổ xung chút xíu:cứ coi 8 con led là 1 hàng thì 80 con sẽ có 10 hàng.Như vậy thực ra 80 led đơn là 1 ma trận 10x8(10 hàng,8 cột).bạn dÙng phương pháp quét hàng là được.Nhưng bạn phải hiểu nó kô xếp thành cái hình chữ nhật mà các hàng xếp nối tiếp thành dây.Oke
              , , ,

              Comment


              • #22
                Ủa bạn ơi mình dùng phương pháp quét hàng còn cột sao?Phải dùng thêm 1 con nữa chứ hả(1con quét hàng 1 con quét cột)?Bạn nói rõ được hok?Dùng "1" con như anh duong_act nói mà quét được 80 con?vậy mình muốn 1led đơn nào đó(1con/80con thôi nhen) sáng thì tích cực chân nào?Ráng giúp mình nha! Mới học nên chẳng biết gì nhiều.
                Thanks.

                Comment


                • #23
                  Mình tìm đoạn code dùng ASM để điều khiển 32 led đơn dùng 89s52 và 595 . Mình muốn led sáng ,tắt liên tục từ 0 tới led 32 led trong module led 16x32 thì làm ntn?

                  Comment


                  • #24
                    Đòi hỏi wá đáng wá ."thì làm ntn?"
                    PCCC

                    Comment

                    Về tác giả

                    Collapse

                    thi tran Tìm hiểu thêm về thi tran

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

                    Collapse

                    • tuyennhan
                      Trả lời cho Tiếng Anh cho người Việt
                      bởi tuyennhan
                      Cái thư sai ngay câu chào Dear sir mới đúng Hi chỉ dùng cho người quen , các vấn đề về kỹ thuật nó không trả lời hoặc nói loanh quanh tránh ảnh hưởng đến công ty .
                      Giup1 người cần không giúp người không cần với lại văn mình vợ người nha đừng quên .
                      hôm nay, 07:44
                    • vi van pham
                      Trả lời cho Tiếng Anh cho người Việt
                      bởi vi van pham
                      Cám ơn những lời chúc tốt đẹp của em.

                      Việc em làm giống như chê sếp dốt, chẳng những không có miếng xôi nào để ăn mà còn chịu nhiều trù dập lên bờ , xuống ruộng.

                      Hãy tránh vết xe đổ của tui đi. Dành thời gian lo cho gia đình....
                      hôm nay, 02:00
                    • 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 qua, 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 qua, 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 qua, 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 qua, 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...
                      21-02-2025, 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...
                      21-02-2025, 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
                    Đang tải...
                    X