Thông báo

Collapse
No announcement yet.

Ai đã thất bại trong việc làm led matrix ....

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

  • #76
    Nguyên văn bởi hoangphat Xem bài viết
    ok pác cứ tham gia nhá mọi người sẽ giúp pác
    pác sẽ tham gia và học hỏi các pác có j ko bit em chỉ pác
    ko biêt pác làm j hay học tới đâu nhưng chỉ cần đam mê học hỏi thì cái cũng làm dc
    10h30 PM pác nào kẹt h đó thì báo em nhá .online cùng lúc mới trao đổi dc
    giờ onl la cố định 10h30 hang ngày ah pac
    Tân binh mong được sự chỉ giáo của tất cả mọi người
    Nguyễn Hòa :Sơn Lôi BX VP

    Comment


    • #77
      oh online 10h30 cách 3 ngày on 1 lần để các pác có ngày ngâm cứu sau đó có thắc mắc thì hỏi lun
      ai ko on dc h đó thì báo em em xếp để on vào h khác cốt là ai cũng có thể tham gia
      rất vui khi pác tham gia nhóm
      good happy!!!
      8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
      liên lạc với em qua địa chi email: Mob: 01882.076.989

      Comment


      • #78
        pác chủ topic oi cho e hoi cach viet chuong trinh cho matran chay tu tren xuong hay tu duoi len thi lam tnao
        dung ma tran 40x8.ma viet bang asm pác nhé
        thanks pác nhiu
        Tân binh mong được sự chỉ giáo của tất cả mọi người
        Nguyễn Hòa :Sơn Lôi BX VP

        Comment


        • #79
          Nguyên văn bởi hoangphat Xem bài viết
          oh online 10h30 cách 3 ngày on 1 lần để các pác có ngày ngâm cứu sau đó có thắc mắc thì hỏi lun
          ai ko on dc h đó thì báo em em xếp để on vào h khác cốt là ai cũng có thể tham gia
          rất vui khi pác tham gia nhóm
          good happy!!!
          3 ngay mot lan ok
          nhug chinh xac thi pat dau la thu may hay ngay bnhiu ha pac
          Tân binh mong được sự chỉ giáo của tất cả mọi người
          Nguyễn Hòa :Sơn Lôi BX VP

          Comment


          • #80
            tối mai on đấy pác lên tham gia cùng anh em nhá
            lúc đó em sẽ phổ biến cho pác sau
            WELLCOME !!!!
            8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
            liên lạc với em qua địa chi email: Mob: 01882.076.989

            Comment


            • #81
              Nguyên văn bởi hoangphat Xem bài viết
              tối mai on đấy pác lên tham gia cùng anh em nhá
              lúc đó em sẽ phổ biến cho pác sau
              WELLCOME !!!!
              ah chit ko hoi may io toi ha pac
              chac 7 hay 8h nhi.hi
              Tân binh mong được sự chỉ giáo của tất cả mọi người
              Nguyễn Hòa :Sơn Lôi BX VP

              Comment


              • #82
                10h30 tối ,tối nào cũng vậy pác kẹt thì báo em nhá
                pác nên đọc hết các bài của em để hiểu rõ hơn
                em nói trong các bài trước rồi
                good luck!!!
                8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                liên lạc với em qua địa chi email: Mob: 01882.076.989

                Comment


                • #83
                  Ke hoach cong viec :
                  1. Thu ctrinh khong co ram chay OK
                  2. Viet 1 doan ctr VB nho de cho truyen va nhan du lieu.
                  3. Viet ctrinh ngan thu truyen tu may tinh xuong mach (test mach ) va thu mach truyen len lai OK
                  4. Sau do chen doan ctrinh giao tiep vao doan ctrinh da chay thu OK sau do cho truyen thu co OK khong
                  5. Sau do tiep tuc viet doan ctrinh truyen nhan du lieu vao Ram
                  6. Tiep tuc doc du lieu tu ram va xuat ra LED
                  7. Neu OK tiep tuc cviec viet giao dien cho Bang LED

                  Pac nao co nhung doan ctr lien quan pót len anh em tham khao va cung nhau hoan thien nhé !

                  Comment


                  • #84
                    NAME Control_AT24Cxx

                    ; This collection of routines allows an AT89C2051 microcontroller to read
                    ; and write the AT24Cxx family of serial CMOS EEPROMS. This version of the
                    ; code is compatible only with the AT89C2051 due to the location of the
                    ; data buffer and stack in RAM. The code may be modified to work with the
                    ; AT89C1051 by relocating or resizing the buffer and stack to fit into the
                    ; smaller amount of RAM available in the AT89C1051. Note that the minimum
                    ; size of the buffer is determined by the page size of the AT24Cxx.
                    ;
                    ; All five AT24Cxx device operations are supported. Byte Write, Current
                    ; Address Read and Random Read are implemented by the functions WRITE_BYTE,
                    ; READ_CURRENT and READ_RANDOM, respectively. Page Write and Sequential Read
                    ; are special cases of functions WRITE_BLOCK and READ_BLOCK, respectively.
                    ; WRITE_BLOCK and READ_BLOCK process from one byte to the number of bytes
                    ; in a page and transfer data between the AT24Cxx and the RAM buffer.
                    ;
                    ; The code supports multiple AT24Cxx devices per bus, each with a unique
                    ; address determined by the wiring of the address pins (A0, A1, A2). The
                    ; three-bit programmable address is passed to the WRITE_BYTE, READ_CURRENT,
                    ; READ_RANDOM, WRITE_BLOCK and READ_BLOCK functions, where it is combined
                    ; with the AT24Cxx fixed address (FADDR) and used to address a device on the
                    ; bus. Refer to the AT24Cxx family data sheets for additional information on
                    ; device addressing.
                    ;
                    ; Functions BYTE_FILL, VERIFY_BYTE_FILL, PAGE_FILL and VERIFY_PAGE_FILL are
                    ; artifacts from the debug process and serve to illustrate the use of the
                    ; device read and write functions with an AT24C64. To modify the code for a
                    ; different member of the AT24Cxx family, simply redefine the values of SIZE
                    ; (the number of bytes per device) and PSIZE (the number of bytes per page).
                    ; To change the fill value, redefine FILL. To change the programmable portion
                    ; of the device address, redefine PADDR to a value from zero to seven.
                    ;
                    ; The code meets all AT24Cxx family timing requirements when executed by an
                    ; AT89Cx051 microcontroller with a 12 MHz clock. Code modifications may be
                    ; required if a faster clock is substituted.


                    FADDR EQU 0a0h ; fixed address for AT24Cxx EEPROMs
                    PADDR EQU 0 ; programmable address (0..7)
                    SIZE EQU 2000h ; bytes per AT24C64
                    PSIZE EQU 32 ; bytes per page for AT24C64
                    FILL EQU 55h ; example fill value

                    ; Register definitions.

                    index EQU r0 ; buffer pointer
                    kount EQU r1 ; byte count register
                    zdata EQU r1 ; data register
                    addr_lo EQU r2 ; 2-byte address register
                    addr_hi EQU r3 ;

                    ; Microcontroller connections to AT24Cxx serial bus lines.

                    SCL BIT p1.2 ; serial clock
                    SDA BIT p1.3 ; serial data


                    DSEG AT 20H

                    ORG 40H
                    buffer: DS PSIZE ; storage for read/write data

                    ORG 60H ; stack origin
                    stack: DS 20H ; stack depth


                    CSEG

                    ORG 0000H ; power on/reset vector
                    jmp on_reset

                    ORG 0003H ; external interrupt 0 vector
                    reti ; undefined

                    ORG 000BH ; timer 0 overflow vector
                    reti ; undefined

                    ORG 0013H ; external interrupt 1 vector
                    reti ; undefined

                    ORG 001BH ; timer 1 overflow vector
                    reti ; undefined

                    ORG 0023H ; serial I/O interrupt vector
                    reti ; undefined

                    ORG 0080H ; begin code space
                    USING 0 ; register bank zero
                    on_reset:
                    mov sp, #(stack-1) ; initialize stack pointer

                    ; Initialize AT24Cxx serial bus lines.

                    setb SDA ; high
                    setb SCL ; high


                    call byte_fill
                    jc fault

                    call verify_byte_fill
                    jc fault

                    call page_fill
                    jc fault

                    call verify_page_fill
                    jc fault

                    fault:
                    jmp $


                    byte_fill:

                    ; Fill every byte in an AT24Cxx with the same value.
                    ; Writes one address at a time (page mode is not used).
                    ; Returns CY set to indicate write timeout.
                    ; Destroys A, B, DPTR, XDATA, ADDR_HI:ADDR_LO.

                    mov zdata, #FILL ; set up fill data
                    mov dptr, #0 ; initialize address pointer
                    x51:
                    mov addr_lo, dpl ; set up address
                    mov addr_hi, dph ;

                    mov b, #120 ; retry counter
                    x52:
                    mov a, #PADDR ; programmable address
                    call write_byte ; try to write
                    jnc x53 ; jump if write OK

                    djnz b, x52 ; try again
                    setb c ; set timeout error flag
                    jmp x54 ; exit
                    x53:
                    inc dptr ; advance address pointer
                    ; mov a, dpl ; check low byte
                    ; cjne a, #(LOW SIZE), x51 ; jump if not last
                    mov a, dph ; check high byte
                    cjne a, #(HIGH SIZE), x51 ; jump if not last
                    clr c ; clear error flag
                    x54:
                    ret


                    verify_byte_fill:

                    ; Verify that all bytes in an AT24Cxx match a fill value.
                    ; Reads and verifies one byte at a time (page mode is not used).
                    ; Performs a Random Read function to initialize the internal
                    ; address counter and checks the contents of the first address.
                    ; Then performs multiple Current Address Read functions to step
                    ; through the remaining addressess.
                    ; Returns CY set to indicate read timeout or compare fail.
                    ; Destroys A, B, DPTR.

                    mov dptr, #0 ; initialize address pointer/counter
                    mov addr_lo, dpl ; set up address
                    mov addr_hi, dph ;

                    mov b, #120 ; retry counter
                    x81:
                    mov a, #PADDR ; programmable address
                    call read_random ; try to read
                    jnc x82 ; jump if read OK

                    djnz b, x81 ; try again
                    jmp x86 ; set error flag and exit
                    x82:
                    cjne a, #FILL, x86 ; jump if compare error
                    jmp x85 ; do remaining addresses
                    x83:
                    mov a, #PADDR
                    call read_current
                    jc x87 ; jump if read fails

                    cjne a, #FILL, x86 ; jump if compare error
                    x85:
                    inc dptr ; advance address pointer
                    mov a, dph ; check high byte
                    cjne a, #(HIGH SIZE), x83 ; jump if not last
                    clr c ; clear error flag
                    jmp x87 ; exit
                    x86:
                    setb c ; set error flag
                    x87:
                    ret


                    page_fill:

                    ; Fill every byte in an AT24Cxx with the same value.
                    ; Writes one page at a time.
                    ; Returns CY set to indicate write timeout.
                    ; Destroys A, B, DPTR, KOUNT, INDEX, ADDR_HI:ADDR_LO.

                    ; First fill buffer.

                    mov b, #PSIZE ; bytes per page
                    mov index, #buffer ; point to buffer
                    x61:
                    mov @index, #FILL ; put fill value in buffer
                    inc index ; advance pointer
                    djnz b, x61 ; next byte

                    ; Copy buffer to device, one page at a time.

                    mov dptr, #0 ; initialize address pointer
                    x62:
                    mov addr_lo, dpl ; set up address
                    mov addr_hi, dph ;
                    mov kount, #PSIZE ; bytes per page

                    mov b, #120 ; retry counter
                    x63:
                    mov a, #PADDR ; programmable address
                    call write_block ; try to write
                    jnc x64 ; jump if write OK

                    djnz b, x63 ; try again
                    setb c ; set timeout error flag
                    jmp x66 ; exit
                    x64:
                    ; Add page size to address pointer.

                    mov a, dpl ; get low byte
                    add a, #PSIZE ; add page size
                    mov dpl, a ; save low byte
                    jnc x65 ; jump if high byte not affected
                    inc dph ; increment high byte
                    x65:
                    ; cjne a, #(LOW SIZE), x62 ; jump if low byte not last
                    mov a, dph ; check high byte
                    cjne a, #(HIGH SIZE), x62 ; jump if not last
                    clr c ; clear error flag
                    x66:
                    ret


                    verify_page_fill:

                    ; Verify that all bytes in an AT24Cxx match a fill value.
                    ; Reads and verifies one page at a time.
                    ; Returns CY set to indicate read timeout or compare fail.
                    ; Destroys A, B, DPTR, KOUNT, INDEX, ADDR_HI:ADDR_LO.

                    ; Copy device page to buffer.

                    mov dptr, #0 ; initialize address pointer
                    x71:
                    mov addr_lo, dpl ; set up address
                    mov addr_hi, dph ;
                    mov kount, #PSIZE ; bytes per page

                    mov b, #120 ; retry counter
                    x72:
                    mov a, #PADDR ; programmable address
                    call read_block ; try to read
                    jnc x74 ; jump if read OK

                    djnz b, x72 ; try again
                    x73:
                    setb c ; set error flag
                    jmp x77 ; exit
                    x74:
                    ; Verify buffer contents.

                    mov b, #PSIZE ; bytes per page
                    mov index, #buffer ; point to buffer
                    x75:
                    cjne @index, #FILL, x73 ; jump if compare fails
                    inc index ; advance pointer
                    djnz b, x75 ; next byte

                    ; Add page size to address pointer.

                    mov a, dpl ; get low byte
                    add a, #PSIZE ; add page size
                    mov dpl, a ; save low byte
                    jnc x76 ; jump if high byte not affected
                    inc dph ; increment high byte
                    x76:
                    ; cjne a, #(LOW SIZE), x71 ; jump if low byte not last
                    mov a, dph ; check high byte
                    cjne a, #(HIGH SIZE), x71 ; jump if not last
                    clr c ; clear error flag
                    x77:
                    ret


                    write_block:

                    ; Write from one byte to one page of data to an AT24Cxx.
                    ; Called with programmable address in A, address of first byte
                    ; in register pair ADDR_HI:ADDR_LO, data in BUFFER, byte count
                    ; in register KOUNT.
                    ; Does not wait for write cycle to complete.
                    ; Returns CY set to indicate that the bus is not available
                    ; or that the addressed device failed to acknowledge.
                    ; Destroys A, KOUNT, INDEX.

                    call start
                    jc x38 ; abort if bus not available

                    rl a ; programmable address to bits 3:1
                    orl a, #FADDR ; add fixed address
                    clr acc.0 ; specify write operation
                    call shout ; send device address
                    jc x37 ; abort if no acknowledge

                    mov a, addr_hi ; send high byte of address
                    call shout ;
                    jc x37 ; abort if no acknowledge

                    mov a, addr_lo ; send low byte of address
                    call shout ;
                    jc x37 ; abort if no acknowledge

                    mov index, #buffer ; point to buffer
                    x36:
                    mov a, @index ; get data
                    call shout ; send data
                    jc x37 ; abort if no acknowledge

                    inc index ; advance buffer pointer
                    djnz kount, x36 ; next byte
                    clr c ; clear error flag
                    x37:
                    call stop
                    x38:
                    ret


                    read_block:

                    ; Read from one byte to one page of data from an AT24Cxx.
                    ; Performs a Random Read which is extended into a Sequential Read
                    ; when more than one byte is read. Called with programmable address
                    ; in A, address of first byte in register pair ADDR_HI:ADDR_LO,
                    ; byte count in register KOUNT.
                    ; Returns data in BUFFER. Returns CY set to indicate that the bus is
                    ; not available or that the addressed device failed to acknowledge.
                    ; Destroys A, KOUNT, INDEX.

                    ; Send dummy write command to address first byte.

                    call start
                    jc x35 ; abort if bus not available

                    rl a ; programmable address to bits 3:1
                    orl a, #FADDR ; add fixed address
                    mov index, a ; save copy of device address
                    clr acc.0 ; specify write operation
                    call shout ; send device address
                    jc x34 ; abort if no acknowledge

                    mov a, addr_hi ; send high byte of address
                    call shout ;
                    jc x34 ; abort if no acknowledge

                    mov a, addr_lo ; send low byte of address
                    call shout ;
                    jc x34 ; abort if no acknowledge

                    ; Send read command and receive data.

                    call start ; second start for read
                    jc x34 ; abort if bus not available

                    mov a, index ; get device address
                    setb acc.0 ; specify read operation
                    call shout ; send device address
                    jc x34 ; abort if no acknowledge

                    mov index, #buffer ; point to buffer
                    x31:
                    call shin ; receive data byte
                    mov @index, a ; save data

                    cjne kount, #1, x32 ; jump if not last byte
                    call NAK ; do not acknowledge last byte
                    jmp x33 ; done
                    x32:
                    call ACK ; acknowledge byte
                    inc index ; advance buffer pointer
                    djnz kount, x31 ; next byte
                    x33:
                    clr c ; clear error flag
                    x34:
                    call stop
                    x35:
                    ret


                    write_byte:

                    ; AT24Cxx Byte Write function.
                    ; Called with programmable address in A, byte address in
                    ; register pair ADDR_HI:ADDR_LO, data in register XDATA.
                    ; Does not wait for write cycle to complete.
                    ; Returns CY set to indicate that the bus is not available
                    ; or that the addressed device failed to acknowledge.
                    ; Destroys A.

                    call start
                    jc x49 ; abort if bus not available

                    rl a ; programmable address to bits 3:1
                    orl a, #FADDR ; add fixed address
                    clr acc.0 ; specify write operation
                    call shout ; send device address
                    jc x48 ; abort if no acknowledge

                    mov a, addr_hi ; send high byte of address
                    call shout ;
                    jc x48 ; abort if no acknowledge

                    mov a, addr_lo ; send low byte of address
                    call shout ;
                    jc x48 ; abort if no acknowledge

                    mov a, zdata ; get data
                    call shout ; send data
                    jc x48 ; abort if no acknowledge

                    clr c ; clear error flag
                    x48:
                    call stop
                    x49:
                    ret


                    read_current:

                    ; AT24Cxx Current Address Read function.
                    ; Called with programmable address in A. Returns data in A.
                    ; Returns CY set to indicate that the bus is not available
                    ; or that the addressed device failed to acknowledge.

                    call start
                    jc x45 ; abort if bus not available

                    rl a ; programmable address to bits 3:1
                    orl a, #FADDR ; add fixed address
                    setb acc.0 ; specify read operation
                    call shout ; send device address
                    jc x44 ; abort if no acknowledge

                    call shin ; receive data byte
                    call NAK ; do not acknowledge byte
                    clr c ; clear error flag
                    x44:
                    call stop
                    x45:
                    ret


                    read_random:

                    ; AT24Cxx Random Read function.
                    ; Called with programmable address in A, byte address in
                    ; register pair ADDR_HI:ADDR_LO. Returns data in A.
                    ; Returns CY set to indicate that the bus is not available
                    ; or that the addressed device failed to acknowledge.

                    push b
                    mov b, a ; save copy of programmable address

                    ; Send dummy write command to set internal address.

                    call start
                    jc x47 ; abort if bus not available

                    rl a ; programmable address to bits 3:1
                    orl a, #FADDR ; add fixed address
                    clr acc.0 ; specify write operation
                    call shout ; send device address
                    jc x46 ; abort if no acknowledge

                    mov a, addr_hi ; send high byte of address
                    call shout ;
                    jc x46 ; abort if no acknowledge

                    mov a, addr_lo ; send low byte of address
                    call shout ;
                    jc x46 ; abort if no acknowledge

                    ; Call Current Address Read function.

                    mov a, b ; get programmable address
                    call read_current
                    jmp x47 ; exit
                    x46:
                    call stop
                    x47:
                    pop b
                    ret


                    start:

                    ; Send START, defined as high-to-low SDA with SCL high.
                    ; Return with SCL, SDA low.
                    ; Returns CY set if bus is not available.

                    setb SDA
                    setb SCL

                    ; Verify bus available.

                    jnb SDA, x40 ; jump if not high
                    jnb SCL, x40 ; jump if not high

                    nop ; enforce setup delay and cycle delay
                    clr SDA
                    nop ; enforce hold delay
                    nop ;
                    nop ;
                    nop ;
                    nop ;
                    clr SCL

                    clr c ; clear error flag
                    jmp x41
                    x40:
                    setb c ; set error flag
                    x41:
                    ret


                    stop:

                    ; Send STOP, defined as low-to-high SDA with SCL high.
                    ; SCL expected low on entry. Return with SCL, SDA high.

                    clr SDA
                    nop ; enforce SCL low and data setup
                    nop
                    setb SCL
                    nop ; enforce setup delay
                    nop ;
                    nop ;
                    nop ;
                    nop ;
                    setb SDA
                    ret


                    shout:

                    ; Shift out a byte to the AT24Cxx, most significant bit first.
                    ; SCL, SDA expected low on entry. Return with SCL low.
                    ; Called with data to send in A.
                    ; Returns CY set to indicate failure by slave to acknowledge.
                    ; Destroys A.

                    push b
                    mov b, #8 ; bit counter
                    x42:
                    rlc a ; move bit into CY
                    mov SDA, c ; output bit
                    nop ; enforce SCL low and data setup
                    setb SCL ; raise clock
                    nop ; enforce SCL high
                    nop ;
                    nop ;
                    nop ;
                    clr SCL ; drop clock
                    djnz b, x42 ; next bit

                    setb SDA ; release SDA for ACK
                    nop ; enforce SCL low and tAA
                    nop ;
                    setb SCL ; raise ACK clock
                    nop ; enforce SCL high
                    nop ;
                    nop ;
                    nop ;
                    mov c, SDA ; get ACK bit
                    clr SCL ; drop ACK clock

                    pop b
                    ret


                    shin:

                    ; Shift in a byte from the AT24Cxx, most significant bit first.
                    ; SCL expected low on entry. Return with SCL low.
                    ; Returns received data byte in A.

                    setb SDA ; make SDA an input

                    push b
                    mov b, #8 ; bit count
                    x43:
                    nop ; enforce SCL low and data setup
                    nop ;
                    nop ;
                    setb SCL ; raise clock
                    nop ; enforce SCL high
                    nop ;
                    mov c, SDA ; input bit
                    rlc a ; move bit into byte
                    clr SCL ; drop clock
                    djnz b, x43 ; next bit

                    pop b
                    ret


                    ACK:

                    ; Clock out an acknowledge bit (low).
                    ; SCL expected low on entry. Return with SCL, SDA low.

                    clr SDA ; ACK bit
                    nop ; enforce SCL low and data setup
                    nop ;
                    setb SCL ; raise clock
                    nop ; enforce SCL high
                    nop ;
                    nop ;
                    nop ;
                    clr SCL ; drop clock
                    ret


                    NAK:

                    ; Clock out a negative acknowledge bit (high).
                    ; SCL expected low on entry. Return with SCL low, SDA high.

                    setb SDA ; NAK bit
                    nop ; enforce SCL low and data setup
                    nop ;
                    setb SCL ; raise clock
                    nop ; enforce SCL high
                    nop ;
                    nop ;
                    nop ;
                    clr SCL ; drop clock
                    ret


                    END
                    

                    Comment


                    • #85
                      Èo >>>> Bác xuantoan135 viết code lên thì giải thích cho a e hiểu lun với chứ post len thế này thì tảo hỏa nhập ma lun quá
                      Tui gà nữa chẳng hiểu j cả ?????
                      Email :

                      Comment


                      • #86
                        có đấy pác nhưng là tiếng anh
                        ko bít pác lấy code ở đâu mà nó dùng làm cái j
                        pác Xuan giải thích tí cho ae hỉu
                        thông báo các pác lun em ngâm cứu dc 24Cxx rồi em đang chuyển nó sang giao tiếp pc và có hi vọng đưa vào led matrix
                        thời gian ngâm cứu cũng đang rút ngắn dần và đề tài đang tiến triển các pác tiếp tục tham gia để em lấy động lực ngâm cứu nhá
                        ah quên cảm ơn pác Xuân về những đóng góp của pác em hứa sẽ hoàn thiện code pác gửi để đưa vào code led matrix của mình
                        các pác có gì cứ đóng góp dù nó nhỏ nhưng góp nhìu thì nó ko còn nhỏ nữa , em sẽ chế biến nó để cho ra bản hoàn thiện
                        Good luck!!!
                        Last edited by hoangphat; 25-05-2010, 00:41.
                        8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
                        liên lạc với em qua địa chi email: Mob: 01882.076.989

                        Comment


                        • #87
                          bác hoangphat ơi cho em tham gia với! bác có thể cho anh em tham khảo 1 bài có hiệu ứng led chạy từ trên xuống dc k ạ?nếu có thể bác cho luôn hiệu ứng chạy--->đứng 1 lát---->chạy tiếp nha! em cảm ơn bác!em đang ôn thi học kỳ nên k onliner dc! mong bác giúp cho! em cũng đam mê cái này lắm nhưng do mới tiếp xúc nên chưa có kinh nghiệm! cảm ơn bác trước nha!

                          Comment


                          • #88
                            Xin Chào.
                            Mình thấy chủ đề này rất đc nhiều người quan tâm.
                            Nếu cảm thấy không phiền
                            Bạn hoangphat có thể cho mình và các bạn số điện thoại để liên lạc đc không?mình và mọi người có rất nhiều điều muốn đc bạn giúp tìm hiểu.

                            Nhân tiện cho mình tham gia online cùng đc không ? bắt đầu 10h30 tối đúng ko bạn?
                            nick: nxuanchuc
                            cảm ơn các bác nhiều.
                            Email:
                            đt-zalo-fb: 0984 93 96 94
                            Kakao talk: sinotruk

                            Comment


                            • #89
                              code led matrix dung ic6p595

                              hiiiiiiiii minh cung moi nhap mon ho 8051 thui

                              Comment


                              • #90
                                chào các bác. em đây cũng tập tành làm về matrix (vừa thích vừa bị ông thầy f :P)
                                sau khi xem n bí kíp cho ra mạch như sau, mong các bác cho í kiến và sữa chữa (vì em cũng chưa hiểu @@)
                                matrix 8x40
                                linh kiện : at89c51, 8con b562, 5 con 74hc595
                                kết nối:
                                P1 nối với cực B tras qua R 1k
                                cực E trans nối Vcc 5V, cực E nối B qua R 10k, cực C nối hàng ledmatrix (làm như vậy cho ca P1 => dùng 8 trans >> 8 hàng led matrix)
                                P3.0 nối chân data (14)cua 595
                                p3.1 nối chân clock và chốt của 595
                                các chân clock và chốt của 5 con 595 nối với nhau. chân Q'7 của 595 thứ 1 nối với chân data (14) của 595 thứ 2 ==> tiếp tục hết 5 con 595
                                8 chân ra Q0--Q7 nối với cột của ledMT. 5 ledMT ứng với 5 con 595.
                                Xong mạch nguyên lý ồi. Em dùng quét cột xuất dữ liệu ra hàng.
                                mấy bác xem thế có đúng ko và cần sữa chữa thế nào. em xem nhiều thứ rồi cắt dán ra thế chứ gà mờ ko hiểu nhiều lẵm. nhất là tính toán dòng chạy trong mạch.
                                bác xem nếu quét cột như thế thì cùng 1 lúc có 8 led sáng 8*15ma (led thường)= 120ma thi 595 có chịu được ko? có cần để trans đệm ở hàng ko? nếu 595 ko chịu dòng được thì thêm ULN2803 vào trước khi nối ra cột đúng ko?
                                bài này mình post ở 3 thư mục. Mấy bác đừng nói em spam nhé. để nhiều chỗ mới có được trả lời sớm và đa dạng

                                Comment

                                Về tác giả

                                Collapse

                                hoangphat đam mê về ngành điện tử Tìm hiểu thêm về hoangphat

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

                                Collapse

                                Đang tải...
                                X