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

  • pác viết vòng lặp cho ct hiển thị nhá
    em code asm nên chỉ tạo cái khung ct để pác tự viết lại

    chuong trinh chay chu(nhãn ct)
    đăt giá trị cho biến với số lần lặp lại
    nhãn để lặp lại (sau khi chạy đủ 1 lần nó sẽ nhảy về đây)
    phân ct chạy chữ cho vào đây
    sau đó so sánh giá trị biến(nếu đủ thì thực hiện lệnh sau nó chưa đủ thì nhảy về nhãn "nhãn để lặp lại"
    lệnh kết thúc ct nháy

    đây là cấu trúc giống hệt ct delay để tạo vòng lặp có giới hạn
    chúc pác thành công
    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


    • cám ơn chủ topic đã nhiệt tình reply
      mọi người tiếp tục để topic thêm sôi động nào
      |

      Comment


      • Phát cho hỏi là LCD font maker mà bạn sử dụng có ***** không
        bản trial tạo đc đoạn chữ ngắn quá
        bạn úp file ***** lên dc không























        watch movies online tv























        watch movies online tv
        |

        Comment


        • phân mềm LCD Font maker ko có cờ rắc
          nếu mún chạy dc dòng chữ dài thì cho chạy 2 ct (2 ct lấy data) để chạy đủ data 1 mình cho chạy tiếp data thứ 2 ,3 ...
          có pác ko hỉu về code nên cũng ko thể phát triển cũng như thay đổi theo ý mún
          em pót lại code có giải thik để các pác tham khảo
          Code:
          ;********************************************************************************
          ;**************//////------------ MATRIX 16x64 ----------\\\\\\******************
          ;**------------------------------------------------------------------------------
          ;**////////////////__ Chuong trinh chay chu tren bo led ___\\\\\\\\\\\\\\\\\\\\\\
          ;**///////////////__ ma tran 8x8 loai 1 mau ________________\\\\\\\\\\\\\\\\\\\\\
          ;**//////////////___ Su dung vi dieu khien 89C52 cua ATMEL __\\\\\\\\\\\\\\\\\\\\
          ;**<<<<<<<<<<<<<---------------------------------------------->>>>>>>>>>>>>>>>>>>
          ;**\\\\\\\\\\\\\\\ ---------- VinhPhat electronic ---------- ////////////////////
          ;********************************************************************************
          ;*****
          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
          ;@@@ CAC TEN BIT DUNG TRONG CHUONG TRINH @@@
          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
          INCLUDE 89C52.MC
          E				BIT		p0.3
          DATA_OUT		BIT 	P0.4
          SH 				BIT 	P0.5
          GREEN 			BIT 	P0.6
          RED 			BIT 	P0.7
          f_run			BIT		7FH
          
          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
          ;@@@ CAC TEN BYTE DUNG TRONG CHUONG TRINH @@@
          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
          data_row			EQU	p2;du liu quet hang
          index_byte_row		equ	30h
          num_row			EQU	16;so matrix 16x8=64
          num_byte_collum		EQU	16 ;so hang
          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:;phan nay lay ma font (do dai font , chiu cao font) va ket hop quet dua du liu ra bang
          	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-6
          	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:; khoi tao ngat
          	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:
          	setb	E	;ta't ma`ng hi`nh de^? cho^'ng lem led
          ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          	MOV 	index_reg1,#num_byte_collum ; so byte can lay ra	
          ___loop1: 	
          	MOV 	index_reg2,#8 ;so DATA trong 1 led
          	MOV 	A,index_point ; gan bien vao A
          	movc 	a,@a+dptr ;LAY DU LIEU TRONG BO NHO CT
          ___loop2: 	
          	CLR 	C ;dua co nho c ve 0
          	RLC 	A ; xoay phai co nho voi A
          	MOV 	DATA_OUT,C; dua data ra 595
          	CLR 	SH; tao xung cho hien data ra hang (tuc ca cot da dc hien data
          	SETB 	SH;
          	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; gan gia tri	
          	MOV 	A,index_point	; dua vao A	
          	movc 	a,@a+dptr ;LAY DU LIEU TRONG BO NHO CT
          ___loop3: 	
          	CLR 	C ; tuong tu nhu tren nhung dich byte de thay chu chay
          	rlc 	a
          	mov 	DATA_OUT,c
          	clr 	SH
          	setb 	SH
          	djnz 	index_reg2,___loop3	;dich du 8 bit
          ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
          ___skip1:
          	CLR 	GREEN; tao xung dich data
          	setb 	GREEN
          	mov	data_row,index_byte_row	;chon hang va tich cuc hc154
          	CLR	E; du 16 hang cho reset
          	mov	index_point,#0
          	ret
          
          ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          ;#######################################################################################
          ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          ;tinh toan xac dinh het dong chu cho chay lai
          set_index_dptr:
          	mov	a,dpl
          	add	a,width_byte
          	mov	dpl,a
          	jnc	___skip2
          	inc 	dph
          ___skip2:
          	ret
          ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          ;#######################################################################################
          ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          string_code:
          
          DATA dua vao day
          
          
          end
          chúc các pác thành công
          thắc mắc chõ nào nữa em giải thik sau
          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


          • cám ơn Phát đã nhiệt tình
            không biết nên hôm wa đi kiếm crac-k LCD font maker thế là dính virut vào forum post bài nó tự past link, cài lại win mới xong

            nếu mún chạy dc dòng chữ dài thì cho chạy 2 ct (2 ct lấy data) để chạy đủ data 1 mình cho chạy tiếp data thứ 2 ,3 ...
            = đoạn này không hiểu, vậy đoạn chữ dài phải phân ra là do LCD maker không bản quyền nên tạo đc đoạn chữ quá ngắn hay do phải viết code phân đoạn ra chạy mới ổn định? mình cứ tưởng cho đoạn data sau khi biên dịch đoạn text vào phần DB thì nó chạy hết chứ.
            Last edited by COLE; 16-12-2010, 22:28.
            |

            Comment


            • viết chạy hết nếu mun chạy thêm thì thêm đoạn sau nữa
              tức là khi dịch thì dịch 2 đoạn
              chạy đoạn 1 tương úng với phân hiển thị 1 (phần này sẽ lấy data thứ 1 để chạy) canh thời gian chạy hết để viết tiếp cho đoạn sau
              tức chạy ct thứ 2 (lấy data đoạn 2 để hiển thị nối cho đoạn trước ) cứ như vậy cho các đoạn sau nữa
              giải pháp là dùng vong lặp (cái này phải canh thoi gian chạy hết data 1 để cho nó chạy data 2 ,3 ,4 .....
              cách này em đã làm chạy dc rồi ( các pác cứ ngâm cứu viết thử khi nào bí em post lên cho tham khảo )
              chúc các pác thành công
              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


              • tôi đọc cái này thấy rất thích , nhưng do học ra truong quá lâu rôi , mà lại giờ làm viec ở nơi vùng quê hẻo lánh nên chư biết tí nào về led ma trận , nên nhờ anh em trên diễn đàn có tài liệu nào về lập trình led matran bang c cho toi xin
                cam on nhiều
                dịa chỉ : vinhdl78@gmail.com

                Comment


                • Tôi có một vấn đề về mô phỏng thanh ghi nạp 2 chiều song song bằng simulik. Tôi đang gặp vấn đề về thể hiện 2 cái serial input của mạch này. Mong bà con chỉ giáo, nếu có mạch mô phỏng thì có thể show lên cho mình học hỏi, thanks

                  Comment


                  • Bac Hoang Phat cho em hoi ram noi tiep 24XX giao tiep vơi VDK theo chuan I2C phai khong? ma em khong hieu cach mat mach cua pac

                    Comment


                    • oh mạch em có vẽ thêm con rom 24Cxx thôi chứ thực ra chưa dùng tới
                      nếu phát triển bảng matrix thì dùng nó để lưu data hiển thị khi nhận từ PC
                      và rom này giao tiếp theo chuẩn I2C
                      <<< GÕ DẤU NHA PÁC KO BỊ KỈ LUẬT ĐÓ>>>
                      Chúc vui
                      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


                      • [QUOTE=hoangphat;317494]oh mạch em có vẽ thêm con rom 24Cxx thôi chứ thực ra chưa dùng tới
                        nếu phát triển bảng matrix thì dùng nó để lưu data hiển thị khi nhận từ PC
                        và rom này giao tiếp theo chuẩn I2C
                        <<< GÕ DẤU NHA PÁC KO BỊ KỈ LUẬT ĐÓ>>>
                        Chúc vui[/QUOT
                        MẤY BÁC TRAO ĐỔI SAY MÊ QUÁ
                        MÀ TUI THẤY BÂY GIỜ NGƯỜI TA MUA MODUL CỦA TR KHÔNG À
                        RẺ MÀ ĐẸP
                        BÂY GIỜ MÌNH CÓ LÀM THÌ CHỈ LÀM BOART ĐIỀU KHIỂN THÔI CHỨ MODUL MUA KHỎE HƠN

                        Comment


                        • Mà muốn làm dc bort dk mà dùng dc modul trung quốc thì phải có chương trình giao diện để giao tiếp
                          mà tui đang cần nếu ai có thì cho mượn ct giao diện trên máy tính thi tui viết dc chương trình cho 89
                          nên anh em trên diễn đàn có thì cho mình xin hay có ai biết có ct nào down dc không thì chỉ nha

                          Comment


                          • Nguyên văn bởi phamvanhien1 Xem bài viết
                            mà muốn làm dc bort dk mà dùng dc modul trung quốc thì phải có chương trình giao diện để giao tiếp
                            mà tui đang cần nếu ai có thì cho mượn ct giao diện trên máy tính thi tui viết dc chương trình cho 89
                            nên anh em trên diễn đàn có thì cho mình xin hay có ai biết có ct nào down dc không thì chỉ nha
                            làm dc thì sẽ gởi anh em tham thảo
                            cảm ơn các anh em nha

                            Comment


                            • cần hướng dẫn lắp ráp bảng led Matrix từ các module Trung Quốc

                              anh em nào có làm ơn chia sẻ cho em với ,em muón tự ráp 1 cái biển quảng cáo nhưng báo giá của mấy nhà quảng cáo mắc quá .!

                              em muốn làm biển kích thước : 32 X 320 với những linh kiện sau: P20 Ba mầu KT 16 x 32 - CPU BX 4A1 - Nguồn 5V 40A

                              em chưa hình dung được là phải nối các modul với nhau như thế nào và nối các modul với CPU nữa ,bác nào đã làm rùi thì chỉ bảo em cách lắp ráp với

                              em cam on !
                              Last edited by sonhoang1606; 13-01-2011, 00:49.

                              Comment


                              • ủng hô topic

                                Topic này còn hoạt động ko mấy anh, Em đọc hết 29 trang rùi mà chưa rút ra đc j nhiều, tại mấy cái file mà anh hoangphat gửi toàn là mạch cao cấp, mà dân amateur như em thì đọc code hiểu sao nổi, nếu đc xin mấy anh post cho 1 bài file và code đơn giản quét led theo HÀNG sử dụng 4 con led 8*8 chẳng hạn hoặc 1-2 con cũng đc, cột xài 595 để dịch, hàng thì dùng trans hay 138 hay 154(tại thấy mấy cái này xài thông dụng), để cho em có cái nền về cách viết code theo kiểu quét hàng, tiếp đó là thêm 1 bài về cách quét led theo mảng RAM khỏang 16 bytes or 32 bytes thui, mong các anh chỉ dạy, tại em đang làm đồ án về quang báo này nên mong anh chị giúp đỡ, có nói j sai anh chị bỏ qua cho, nhờ anh chị coi dùm cái file phần cứng của em như vậy đc ko mail em :haiphung88@yahoo.com
                                Click image for larger version

Name:	ma trix.jpg
Views:	3
Size:	171.9 KB
ID:	1346345

                                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