Thông báo

Collapse
No announcement yet.

xin giúp đỡ về led matrix 8x8 !

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

  • xin giúp đỡ về led matrix 8x8 !

    xin giúp đỡ em code Kei C cho matrix 8x8.
    em muốn cho chạy được dòng chữ HTV từ trái sang phải trên ma tran này. xin anh chi em nào rành về cái này giúp em.
    phần cứng: ic 89c52, 74hc595,led matrix 8x8.

    em đã code hoài nhưng vẫn không chạy được.tức quá xóa luôn rùi... hjx
    nay mong được tham khảo code của các bạn.

  • #2
    không ai giúp em vậy !

    Comment


    • #3
      xóa thì viết lại sau đó cho code lên đây, và bạn hãy nêu quan điểm của mình là mình nghĩ thế này nhưng k hiểu tại sao nó ko thế, mọi người sẽ chỉ lỗi cho
      Website chính thức đổi địa chỉ website thành
      Mời các bạn ghé thăm !!!

      Comment


      • #4
        Nguyên văn bởi mast090 Xem bài viết
        xóa thì viết lại sau đó cho code lên đây, và bạn hãy nêu quan điểm của mình là mình nghĩ thế này nhưng k hiểu tại sao nó ko thế, mọi người sẽ chỉ lỗi cho
        #include <REGX52.H>
        #define data P1_0
        #define sck P1_1
        #define scl P1_2
        #define reset P1_3
        char mahang[8]={0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80};
        char machu[24]={

        24,24,102,
        36,24,102,
        102,24,102,
        102,24,126,
        102,24,126,
        102,24,102,
        102,126,102,
        102,126,102,
        };
        //-,v,t,h
        // ham tre
        void delay(long time)
        {
        while(time--);
        }
        //ham xuat tu 595
        void xuat_data()
        {
        scl=0;
        scl=1;
        }
        //ham nhan data vao 595
        void nhan_data(unsigned char out_data)
        {
        unsigned char i;
        for(i=0;i<8;i++)
        {
        data=out_data&0x01;
        out_data=out_data>>1;
        sck=0;
        sck=1;
        }
        }
        // dich trai
        void trai()
        {
        unsigned char i,j,tam;
        for(i=8;i>0;i--)
        {
        tam=(machu[i-1]>>7)&0x01;// them &0x01 de xoa nhung bit doi ve 0.
        for(j=1;j<3;j++)
        {
        machu[i*3-j]=(machu[i*3-j]<<1)+((machu[i*3-j-1]>>7)&0x01);
        }
        machu[(i-1)*3]= (machu[(i-1)*3]<<1)+tam;
        }
        }

        //ham chinh
        void main(void)
        {
        unsigned char k,j,m;
        sck=1;
        scl=1;
        while(1)
        {
        for (m=0;m<20;m++)
        for(k=0;k<=7;k++)
        {
        for(j=0;j<3;j++)
        nhan_data(machu[k*3+j]); // day 3 ma hien thi vao 595
        P2=~mahang[k];
        xuat_data();
        delay(10);
        }
        trai();


        }
        }
        //khong biêt sai cho nao ma gio no chạy lại không đúng nữa rùi.

        xin fix giùm em !
        và em muốn làm cho chạy được một dòng chữ luôn thì phải thế nào, nghĩ mãi mà không được. vd chạy chuỗi A B C D E F TRÊN cái ma trận 8x24. thank các pro trước !
        de em up luon cai hình lên:
        Click image for larger version

Name:	8x24.bmp
Views:	1
Size:	965.3 KB
ID:	1359289

        Comment


        • #5
          về code cơ bản là đúng, có thể lỗi nhỏ mình chưa kiểm tra hết
          bạn nén project vs code vào lại 1 file rồi up lên mình sẽ test cho, chứ vẽ lại mất thời gian, tính lười sẵn @@
          vs lại làm chạy chữ ko lên làm theo kiểu dịch từng bít thế này, làm theo kiểu dịch cả byte ý, và tất nhiên cách quét cũng khác chút
          Website chính thức đổi địa chỉ website thành
          Mời các bạn ghé thăm !!!

          Comment


          • #6
            Nguyên văn bởi mast090 Xem bài viết
            về code cơ bản là đúng, có thể lỗi nhỏ mình chưa kiểm tra hết
            bạn nén project vs code vào lại 1 file rồi up lên mình sẽ test cho, chứ vẽ lại mất thời gian, tính lười sẵn @@
            vs lại làm chạy chữ ko lên làm theo kiểu dịch từng bít thế này, làm theo kiểu dịch cả byte ý, và tất nhiên cách quét cũng khác chút
            vì mình mới vào nghề, bạn cứ viết theo cách của bạn,mình sẽ ngâm cứu. có chú thích trong code càng tốt.
            file protues: lematran8x24.zip. con code bạn copy trên dùm mình nha. vì nãy giờ đang ngồi sữa lại, sai tùm lum rùi. Cảm ơn bạn trước.

            Nếu được, bạn làm cho mình chạy một dòng chữ A B C D E F trên matran8x24 nha. mình đang bí cái này,hiện tại mình chỉ biết làm được 3 chữ vì có 3 matran 8x8.Nhưng khi thử làm nhiều hơn 3 chữ thì không được....hjhjhj. (vì lỡ có 50 chữ mà phải dùng 50 matrix8x8 thì không ổn).

            Comment


            • #7
              mới làm được dòng chữ chạy, nhưng vẫn không vừa ý, nhờ cao thủ trợ giúp thêm. muốn thể hiện nhiều chữ hơn.
              . sẵn cảm ơn bạn mast đã góp ý hướng dẫn mình

              Comment


              • #8
                hic, lúc tui hướng dẫn là dịch mã của cả kí tự, nhưng tôi đã nói rõ hơn là trong mỗi kí tự thường chia làm 8 byte, bạn làm dịch byte thì chữ dịch từng cột nó sẽ chạy mượt và chữ đều, làm thế kia là dịch từng con ma trận một chứ k phải dịch từng cột, bạn để ý các biển quảng cáo ko ai người ta làm dịch cả con ma trận thế đâu, nhưng dù sao bạn cũng có phần nào hiểu vấn đề rồi, làm dịch code đi, dịch code nguyên lý cũng giống dịch cả kí tự, hơi khác xíu thôi
                Website chính thức đổi địa chỉ website thành
                Mời các bạn ghé thăm !!!

                Comment


                • #9
                  mình sẽ sửa lại

                  Comment


                  • #10
                    cac bac oi!xem giup em cai code nay voi,em lap trinh hien thi chu A tren led matran ma khong hieu sao no hien van sai.cac bac xem giup nha
                    #include<reg51.h>
                    #include<stdio.h>
                    void delay(long time)
                    {
                    while(time--);
                    }
                    int n;
                    unsigned char manghang[8]={0x3f,0x7f,0x88,0x88,0x7f,0x3f,0,0};
                    unsigned char mangcot[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
                    void main()
                    {
                    while(1)
                    {
                    for(n=0;n<=7;++n)
                    {
                    P3=manghang[n];
                    P0=mangcot[n];
                    }
                    }
                    }
                    em tat hai cot led cuoi ma sao no van sang.khong hieu nua.mong moi nguoi chi ro ho em

                    Comment


                    • #11
                      Nguyên văn bởi c144 Xem bài viết
                      cac bac oi!xem giup em cai code nay voi,em lap trinh hien thi chu A tren led matran ma khong hieu sao no hien van sai.cac bac xem giup nha
                      #include<reg51.h>
                      #include<stdio.h>
                      void delay(long time)
                      {
                      while(time--);
                      }
                      int n;
                      unsigned char manghang[8]={0x3f,0x7f,0x88,0x88,0x7f,0x3f,0,0};
                      unsigned char mangcot[8]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe};
                      void main()
                      {
                      while(1)
                      {
                      for(n=0;n<=7;++n)
                      {
                      P3=manghang[n];
                      P0=mangcot[n];
                      }
                      }
                      }
                      em tat hai cot led cuoi ma sao no van sang.khong hieu nua.mong moi nguoi chi ro ho em
                      bạn có thể up thêm file mo phỏng lên cho mình xem được không, vì không biết phần cứng bạn đấu thế nào. bạn up thêm file mô phỏng nha. sẽ giúp đc bạn

                      Comment


                      • #12
                        day la file mo phong cua em.mong bac huong dan ro ho em nha.cam on bac nhieu.
                        8x8LED.rar

                        Comment


                        • #13
                          cai nay bạn khai báo mã cột sai và mã chữ nữa bạn xem lại nha, cho delay khoảng 10000 k thf bạn sẽ thấy. chuc bạn vui

                          Comment


                          • #14
                            cảm ơn bác nhiều.ah nhờ bác chỉ giúp em hiện tượng bóng ma khi quét led matran không.nghĩa là dữ liệu cũ chưa mất mà đã cấp dữ liệu mới ấy.lám thế nào để tắt đc dữ liệu trước hả bác

                            Comment


                            • #15
                              nho bac jerrythanh xem giup em cai code va mo phong nay voi.em muon thoi gian hien thi cac chu lau hon em phai lam the nao
                              New Folder (2).rar

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X