Thông báo

Collapse
No announcement yet.

[Hiển thị] LED Matrix Display (tập 2)

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

  • matrix
    replied
    chào các bác đam mê matrix_led!
    các bác chắc hẳn cũng không lạ với con ic 4953 , em kiếm chỗ bán nó khó quá, bác nào bán hay biết chỗ bán pm cho em nha, mail của em: duythien88hn@gmail.com,nick yahoo:matrix010988.
    Thanks các bác nhiều!

    Leave a comment:


  • huyphuongdj
    replied
    sao không có anh nào giúp em giải quyết vấn đề của em vậy

    Leave a comment:


  • vu son
    replied
    đó là led 2 màu bạn ạ, thường thì màu đỏ có điện áp thấp hơn. màu còn lại có điện áp cao hơn bạn dùng nguồn cao hơn 1 chút thử lại các chân đó thử xem. nó khoảng 1,7 - 1,8V là sáng rồi. chúc may mắn!

    Leave a comment:


  • mr_thoai
    replied
    Nghiền mấy trăm trang diễn đàn mà vào đâu được ít quá!!!! các bác toàn đưa code vè cái led matrix này em đọc cũng rất khỏ hiểu!!! bác nào có thể giúp em giải thích cách lập trinh led matrix được ko??
    1, Đâu tiên các bác giúp em đưa ra cái sơ đồ thuật toán .
    2, Sau đó dến code
    3, Và có cả phần cứng chạy mô phỏng nữa nhé
    Cứ lan man thế này chắc em vỡ đầu mất, hy vọng các bác quan tâm giúp đỡ em cái phần điện tử lập trình này em khoai lắm!!!

    Leave a comment:


  • TheHouse
    replied
    Thiệt, mới đây mà 20 pages rùi.

    Đây là vấn đề của mình. Việc hiển thị chữ trên quang báo thì đã xong. Nhưng còn hình ảnh & các chuyển động phức tạp thì chưa được. Nếu có 1 file Image, mình phải làm gần đúng là ngồi vẽ lại nó rùi lấy từng tọa độ, màu sắc rùi đưa hết thông tin vào bộ nhớ ngoài. Thông tin này không ít tí nào.

    Lần trước có đi ngang Quốc Lộ 13, chỗ cây xăng, thấy họ làm bảng quang báo rất hay. Trên quang báo có hình cây dừa đưa qua đưa lại, rồi xe cộ chạy ngược lại (từ phải sang trái), người đi bộ từ (trái qua phải). Nghĩ mãi mà không chắc là mình có thể làm được, vì làm theo cách cổ điển thì hơi "NGU" sao ấy. Nếu là cây dừa không thì làm được, thêm người & xe cộ đi ngược nhau kèm với cây dừa thì bó tay. Nghĩ đây là chén cơm của người ta nên không dám hỏi, nhưng nếu mấy bác có chủ ý muốn chỉ thì mình rất muốn tham khảo..

    Leave a comment:


  • chuotdientu
    replied
    Nguyên văn bởi phulam007 Xem bài viết
    Mong các sư huynh giúp đỡ.. Em cũng đang làm cái quang báo này.. Của em nhỏ thôi có 16x40 àh.. Của em dùng 2 port là portb và portd để quét 16 hàng (Hix.. dùng 75154 qua con uln2803 nó kg ra gì cả).. 5 con 74595 dùng để đưa dữ liệu vào. Thuật toán quét của em như sau : ( mấy anh xem sai chỗ nào sửa giùm em nha)
    - 1 ký tự là 16x8 16 byte cho 1 ký tự.
    - Em dùng 1 mảng đệm 80 phần tử ( để trống ) dem[80]=();
    đầu tiên : hàng 1 : đưa dữ liệu của các phần tử 0, 16, 32,48,64 trong mảng đệm qua 595
    hàng 2 : các phần tử 1,17,33,49,65 ..............
    .............................................
    .............................................
    hàng 16 : 15,31,47,63,79.....
    Vậy mỗi hàng gửi ra là 40 bít.
    Em quét như vậy có đúng không ? ... để chữ chạy sang trái thì làm sao nữa..? còn cách nào nữa kg ? (quét hàng nha ) ...
    Mong đc hồi âm từ mấy anh.... dạo này thấy box này vắng hoe,, kg thấy đại ca nào vào..
    Nguyên văn bởi phulam007 Xem bài viết
    Mong đc hồi âm từ mấy anh.... dạo này thấy box này vắng hoe,, kg thấy đại ca nào vào..
    box hay không có bạn hiền
    không vô không phải không ghiền không vô
    mà vì chủ đề này đã thảo luận quá nhiều rồi!

    xem đây thử có giúp ích gì không?
    http://dientuvietnam.net/forums/showthread.php?p=90829

    Leave a comment:


  • huyphuongdj
    replied
    đúng là dạo này diễn đàn vắng thật
    không co sư phụ nào giúp em àh

    Leave a comment:


  • phulam007
    replied
    Mong các sư huynh giúp đỡ.. Em cũng đang làm cái quang báo này.. Của em nhỏ thôi có 16x40 àh.. Của em dùng 2 port là portb và portd để quét 16 hàng (Hix.. dùng 75154 qua con uln2803 nó kg ra gì cả).. 5 con 74595 dùng để đưa dữ liệu vào. Thuật toán quét của em như sau : ( mấy anh xem sai chỗ nào sửa giùm em nha)
    - 1 ký tự là 16x8 16 byte cho 1 ký tự.
    - Em dùng 1 mảng đệm 80 phần tử ( để trống ) dem[80]=();
    đầu tiên : hàng 1 : đưa dữ liệu của các phần tử 0, 16, 32,48,64 trong mảng đệm qua 595
    hàng 2 : các phần tử 1,17,33,49,65 ..............
    .............................................
    .............................................
    hàng 16 : 15,31,47,63,79.....
    Vậy mỗi hàng gửi ra là 40 bít.
    Em quét như vậy có đúng không ? ... để chữ chạy sang trái thì làm sao nữa..? còn cách nào nữa kg ? (quét hàng nha ) ...
    Mong đc hồi âm từ mấy anh.... dạo này thấy box này vắng hoe,, kg thấy đại ca nào vào..

    Leave a comment:


  • huyphuongdj
    replied
    mong các anh giúp mình

    Mình không học chính quy về điện tử, nhưng vì sờ thích nên tự học hỏi để thỏa mãn sự đam mê.Mình sưu tầm được một mạch matrix16x64 và code, mình đã mở rộng bảng thành 16x128,nhưng khi chạy mô phòng thì chữ chạy bị giât và chữ chạy không liên tục được,mình gửi file code,mong các anh giúp mình nha.chân thành cảm ơn

    ;************************************************* *******************************
    ;**************//////------------ MATRIX 16x64 ----------\\\\\\******************
    ;**------------------------------------------------------------------------------
    ;**////////////////__ Chuong trinh chay chu tren bo led ___\\\\\\\\\\\\\\\\\\\\\\
    ;**///////////////__ ma tran 8x8 loai 1 mau ________________\\\\\\\\\\\\\\\\\\\\\
    ;**//////////////___ Su dung vi dieu khien 89C52 cua ATMEL __\\\\\\\\\\\\\\\\\\\\
    ;**<<<<<<<<<<<<<---------------------------------------------->>>>>>>>>>>>>>>>>>>
    ;**\\\\\\\\\\\\\\ __ Thuc hien bien doi du lieu noi tiep ____////////////////////
    ;**\\\\\\\\\\\\\\\ ___ sang song song roi dua ra day led ___/////////////////////
    ;**\\\\\\\\\\\\\\\\ ---------- By Tien Huy ---------- //////////////////////
    ;************************************************* *******************************
    ;*****
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ;@@@ CAC TEN BIT DUNG TRONG CHUONG TRINH @@@
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    en_hc154 bit p3.3
    sh_cp BIT P3.0
    data_serial BIT P3.1
    st_cp BIT P3.2
    f_run BIT 7FH

    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ;@@@ CAC TEN BYTE DUNG TRONG CHUONG TRINH @@@
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    data_row equ p2
    index_byte_row equ 30h
    num_row equ 16
    num_byte_collum equ 32
    index_point equ 31h
    index_reg1 equ 32h
    index_reg2 equ 33h
    num_bit equ 34h
    width_byte equ 35h
    buffer_dptrh equ 36h
    buffer_dptrl equ 37h
    buffer_dptrh1 equ 38h
    buffer_dptrl1 equ 39h
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    ;@@@ start@@@
    ;@@@ OSC 12Mhz@@@
    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    org 0000h
    ljmp main
    org 000bh
    ljmp ngat_timer0
    org 0030h
    main:
    clr f_run
    mov num_bit,#0

    mov dptr,#string_code+2
    mov a,#0
    movc a,@a+dptr
    mov width_byte,a
    mov dptr,#string_code-5
    lcall set_index_dptr
    mov buffer_dptrh1,dph
    mov buffer_dptrl1,dpl
    mov dptr,#string_code+3
    mov buffer_dptrh,dph
    mov buffer_dptrl,dpl
    mov index_point,#0
    mov index_byte_row,#0
    lcall init_interrupt
    ljmp begin
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    begin:
    ___here:
    mov ie,#82h
    jnb f_run,___here
    mov ie,#0
    clr f_run
    inc num_bit
    mov a,num_bit
    cjne a,#9,___here
    ;mov ie,#0
    mov num_bit,#0
    mov a,dpl
    cjne a,buffer_dptrl1,___skip3
    mov a,dph
    cjne a,buffer_dptrh1,___skip3
    mov dptr,#string_code+3
    mov buffer_dptrh,dph
    mov buffer_dptrl,dpl
    mov index_byte_row,#0
    sjmp ___here
    ___skip3:
    inc dptr
    mov buffer_dptrh,dph
    mov buffer_dptrl,dpl
    ;mov ie,#82h
    sjmp ___here
    sjmp $
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    init_interrupt:
    mov tmod,#01h
    setb tr0
    setb tf0
    mov ie,#82h
    ret
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ngat_timer0:
    mov th0,#0f3h
    mov tl0,#0a8h ;12^6/12/50hz/16=1250(fb1e)
    lcall shift_data
    lcall set_index_dptr
    inc index_byte_row
    mov a,index_byte_row
    cjne a,#num_row,___exit
    mov index_byte_row,#0
    mov dph,buffer_dptrh
    mov dpl,buffer_dptrl
    setb f_run
    ___exit:
    reti
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    shift_data:
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    mov index_reg1,#num_byte_collum
    ___loop1:
    mov index_reg2,#8
    mov a,index_point
    movc a,@a+dptr ;LAY DU LIEU TRONG BO NHO CT
    ___loop2:
    clr c
    rlc a
    mov data_serial,c
    clr sh_cp
    setb sh_cp
    djnz index_reg2,___loop2 ;dich du 8 bit
    inc index_point
    djnz index_reg1,___loop1 ;dich du 8 byte
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    mov a,num_bit ;de kiem tra co zero
    jz ___skip1
    mov index_reg2,num_bit
    mov a,index_point
    movc a,@a+dptr ;LAY DU LIEU TRONG BO NHO CT
    ___loop3:
    clr c
    rlc a
    mov data_serial,c
    clr sh_cp
    setb sh_cp
    djnz index_reg2,___loop3 ;dich du 8 bit
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
    ___skip1:
    setb en_hc154 ;ta't ma`ng hi`nh de^? cho^'ng lem led
    clr st_cp
    setb st_cp
    mov data_row,index_byte_row ;chon hang va tich cuc hc154
    clr en_hc154
    mov index_point,#0
    ret

    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    set_index_dptr:
    mov a,dpl
    add a,width_byte
    mov dpl,a
    jnc ___skip2
    inc dph
    ___skip2:
    ret
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ;################################################# ######################################
    ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    string_code:

    ;unsigned char code Bmp002:
    ;-------------------------------------------------------------------------------
    ; If font display distortion, please check Fonts format of setup.
    ; Source file / text : Líp ®iÖn tö K2
    ; Width x Height (pixels) :243X16
    ; Font Format/Size : Monochrome LCD Fonts ,Horizontal scan ,Big endian order/496Byte
    ; Font make date : 10/11/2009 7:37:17 AM
    ;-------------------------------------------------------------------------------
    DB 0F3H,010H,01FH;Width pixels,Height pixels,Width bytes
    DB 000H,000H,000H,000H,000H,000H,000H,000H,001H,080H, 000H,000H,001H,000H,000H,000H
    DB 000H,000H,007H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,001H,0FEH,001H,080H,000H, 000H,01FH,03CH,038H,000H,000H
    DB 000H,001H,000H,03FH,09FH,01FH,080H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,0F8H,003H,000H,000H,000H, 07FH,0BCH,028H,000H,000H,002H
    DB 002H,018H,01FH,008H,063H,0C0H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,0F8H,004H,038H,000H,000H,00FH, 03CH,064H,000H,000H,006H,004H
    DB 038H,01FH,010H,07BH,0E0H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,0F8H,000H,038H,000H,000H,04FH,000H, 000H,000H,000H,00EH,000H,03CH
    DB 01FH,030H,07BH,0E0H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,0F8H,007H,0F3H,0EEH,001H,0FFH,07CH,07CH, 07DH,0C0H,03FH,0FFH,0F0H,01FH
    DB 078H,003H,0E0H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,0F8H,00EH,079H,0FFH,001H,0EFH,03CH,0EEH,03FH, 0E0H,01EH,03DH,0E0H,01FH,0F8H
    DB 003H,0C0H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 0F8H,01EH,079H,0EFH,083H,0EFH,03DH,0EFH,03DH,0E0H, 01EH,03DH,0E0H,01FH,07CH,00EH
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,0F8H
    DB 05EH,079H,0EFH,083H,0EFH,03DH,0FFH,03DH,0E0H,01EH, 03DH,0E0H,01FH,07EH,010H,020H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,0F8H,05EH
    DB 079H,0EFH,003H,0EFH,03DH,0E0H,03DH,0E0H,01EH,0BDH, 0E0H,01FH,03EH,02FH,0E0H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,0F8H,0CEH,071H
    DB 0EFH,001H,0EFH,03CH,0E1H,03DH,0E0H,01EH,0BDH,0E0H, 01FH,01FH,07FH,0E0H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,001H,0FFH,0C7H,0E1H,0FEH
    DB 000H,0FFH,0FEH,076H,07DH,0F0H,01FH,03FH,0F0H,03FH, 0BFH,0FFH,080H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,001H,0E0H,000H
    DB 000H,000H,008H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,001H,0E0H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,001H,0E0H,000H,000H,000H
    DB 038H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 003H,0F0H,000H,000H,000H,038H
    DB 000H,000H,000H,000H,000H,000H,000H,000H,000H,000H, 000H,000H,000H,000H,000H,000H


    end

    Leave a comment:


  • quangbtre
    replied
    Chào cả nhà! có ai giúp mình viết code ASM điều khiển ma trận 8 x 24, sơ đồ phần cứng như sau. Mình dùng chỉ 1 con 89c51. Port 0 đưa dữ liệu ra hàng ( 8 hàng ) qua con A1015, các Port 1-3 quét 24 cột, qua con c1815.

    Leave a comment:


  • nhti
    replied
    hihi,mới độ xong cái bảng matrix của thằng TQ.đây là code mình viết cho nó,mình chỉ mới thử viết xong một module cho nó thoi,
    đây là link của nó,(chỉ phần mềm thoi) còn phần cứng thì mình sử dụng module của thằng TQ nó ráp bằng led rời (16X32) nhưng chỉ quét 4 hàng thoi
    http://www.mediafire.com/?zjdhjyimmn3

    Leave a comment:


  • suotd1a
    replied
    Mình xin mạo muội hỏi chen ngang 1 chút mọi người nhé!Cho mình hỏi là cái đường BUS trong protues vẽ như thế nào vậy?làm thế nào để nối chân linh kiện với đường BUS đó vậy?Thanks!

    Leave a comment:


  • nhti
    replied
    e có một thắc mắc thế này mong các bác giúp đỡ,e có một module 2x10matrix(16hang và 80 cột),lúc đầu e dùng quét cột để dịch chử tử phải sang trái hoặc ngược lại, nhưng cũng với phần cứng đó, e chuyển qua quét hàng thì có thể làm dịch chử từ trái qua phải hoặc ngược lại được kô,tại e làm mà nó toàn dịch từ trên xuống hoặc dưới lên thôi,cảm ơn các bác

    Leave a comment:


  • bravesoldier
    replied
    Nguyên văn bởi mocdailam Xem bài viết
    mấy bảng quang báo nó cả mấy ngàn con led bạn quét kiểu đó e đuối!
    mình từng làm con 18f4550 40M quuet 64 x 4 x 24 con led don xử lý tốt các hiệu ứng dịch, chữ lượn sóng , lá rơi ...
    mình nói chỉ mang tính chất góp ý thôi! Còn bạn làm thế nào thì tùy. bạn có biết nó dịch chỉ số mảng theo nguyên tắc gì không? view code hợp ngữ để xem đi!
    tiện đây xin hỏi các bác, lập trình trên con 18f4550 có cho phép chứa mảng dữ liệu font rất lớn không? Em tạo mảng font chữ tiếng Việt Arial cho 16F877A dựa theo RTB cua BVHoang, ép theo bảng mã VISCII mà thấy chật vật khi hiển thị nhiều dòng nội dung quá (phỏng theo các hàm của LinhNC). Thanks các bác!
    Last edited by bravesoldier; 06-01-2010, 15:33.

    Leave a comment:


  • bravesoldier
    replied
    Nguyên văn bởi aladin_09 Xem bài viết
    Cảm ơn anh nhiều nhe. Hiên giờ em làm được rồi nhưng em sẽ xem lại chỉ dẫn của anh .
    À anh cho em hỏi sau mỗi lần tạo Font anh có thêm phần này: nó có tác dụng như thế nào hả anh?

    unsigned char _bvh_mspace FontIncX[]= {
    0x03,0x03,0x04,0x06,0x06,0x08,0x07,0x02,0x03,0x03, 0x06,0x06,0x02,0x02,0x02,0x05,
    0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06,0x06, 0x02,0x02,0x06,0x06,0x06,0x05,
    0x07,0x06,0x06,0x06,0x07,0x05,0x05,0x06,0x06,0x03, 0x04,0x06,0x05,0x08,0x07,0x06,
    0x06,0x06,0x06,0x06,0x05,0x06,0x05,0x09,0x05,0x05, 0x05,0x03,0x05,0x03,0x05,0x05,
    0x02,0x05,0x05,0x05,0x05,0x05,0x03,0x05,0x05,0x02, 0x02,0x05,0x02,0x08,0x05,0x05,
    0x05,0x05,0x03,0x05,0x03,0x05,0x04,0x07,0x04,0x04, 0x04,0x03,0x05,0x03,0x06
    };
    đây chính là mảng chỉ ra độ rộng của các ký tự tương ứng trong bảng Font. Bi giờ mình mới hiểu. Thanks BVHoang rất rất nhiều vì chương trình tạo font của bác!!!

    Leave a comment:

Về tác giả

Collapse

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

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

Collapse

Đang tải...
X