Thông báo

Collapse
No announcement yet.

Tìm hiểu bảng quang báo

Collapse
This topic is closed.
X
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Nguyên văn bởi hoang_hai Xem bài viết
    Huntress1 ơi
    bạn nói kĩ cho mình cách chạy chữ phải qua trái với
    hôm trước bạn viết minh ko hiểu
    và mình muốn xuất phát từ lúc ko có led nào sáng cả và chạy từ đầu đến cuối
    mình chỉ làm dc nó chạy tren 1 led 8x8 thôi dùng lệnh
    for(k=0;k<8;k++)
    {for(j=0;j<200;j++)//lap
    {for(n=0;n<8;n++)
    {P2=chuh[n]<<k;//dịch 1 bit
    P1=row_on[n];//quet hàng}}}
    còn 2 led thì bó tay mình ko biết làm thế nào để nó dịch hết bit của led 1 rồi số bit đấy chuyển dc sang led 2
    ví dụ code là k=0
    00011100
    vậy lần dịch thu nhất k=1 la
    00111000
    k=2 01110000
    k=3 11100000
    vậy k=4 thì led 1 là : 11000000
    mình muốn 1 bit đầu của led 1 chuyển sang bit cuối của led 2 :00000001
    vậy mình phải viết code như thế nào vậy
    bạn có cách nào giúp mình ko
    hay cách khác đơn giản hơn ko
    đơn giản thôy, bạn đừng coi đó là ma trận 8x8 nữa mà hãy coi nó là 16x8 đi

    Comment


    • Nguyên văn bởi Huntress1 Xem bài viết
      đơn giản thôy, bạn đừng coi đó là ma trận 8x8 nữa mà hãy coi nó là 16x8 đi
      uh` bạn thì đơn giản nhưng với tớ khó vô cùng
      mình cũng nghĩ như vậy rồi
      nhưng có 1 vấn đề là như thế này
      mình khai báo 1 mảng la[8]={0x00,0x0a......0x0f}
      vậy thì nó hiện ngay trên ma trận và dich 1 bit
      nhưng như ý bạn là khai báo 1 mảng là[16]={0,0,0,0,0,0,0,0,0x0a....0x0f}
      thì 1 port của ta chỉ đưa dc 8 bit là{0,0,0,0,0,0,0,0}
      và dịch chuyển 1 bit thì vẫn là 0 nó chỉ dịch hết 8 bit đầu thôi còn ko dịch những bit sau
      thế nên mình mới ko biết viết code như thế nào
      bạn biết thì viết cho mình đoạn code đấy với
      còn mở rộng port thì mình dùng 74573va 74138 dc rồi ko thể nào mà dùng mỗi con 74138 dc

      Comment


      • 1 mảng 8 bit, khi port 1 dịch xong thì port 2 dùng tiếp mảng đó để dịch, còn nếu khó quá thì bạn cho 2 mảng 16 bit đi
        A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
        B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
        1 vòng for i = 0 to 15
        hiểu chứ !
        còn mở rộng port thì mình dùng 74573va 74138 dc rồi ko thể nào mà dùng mỗi con 74138 dc
        đó là do thuật toán của bạn loằng ngoằng quá, chưa tối ưu chứ sao.
        Tuy nhiên nếu bạn sử dụng được kon kia rồi thì cũng tốt bởi vì cách sử dụng 138 không phải là cách tối ưu nhất mà

        Comment


        • Nguyên văn bởi Huntress1 Xem bài viết
          1 mảng 8 bit, khi port 1 dịch xong thì port 2 dùng tiếp mảng đó để dịch, còn nếu khó quá thì bạn cho 2 mảng 16 bit đi
          A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
          B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
          1 vòng for i = 0 to 15
          hiểu chứ !

          đó là do thuật toán của bạn loằng ngoằng quá, chưa tối ưu chứ sao.
          Tuy nhiên nếu bạn sử dụng được kon kia rồi thì cũng tốt bởi vì cách sử dụng 138 không phải là cách tối ưu nhất mà
          ko hiểu
          bạn nói kĩ hơn nữa đi
          hay viết cho mình đoạn code đi để mình tham khảo

          Comment


          • vậy mà k hiểu nữa
            A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
            B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
            for(i=0;i<15;i++)
            {
            P0=A[i];
            P1=B[i];
            }

            Comment


            • Nguyên văn bởi Huntress1 Xem bài viết
              vậy mà k hiểu nữa
              A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
              B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
              for(i=0;i<15;i++)
              {
              P0=A[i];
              P1=B[i];
              }
              nó chỉ dịch dc 8 bit thôi làm sao dịch dc 16 bit

              Comment


              • vạy bạn cho chạy chữ bằng cắc nào vậy
                sao mình khai báo mang 16 mà nó ko dich dc
                nó chỉ dich bit ở mang 8
                vậy cậu giải thích cho mình mảng 16 thì data sẽ ra như thế nào
                [n]={0x00,0x01,0x06,0x00,0x00,0x00,0x00,0xff,0x01,0x0 3,......0x00}có 16 bit
                thì 8 bit đầu là của port1 đưa data ra cột còn 8 bit sau là của cái j
                Last edited by hoang_hai; 23-07-2009, 00:50.

                Comment


                • Xin chào các cao thủ.
                  Em là thành viên mới toanh của diễn đàn, hiện em đang tìm hiểu về bảng điện tử và quang báo, cũng đã kiếm được ít tài liệu nhưng đọc cứ thấy rối mù lên, không bít phải bắt đầu từ đâu? ( hic chắc tại em chưa bít gì). tóm lại em đang tập đi những bước đầu tiên. Rất mong các bác chỉ bảo! Nếu ai có tài liệu tham khảo làm ơn gửi cho em, thanks các pác nhìu!
                  Email: dongoccuongkhtn@yahoo.com
                  Thân!

                  Comment


                  • Nguyên văn bởi hoang_hai Xem bài viết
                    vạy bạn cho chạy chữ bằng cắc nào vậy
                    sao mình khai báo mang 16 mà nó ko dich dc
                    nó chỉ dich bit ở mang 8
                    vậy cậu giải thích cho mình mảng 16 thì data sẽ ra như thế nào
                    [n]={0x00,0x01,0x06,0x00,0x00,0x00,0x00,0xff,0x01,0x0 3,......0x00}có 16 bit
                    thì 8 bit đầu là của port1 đưa data ra cột còn 8 bit sau là của cái j
                    không hiểu vấn đề mà cứ dùng những từ ngữ cao siêu !
                    Lưu ý : mảng 16 là 16 phần tử !
                    VÀ bạn trả lời cho mình câu này : dịch bit là gì ?
                    Mình chạy thử bằng tay cho bạn xem nhé
                    Code:
                    A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
                    B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
                    for(i=0;i<15;i++)
                    {
                    P0=A[i];
                    P1=B[i];
                    }
                    i=0 : P0=0xa ; P1=0x00;
                    i=1 : P0=0xb ; P1=0x00;
                    i=2 : P0=0xc ; P1=0x00;
                    .....
                    i=7 : P0=0xh ; P1=0x00;
                    i=8 : P0=0x00 ; P1=0xi;
                    i=9 : P0=0x00 ; P1=0xj;
                    .....
                    i=15 : P0=0x0 ; P1=0xp;

                    Comment


                    • Nguyên văn bởi Huntress1 Xem bài viết
                      không hiểu vấn đề mà cứ dùng những từ ngữ cao siêu !
                      Lưu ý : mảng 16 là 16 phần tử !
                      VÀ bạn trả lời cho mình câu này : dịch bit là gì ?
                      Mình chạy thử bằng tay cho bạn xem nhé
                      Code:
                      A[16]={a,b,c,d,e,f,g,h,0,0,0,0,0,0,0,0}
                      B[16]={0,0,0,0,0,0,0,0,i,j,k,l,m,n,o,p}
                      for(i=0;i<15;i++)
                      {
                      P0=A[i];
                      P1=B[i];
                      }
                      i=0 : P0=0xa ; P1=0x00;
                      i=1 : P0=0xb ; P1=0x00;
                      i=2 : P0=0xc ; P1=0x00;
                      .....
                      i=7 : P0=0xh ; P1=0x00;
                      i=8 : P0=0x00 ; P1=0xi;
                      i=9 : P0=0x00 ; P1=0xj;
                      .....
                      i=15 : P0=0x0 ; P1=0xp;
                      cod nghia là[n]={....}ví dụ
                      000111000
                      vậy mình viết lệnh là
                      for(=0;k<8;k++){
                      P1=[n]<<k;.....
                      ...}
                      thì với k=0;thì P1=[n]
                      k=1; thì mảnh n tién lên 1 bit là 001110000
                      k=2 thì mảnh n tién lên 2 bit là 011100000
                      cứ thế là hết 8 bit còn ở đằng sau là 0
                      cấu trúc này có trong C đấy
                      có thế thôi

                      Comment


                      • Bác Hoang_Hai chắc nhầm ở đâu đó rồi!
                        Đọc qua 1 hồi thấy bác bị rối rối lên sao sao đó ở chỗ mảng.

                        Ý bác là muốn 1 mảng data trở thành 1 mảng bit?
                        Hay dịch 1 mảng 16 phần tử khi dịch thì 16 phần tử này cùng dịch?
                        Nếu muốn dịch 1 cái mà 16 phần tử này cùng dịch cũng ko phải là chuyện khó đâu. Dễ thôi, xem lại chỗ struct và union. khi đó dịch 1 khối ví dụ có 80 phần tử tương đương 1 bảng 80 cộtx 8 thì dịch 1 phần tử trên đó là dịch luôn 80 phần tử.

                        Comment


                        • Bác thử xem, hồi trước có thử 1 lần thấy được đó!

                          Comment


                          • Nguyên văn bởi thaielectric Xem bài viết
                            Diễn đàn ơi, giải thích giúp mình dòng chữ màu xanh ấy. Mình chưa biết phương pháp chốt. Mình chỉ biết quét hàng hoặc quét cột thôi.
                            Chốt ah, tức là dùng IC chốt ví dụ: 74573 chốt data trên led, lúc đó tốc độ cực kỳ nhanh có thể nói là ko gì nhanh bằng.
                            Thời gian đáp ứng cực nhanh. Do đó khả năng mở rộng bảng đèn là rất lớn gấp gấp nhiều lần so với dùng phương pháp thông thường như dùng 74595 hay 4094.....

                            Comment


                            • Nguyên văn bởi MicroDuyphi Xem bài viết
                              Bác Hoang_Hai chắc nhầm ở đâu đó rồi!
                              Đọc qua 1 hồi thấy bác bị rối rối lên sao sao đó ở chỗ mảng.

                              Ý bác là muốn 1 mảng data trở thành 1 mảng bit?
                              Hay dịch 1 mảng 16 phần tử khi dịch thì 16 phần tử này cùng dịch?
                              Nếu muốn dịch 1 cái mà 16 phần tử này cùng dịch cũng ko phải là chuyện khó đâu. Dễ thôi, xem lại chỗ struct và union. khi đó dịch 1 khối ví dụ có 80 phần tử tương đương 1 bảng 80 cộtx 8 thì dịch 1 phần tử trên đó là dịch luôn 80 phần tử.
                              uh` đúng rồi đó
                              mình muốn làm như vậy
                              nhưng mà ko biết viết đoan code như thế nào cả
                              đây là mình bị hạn chế trong viêc lập trình ko sao mà viết dc cho nó như vậy dc
                              chỉ viết dc cho 1 mảng 8x8 thôi

                              Comment


                              • Nguyên văn bởi hoang_hai Xem bài viết
                                cod nghia là[n]={....}ví dụ
                                000111000
                                vậy mình viết lệnh là
                                for(=0;k<8;k++){
                                P1=[n]<<k;.....
                                ...}
                                thì với k=0;thì P1=[n]
                                k=1; thì mảnh n tién lên 1 bit là 001110000
                                k=2 thì mảnh n tién lên 2 bit là 011100000
                                cứ thế là hết 8 bit còn ở đằng sau là 0
                                cấu trúc này có trong C đấy
                                có thế thôi
                                Đó, vấn đề chính là ở chỗ đó, bạn không hiểu được bản chất của vấn đề mà lại cứ đi tìm 1 phương pháp khó để giải quyết, sao không tìm 1 cách khác dễ hiểu, dễ làm hơn để giải quyết vấn đề đó (cách trên mình đã nói rồi đấy). Bất kỳ 1 vấn đề gì đều có nhiều phương án giải quyết khác nhau không nhất thiết là phải dập khuôn theo 1 phương pháp.
                                Cái dịch bit của C bạn nói thì mình biết rồi và cũng đã từng sử dụng, mình muốn hỏi xem bạn có hiểu không thôy.

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                • mèomướp
                                  Trả lời cho Công thức điện tử
                                  bởi mèomướp
                                  Dạ thời thế giờ thay đổi theo hướng tích cực hơn rồi chú trung sĩ ạ. Kiến thức được chia sẻ ngày càng nhìu nên làm ăn gian dối ko còn dễ dàng như trước đâu ạ. Những thợ nhỏ rồi sẽ thành công nhân sản xuất đồ mới hết thay vì sửa chữa lặt vặt...
                                  Hôm qua, 21:21
                                • mèomướp
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi mèomướp
                                  Dạ cùng chuẩn tín hiệu thì chắc chắn là nhận ạ. Vì bản chất oled hay lcd thì đều phải có mạch chuyển đổi trên thanh gỗ rồi chuyển sang những chip xử lý hàng nghìn chân gắn trên những tab mỏng dính rồi mới ra các điểm ảnh theo hàng...
                                  Hôm qua, 20:31
                                • yname11
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi yname11
                                  Ok , thanks bác đã chỉ...
                                  Hôm qua, 15:06
                                • nguyendinhvan
                                  Công thức điện tử
                                  bởi nguyendinhvan
                                  Sau bao năm nghiên cứu cái dtvn. Tôi phát hiện công thức này. Các anh em xem đúng bao nhiêu phần trăm nhé !

                                  Chập thì thay. Cháy thì tháo
                                  Làm thì láo. Báo thì hay
                                  May thì khoe. Rủi thì bỏ
                                  Thành tích nhỏ. Báo thành to
                                  Làm cho có. Báo chi li
                                  Sai cả li. Báo
                                  ...
                                  Hôm qua, 00:35
                                • yname11
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi yname11
                                  có chắc ko b, màn lcd phải có cao áp mới sáng, màn led thì ko có, ko có cáp chuyển đổi thì lắp thế nào đc ??...
                                  25-11-2024, 22:31
                                • mèomướp
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi mèomướp
                                  Dạ ý chú là màn oled ấy ạ. Cùng chuẩn lvds cùng độ phân giải thì cắm được ạ. Còn nó mà khác thì hơi khó vì oled các điểm ảnh nó tự phát sáng chứ ko dùng đèn nền như lcd. Cháu chỉ biết đến vậy thôi ạ. Chú muốn nghịch phải tự tìm hiểu kỹ trước khi mua thôi, khó mà ông thợ nào tư vấn vụ này...
                                  25-11-2024, 22:14
                                • bactho
                                  Trả lời cho Tự làm máy đo Cuộn cảm
                                  bởi bactho
                                  Hay đấy bạn ạ. Đây có thể hiểu là máy đo cuộn dây. Tiện đây xin cho hỏi bạn có hiểu rõ về máy nạp rôm pcb 45 của hãng thiên minh không giúp mình cách cài fw của nó với vì mình vừa được anh bạn cho nhưng lại không biết cài fw nên chưa dùng được. Nếu có thể thì bạn giúp mình với...
                                  25-11-2024, 21:48
                                • yname11
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi yname11
                                  màn của mình là LCD , giờ m muốn mua màn LED để thay thế (ko muốn dùng màn LCD nữa) , lên muốn hỏi xem có cáp chuyển đổi nào có thể cắm đc màn LED vào ko , tất nhiên phải có cùng số chân pin với màn cũ rồi . VD: màn cũ là lcd mỏng , 40 pin...
                                  25-11-2024, 21:43
                                • bactho
                                  Trả lời cho các bạn giúp mình về file HEX với!!!
                                  bởi bactho
                                  Bạn vào trang phuclanshop.com ,tìm đến góc kỹ thuật. Tác giả vương khánh hưng nói rất rõ về điều bạn tìm...
                                  25-11-2024, 21:21
                                • mèomướp
                                  Trả lời cho Xin hỏi về màn hình laptop
                                  bởi mèomướp
                                  Dạ màn hình lcd đều có thể lai cấy cho nhau được hết ạ. Các loại cáp, bo mạch chuyển đổi lvds rất nhìu, với dòng sony còn phải nhổ cả chip nhớ của main cũ đưa lên gỗ thì mới lắp sang máy khác đc, chưa kể các bệnh về màu... ngay cả...
                                  25-11-2024, 20:43
                                Đang tải...
                                X