Thông báo

Collapse
No announcement yet.

LED MATRIX DISPLAY

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

  • Nguyên văn bởi duyphi Xem bài viết
    Thế bạn cần bao nhiêu Port ra??? Tôi giúp cho. Theo ngụ ý của bạn thì cần 3+10=13 port?? Ok, đặt Phi đi,Phi làm cho( hi hi). Nói vui thôi, chứ nếu bạn cần thì 89Cxx có thể mở rộng lên cả hàng trăm Port vẫn ok.
    Nếu bạn làm với 89Cxx thì với số lượng led là 30 con 8x8 chưa là gì cả . Tôi đã làm với bảng 90 con Led 8x8 vẫn chạy OK
    Bác Phi là cao thủ trong lĩnh vực này rồi.Mong Bác thi triển vài đường để anh em mở rộng tầm mắt ...Em cũng đang bị vướng mắc cái phần cứng sao cho nó tối ưu.
    Hôm nọ nhờ Bác báo giá con led outdoor,cám ơn Bác nha!Nhưng cái này đắt quá!
    Hôm nay phải hơn hôm qua và thua ngày mai!

    Comment


    • Nho Moi Nguoi Giup Minh Voi Nha..minh Dang Rat Can

      MINH đang làm đồ án về "thiết kế bộ điều khiển PID số đầu vào tương tự ,đầu ra on/off ,pwm hay điêu khiên van có phản hồi vị trí van
      "
      mong mọi người cùng toan thể ai đọc bàig này thì giúp mình nhé...thanks nhiều

      Comment


      • Nguyên văn bởi hocmai Xem bài viết
        MINH đang làm đồ án về "thiết kế bộ điều khiển PID số đầu vào tương tự ,đầu ra on/off ,pwm hay điêu khiên van có phản hồi vị trí van
        "
        mong mọi người cùng toan thể ai đọc bàig này thì giúp mình nhé...thanks nhiều
        email của mình là:
        <a href http://=ducoanh_bh@yahoo.com>
        ducoanh_bh@yahoo.com
        </a>

        Comment


        • em làm dược phần HARDWARE rồi. có bác nào chỉ giúp em phần làm cho chử chạy từ phải sang trái khong? thuật toán phải nhu thế nào. em cám ơn trước.

          Comment


          • em chi co lam 8 con a. dung 3 con 8255 phat trien thanh 9 port. co them phan giao tiep voi may tinh thong wa cong noi tiep. roi truyen du lieu tu may tinh ra led matran . vi du bam chu a thi no chay wa may con led ma tran, em cung dinh phat trien them con ram de nho du lieu. may bac co y kien gi . voi co tai lieu tham khao chi giao em voi. hic hic

            Comment


            • cần giúp giảm giật khi dịch chữ

              em viết bài quang báo dịch chữ qua lại. định viết để hiện thị cho 8 led (64 cột) 2 hàng, có cả font đầy đủ cho tiếng việt. kích thước chữ 16 byte (quét 2 hàng). nhưng khi mới viết được cho 4 led thì chữ chạy giật nhiều quá. nếu giảm delay_us(1000) còn 900 thì khi mô phỏng không thấy gì cả. em cũng định dùng timer nhưng chưa biết sài. có cách nào khắc phục hiện tượng giật thì các anh giúp em với


              // kiem tra mach led matrix cho 4 led cho 2 hang 32 cot
              // cot duong hang am
              // goi tu pc xuong cac so thap phan de chon font hien thi ky tu

              #include<16F877a.h>
              #fuses NOLVP,NOWDT,PUT,hs,NOPROTECT
              #use delay(clock=20000000)
              //#device*= 16 adc = 8
              //#include<fonta.c>
              #use fast_io(a)
              #byte porta=0x05
              #use fast_io(b)
              #byte portb=0x06
              #use fast_io(c)
              #byte portc=0x07
              #use fast_io(d)
              #byte portd=0x08
              #use fast_io(e)
              #byte porte=0x09
              #bit rc0 = portc.0
              #bit rc1 = portc.1
              //================================================== ====
              int const q=4,t=4; // so chu can hien thi, so led ma?tix duoc dung

              unsigned char const chu[] ={7,8,13,7};
              unsigned int tam2[q*8],tam1[q*8],ht2[32],ht1[32];
              //unsigned int
              //unsigned char n,dex,i,a,b,k,j,x;

              unsigned char const fontto[] = {0x3f,0xdf,0xef,0xef,0xef,0xdf,0x3f,0xff, // A 0
              0x80,0xfd,0xfd,0xfd,0xfd,0xfd,0x80,0xff // A
              0x0f,0xef,0xef,0xef,0xef,0xdf,0x3f,0xff, // B 16
              0x80,0xbd,0xbd,0xbd,0xbd,0xdb,0xe7,0xff, // B
              0x3f,0xdf,0xef,0xef,0xef,0xdf,0xbf,0xff, // C 32
              0xe0,0xdf,0xbf,0xbf,0xbf,0xdf,0xef,0xff, // C
              0x0f,0xef,0xef,0xef,0xef,0xdf,0x3f,0xff, // D 48
              0x80,0xbf,0xbf,0xbf,0xbf,0xdf,0xe0,0xff, // D
              0x0f,0xef,0xef,0xef,0xef,0xef,0xef,0xff, // E 64
              0x80,0xbd,0xbd,0xbd,0xbd,0xbd,0xbf,0xff, // E
              0x0f,0xef,0xef,0xef,0xef,0xef,0xef,0xff, // F 80
              0x80,0xfd,0xfd,0xfd,0xfd,0xfd,0xff,0xff, // F
              0x3f,0xdf,0xef,0xef,0xef,0xdf,0xbf,0xff, // G 96
              0xe0,0xdf,0xbf,0xbf,0xbf,0xdb,0x13,0xff, // G
              0x0F,0xFf,0xFf,0xFf,0xFf,0xFf,0x0f,0xff, // H 112
              0x80,0xFD,0xFD,0xFD,0xFD,0xFD,0x80,0xff, // H
              0xef,0xef,0xef,0x0f,0xef,0xef,0xef,0xff, // I 128
              0xbf,0xbf,0xbf,0x80,0xbf,0xbf,0xbf,0xff, // I
              0xef,0xef,0xef,0xef,0x0f,0xef,0xef,0xff, // J 144
              0xdf,0xbf,0xbf,0xbf,0xc0,0xff,0xff,0xff, // J
              0x0f,0xff,0xff,0x7f,0xbf,0xdf,0xEf,0xff, // K 160
              0x80,0xfd,0xfa,0xf7,0xef,0xdf,0xbf,0xff, // K
              0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xff, // L 176
              0x80,0xbf,0xbf,0xbf,0xbf,0xbf,0xbf,0xff, // L
              0x0f,0xdf,0xbf,0x7f,0xbf,0xdf,0x0f,0xff, // M 192
              0x80,0xff,0xff,0xff,0xff,0xfb,0x80,0xff, // M
              0x0f,0xdf,0xbf,0x7f,0xff,0xff,0x0f,0xff, // N 208
              0x80,0xff,0xff,0xff,0xfe,0xfd,0x80,0xff, // N
              0x0f,0xff,0xff,0xff,0xff,0xff,0x0f,0xff, // v 224
              0xe0,0xdf,0xbf,0x7f,0xbf,0xdf,0xe0,0xff, // v
              };

              //================================================== =======
              void trabang()
              { int8 m,p;
              int16 w; // dia chi cua cac chu trong font
              for(m = 0; m < q; m++) // vong lap de tim vi tri cac chu trong font
              {
              switch(chu[m])
              {
              case 0: w = 0; break; //A
              case 1: w = 16; break; //B
              case 2: w = 32; break; //C
              case 3: w = 48; break; //D
              case 4: w = 64; break; //E
              case 5: w = 80; break; //F
              case 6: w = 96; break; //G
              case 7: w = 112; break; //H
              case 8: w = 128; break; //I
              case 9: w = 144; break; //J
              case 10: w = 160; break; //K
              case 11: w = 176; break; //L
              case 12: w = 192; break; //M
              case 13: w = 208; break; //N
              case 14: w = 224; break; //N
              }
              for(p=0;p<8;p++)
              {
              tam1[m*8+p] = fontto[w+p]; // gan chu hang 1 vao tam1
              tam2[m*8+p] = fontto[w+p+8]; // gan chu hang 2 vao tam2

              }
              }
              }

              //------------------------------------------------------
              void dislay()
              {
              int8 i,l;
              // quet hang 1
              for(l=0;l<5;l++) // thoi gian dich chu
              {
              rc0=0;rc1=1;
              for(i=0;i<t*8;i++) // quet cot
              {
              portd =i;
              portb = ht1[i];
              delay_us(1000);
              portb = 0xff;
              }


              //--------------------------------------------
              // quet hang 2
              rc0=1;rc1=0;
              for(i=0;i<t*8;i++) // quet cot
              {
              portd =i;
              portb = ht2[i];
              delay_us(1000);
              portb = 0xff;
              }
              }
              }
              //================================================== ===
              void main()
              {unsigned int a,b,x,y,z;

              set_tris_b(0);
              set_tris_a(0);
              set_tris_c(0);
              set_tris_e(0);
              set_tris_d(0);
              for(a=0;a<q*8;a++){tam1[a]=0xff;tam2[a]=0xff;}
              trabang();
              while(true)
              {
              portb = 0xff;
              portb = 0;
              rc0 =1; rc1 = 1;
              //--------------------------------------------
              for(b=0;b<t*8;b++){ht1[b]=0xff;ht2[b]=0xff;} // xoa man hinh
              for(x=0;x<(q+t)*8;x++)//< chieu dai chuoi + chieu dai led hien thi
              {
              for(y=(t*8-1);y>0;y--)
              { ht1[y] = ht1[y-1];} // dich phai man hinh hien thi hang 1

              for(z=(t*8-1);z>0;z--)
              { ht2[z] = ht2[z-1];} // dich phai man hinh hien thi hang 2
              if(x<q*8) {ht1[0] = tam1[q*8-1-x]; ht2[0] = tam2[q*8-1-x];} // chieu dai chuoi chu
              else {ht1[0] = 0xff;ht2[0] = 0xff;}
              dislay();
              }
              // delay_ms(1000);
              }
              }
              //=============================================
              à. em đinh đổi con 877a thành con 18f4550 nhưng không biết có cần thay đổi gì không hả các anh. vì con 18f em chưa dùng nên chưa biết làm thế nào
              LMD 238 Tăng Bạc Hổ - TP. Quy Nhơn.

              Comment


              • các bác cho em hỏi khi dịch dữ liệu ở 74595 thì khi cho dữ liệu mới vào các thanh ghi sau có bị mất dữ liệu ko?hay giữ liệu phảo được gửi liên tục vào các thanh ghi? em chưa thấy bác nào trong diễn đàn nói cụ thể về con dịch này,mong các bác sớm hồi âm.thanks

                Comment


                • Anh em cho tôi hỏi chút: dòng max của mấy con led matrix RGY hay bán ngoài thị trường khoảng bao nhiêu mA vậy nhỉ, vd DM5-8824D3, hay 2088 chẳng hạn, có phải 20mA không?
                  |

                  Comment


                  • Các bạn ơi, tôi dùng Tip42 cho bảng 256x16 hai mầu RGY, nhưng khi đo dòng tiêu thụ trên mạch, tính ra mỗi led chỉ hết có hơn 1mA, mặc dù chưa dùng hết công suất của tip42(6A), đấy có phải là do dòng max của led chỉ được 20mA, nên khi quét 16 hàng nó chỉ được vậy ko. Các bạn cho ý kiến với.
                    |

                    Comment


                    • Tôi là thành viên mới, mong các bạn giúp đỡ nhiều nhé..Cám ơn.
                      |

                      Comment


                      • Nguyên văn bởi CHIBANG Xem bài viết
                        Chắc bác DP tôn đại ca TrinhCongQuy làm sư phụ nên mới là đệ tử chân truyền..hắc hắc… chắc cũng như cái sơ đồ 3T post trên đó, chứ chẳng thế tối ưu gì hơn ngoài mấy con đệm hợp lý…. Sory lão tiến bối TCQ có đọc thì bỏ quá.

                        Nhưng tính sơ qua cho bác Duy phi nhé:
                        CLK=0;
                        Cờ C=data>>1;//hoặc >>
                        Out= Cờ C;
                        CLK=1;
                        Ngoài ra đấy còn không kể còn có các lệnh khác như: so sánh nếu hết dịch hết 8 bit thì chuyển data mới, rồi các lệnh phụ khác… mất ít nhất trung bình cũng 4 chu kỳ lệnh. Cứ cho 89C chạy tốc độ 24 Mhz đí.
                        Vậy (4 lệnh) *(0.5uS/1 lệnh) *8000=16ms.
                        Kết luận: chỉ đủ thời gian quét một dòng, không ăn ko nghỉ.

                        Em thì cứ SPI của PIC em choảng thôi. Tốc độ 10Mbps, tổng thời gian 8000 cột chỉ 8000*0.1uS=800 uS, cộng đầu cộng đuôi thì cũng đến 1200 uS. Đảm bảo lý thuyết được 8000 cột*16 hàng dư sức.
                        Tôi thấy nghi nghi cái công thức tính thời gian spi của bạn, với thạch anh 10MHz -> mỗi 1 clock là 0.1us, nhưng clock của spi max chỉ là 0.4us thôi chứ ko phải 0.1us..Vả lại khi đưa đủ dữ liệu ra rồi thì bạn còn đâu thời gian chuẩn bị dữ liệu cho lần quét sau, như vậy với 8000 cột bạn dùng vdk 8 bit là hơi bị bất khả thi, tôi nói thế ko biết có phải ko...
                        |

                        Comment


                        • không ai tra lời cho mình thì mình tự trả lời vậy. quả thật quang báo mà mô phỏng trên máy thì chỉ quét được với tần số thấp thôi chứ tần số cao thì không dùng được.. chỉ còn cách nạp vào và cho chạy thực tế thôi.
                          các bác nào đã có kinh nghiệm làm quang báo lớn cho tôi hỏi tí nhé.
                          tôi làm quang báo dài 192 cột, 2 hàng (dùng 48 led m). phần cứng tôi dùng 138 quét cột và A1013 để phung dòng, cong hàng tôi dùng 74245 để chọn hàng và 2803 để hút dòng thế có ổn không hả các bác. làm thế có đủ dòng để nuôi led không. bác nào có khinh nghiệm thực tế rồi thì cho ý kiến với. chứ nếu tôi mà làm đại vào nếu chạy chữ mà mờ, mờ thì nhịn đói 1 tháng như chơi
                          LMD 238 Tăng Bạc Hổ - TP. Quy Nhơn.

                          Comment


                          • Nếu dùng led matrix thì có lẽ chỉ đủ độ sáng để treo bảng trong nhà thôi, vì led matrix dòng mã của nó thấp (có lẽ chỉ được 20mA), cho nên có dùng đệm 2803 thì dòng đỉnh cũng chỉ đạt 20mA, khi quét 8, thì dòng chỉ còn là 20/8 = gần 3mA thôi, trong khi đó led matrix sáng nhất khi dòng 10-20mA...Tôi nói thế ko biết ý các bạn sao..
                            |

                            Comment


                            • Nguyên văn bởi hightech_uc Xem bài viết
                              Nếu dùng led matrix thì có lẽ chỉ đủ độ sáng để treo bảng trong nhà thôi, vì led matrix dòng mã của nó thấp (có lẽ chỉ được 20mA), cho nên có dùng đệm 2803 thì dòng đỉnh cũng chỉ đạt 20mA, khi quét 8, thì dòng chỉ còn là 20/8 = gần 3mA thôi, trong khi đó led matrix sáng nhất khi dòng 10-20mA...Tôi nói thế ko biết ý các bạn sao..
                              Mấy công thức tính toán ở trên không biết bạn dựa vào cơ sở nào vậy nhỉ!

                              Comment


                              • Nguyên văn bởi tungtot_vl Xem bài viết
                                không ai tra lời cho mình thì mình tự trả lời vậy. quả thật quang báo mà mô phỏng trên máy thì chỉ quét được với tần số thấp thôi chứ tần số cao thì không dùng được.. chỉ còn cách nạp vào và cho chạy thực tế thôi.
                                các bác nào đã có kinh nghiệm làm quang báo lớn cho tôi hỏi tí nhé.
                                tôi làm quang báo dài 192 cột, 2 hàng (dùng 48 led m). phần cứng tôi dùng 138 quét cột và A1013 để phung dòng, cong hàng tôi dùng 74245 để chọn hàng và 2803 để hút dòng thế có ổn không hả các bác. làm thế có đủ dòng để nuôi led không. bác nào có khinh nghiệm thực tế rồi thì cho ý kiến với. chứ nếu tôi mà làm đại vào nếu chạy chữ mà mờ, mờ thì nhịn đói 1 tháng như chơi
                                192 cột mà quét cột thì chương trình phải tối ưu, làm vất vả lắm , bác nghiên cứu về quét hàng đi.
                                Cung cấp Oscilocope , Inverter , Switching , DC power supply , AC millivolt meter ....

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X