Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 29 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
29
Dung lượng
3,14 MB
Nội dung
Ma trận đèn LED Ma trận đèn LED Lập trình cho led ma trận là một bài tập thú vị cho người mới học vi điều khiển.ở đây tôi giới thiệu một ví dụ đơn giản: - Hiển thị chữ " LUONG NHU VINH LOP 06CDT2 "trên led ma trận màu đỏ. - Dòng chữ chạy từ phải sang trái. Code chuong trinh: INCLUDE 8051.mc ORG 00H MAIN: MOV DPTR,#DATABASE ;DIA CHI NAP DU LIEU AAA: MOV R0,#5 ;TOC DO HIEN KY TU BBB: LCALL SCANDATA ;NAP DU LIEU DJNZ R0,BBB INC DPTR MOV A,DPL MOV R1,DPH CJNE R1,#00H,AAA ;KIEM TRA KET THUC CHUOI CJNE A,#DEH,AAA SJMP MAIN SCANDATA: PUSH ACC PUSH 00H PUSH 01H MOV R0,#00H ;DIA CHI DU LIEU DAU TIEN TRON DATABASE MOV R1,#01H ;HIEN THI RA COT DAU TIEN SCAN: MOV A,R0 MOVC A,@A+DPTR ;NAP DU LIEU TU DATABASE VAO A MOV P2, A ;HIEN THI RA DONG TUONG UNG MOV P0,R1 ;HIEN THI RA COT DAU TIEN LCALL DELAY5MS ;CHUONG TRINH TAO TRE 5 MS MOV R4,#40H ;CHONG LEM MOV P0,#00H DDD: DJNZ R4,DDD INC R0 ;HIEN THI DU LIEU KE TIEP MOV A,R1 ;CHUYEN SANG COT KE TIEP RL A MOV R1,A CJNE R0,#8H,SCAN ;KIEM TRA QUET COT THU 8 CHUA POP 01H POP 00H POP ACC RET DELAY5MS: PUSH 00H PUSH 01H MOV R1,#10 CCC: MOV R0,#250 DJNZ R0,$ DJNZ R1,CCC POP 01H POP 00H RET DATABASE: DB 00H,00H,00H,00H,00H,00H DB 0FEH,80H,80H,80H,80H,00H DB 7EH,80H,80H,80H,7EH,00H DB 7CH,82H,82H,82H, 7CH,00H DB 0FEH, 04H, 08H,10H,0FEH,00H DB 7CH, 82H,92H,92H, 74H,00H,00h,00h ,00H DB 0FEH, 04H, 08H,10H,0FEH,00H DB 0FEH,10H, 10H,10H,0FEH,00H DB 7EH,80H,80H,80H,7EH,00H,00h,00h,00H DB 3EH, 40H, 80H,40H, 3EH,00H DB 82H,0FEH,82H,00H DB 0FEH, 04H, 08H,10H,0FEH,00H DB 0FEH,10H, 10H,10H,0FEH,00H,00H ,00H,00H DB 0FEH,80H,80H,80H,80H,00H DB 7CH,82H,82H,82H, 7CH,00H DB FEH,12H,12H,CH,00H DB 44H, 00H,00H DB 7CH, 82H, 82H,82H,7CH,00H DB 7CH,92H,92H,92H,60H,00H DB 7CH,82H, 82H,82H, 44H,00H DB 10H,0FEH,92H,82H, 82H,7CH,00H DB 02H, 02H,0FEH,02H, 02H,00H DB 8CH,0C2H,0A2H,92H,8CH,00H,00H,00H,00H,00H,00H,00H, 00H ;"2" END kết quả từ 1 tới 1 trên 1 !"#$ • Ðiều Chỉnh • Search Thread • Cho Ðiểm Chủ Ðề Này Display 1. 14-12-2010 10:32 PM #1 %& '( o Xem Hồ Sơ o View Forum Posts o Nhắn Tin Riêng o Add as Contact )*+ ,-.- /012 2345, Tham gia ngày Apr 2010 Đến từ Quảng Nam Bài gởi 2.027 0 lần với chủ đề này 922 cho tổng số bài 26 Thượng Sỹ Số lần cộng|trừ: 0 lần ,6: $ 78 !"#$ ►9:;<=" ►*> " ►?: ►2./@ $AB$=B="$" ►8C ►4D#=" D/DEDDFGHGI Trong proteus có rất nhiều loại led ma trận , ví dụ như loại 8x8 hoặc 5x8.Tôi chỉ nói về led matrix loại 8x8 vì nó phổ biến và thường hay được dung ,các loại led matrix khác nguyên lý đều tượng tự như nhau . Led ma trận trong proteus thì có nhiều màu khác nhau ,có 3 loại chính là màu đỏ ,màu xanh lá cây ,và màu xanh da trời . Mỗi loại này lại có sự khác biệt nhau về chân để xác định đâu là hàng đâu là cột . Do đó để đơn giản tui ,nói về loại màu xanh lá cây ,vì loại này trông nó đẹp . Led ma tran màu xanh lá cây có hình dạng như sau : DDJ;J8K2L2/MNIO8PDQ2/R Khi chúng ta làm việc với led matrix , điều quan tâm lớn nhất của chúng ta là phải xác định xem ,chân của nó thế nào ,tức là đâu là chân hàng , đâu là chân cột ,trong các chân hàng ,thì chân nào là chân ứng với hàng đầu ,và chân nào ứng với hàng cuối để chúng ta xác định bít cao ,bít thấp . - Dùng nguồn 5V và mass để thử và rút ra kết luận như hình vẽ sau Ta thấy các chân ở trên là chân hàng và được nối với mass suy ra trong cấu tạo nó được nối với catốt của led . ngược lại chân ở dưới là chân cột . - Ta thấy các chân ở trên là chân hàng có 1 chân ko nối mass thì hàng trên cùng ko sáng suy chân đầu tiên bên trai của led sẽ ứng với hàng đầu tiên tính từ trên . - Và đương nhiên các chân phía dưới là chân cột thì chân đầu tiên bên trái sẽ ứng ngay với cột đầu tiên bên trái . Như vậy chúng ta xác định được rõ rang các chân của led. Tuy nhiên giả sử chúng ta muốn thay đổi theo các kiểu như sau : a: chân trên của led vẫn là hàng ,chân dưới vẫn là cột ,nhưng lúc này hàng được tich cực với bít 1 (5v) còn cột tich cực mức 0 .(ngược với trên ) ta làm như sau: Kich chuột phải vào led chọn edit properties sau đó đánh dấu vào edit all properties as text thay đổi A,B,C,D,E,F,G,H thanh 1,2,3,4,5,6,7,8. Ta được như sau : [...]... N3:DJNZ R4,N3 DJNZ R3,N2 DJNZ R2,N1 RET END V: Nguyên lý quét LED ma trận Vì các led ma trận được bố trí bởi rất nhiều led đơn ,và các led đựoc đấu chung chân với nhau ,do đó nếu cắm điện vào bình thường thì các led đều cùng sáng , Do đó để hiện thị led sang theo mong muốn thì người ta dung cách ,cho led đơn này sáng trước ,rồi tắt nó và cho led kia sang ,khoảng thời gian chuyển giao như vậy là rất ngắt... động ,do đó led matranxix kô thể hiển thị theo kiểu tĩnh được mà theo kiểu động ,tức là cái gì được hiển thị sẽ chạy liên tục Xét một ví dụ sau đây -Nhìn vào ví dụ trên ,tôi cho chạy dòng chữ hội quán điện tử ,bằng cách quýet led ma trận , - sử dụng 1 con 89c51 ,có nguồn xung thạch anh để làm xung clock cho 89c51 Sử dụng 4 matran led (nhiều hay ít do mình dung ) vì sử dụng trên 2 ma trận led cho nên... org 0000h ; chọn ngăn nhớ đầu tiên của rom để nạp mã lệnh batdau: mov DPTR,#maled ; nạp dữ liệu của nhãn maled vào thanh ghi dptr lap:mov r0,#30 main1 : mov r2,#24 ;ban đầu trong phần maled có 3 hàng ứng với 24 chuỗi 0h mov r1,#16 ; nạp vào ma tran 2 vì nó chạy muộn hơn ma tran 1 b cột nên =16 mov r7,#8 mov b ,#0 mov r3,#7fh main2: mov a,r3 ; nạp dữ liệu từ r3 vào a ,a chứa 0111 1111 b rl a ; thực hiện... thì dung quay 180 là ok III : CÁCH TÍNH MÃ LED HIỆN THỊ Chúng ta nhìn vào hình vẽ sau : Chúng ta sử dụng phần mềm xác định mã led của led ma trận , để đỡ mất thời gian ngồi tính toán ,và có thể dẫn đến sai Phần mềm này có trong trang web www.hoiquandientu.com Ai chưa có vào đó down hoặc liên hệ với tui quan mai của tui ở trên ,hj Chú ý : Khi xây dựng ma trận led ,nếu ta chọn hàng la các chân ở trên... Ví dụ với dòng thứ 3 của chữ T LÀ 7eh = 0 111 111 0 ( Led cuối cùng -> led đầu tiên) (Tính từ trên xuống ) Tóm lại với trường hợp như trên (led matran như tren ) Thì hàng led đầu tiên tính từ trên xuống là ứng với bít thấp nhất trong 4 bít thấp Hàng led thứ tư là bít cao nhất trong 4 bít thấp Hàng led thứ 5 là bít thấp nhất trong 4 bít cao Hàng led cuối cùng là bít thấp cao nhất trong 4 bít cao và... để cho từng cột nhận giá trị 0 mov r3,a mov p1,a setb p3.3 ; tắt các matrận 2,3,4 setb p3.2 setb p3.3 clr p3.0 ; cho matrận 1 tích cực mov a,r2 ; nạp R2 vào a movc a,@a+DPTR ; nạp data của a + dptr ->địa chỉ 16b rồi để vào a mov p2,a ;…… inc r2 acall delay ;gọi trễ cjne r3,#07fh,main2 ; khi quét đủ 8 cột thì của 1 ma trận thì chuyển main3: mov a,r3 rl a mov r3,a mov p1,a clr p3.1 setb p3.0 setb p3.2... chất ?nên ai chưa hiểu chỗ nào thì gửi mail ( phamtoanbonmat@gmail.com ) cho tui vậy nha hjhj Khi làm phải chuý các chân của led ma trận và mã để quýet led theo hàng ,chân nào ứng với MSB và chân nào ứng với LSB Download chương trình và mô phỏng : Download Xem thêm chủ đề mới nhất cùng chuyên mục : o o o o o o o Kinh nghiệm làm mạch đồng hồ DS1307 Hướng dẫn làm led cube 5x5x5 with 89s52 !! Điều khiển... có nghĩa là cả 8 led cùng sang Xét theo hình vẽ trên ta thấy 1 ma trận 8x8 ,với hàng là chân ở trên tích cực dương ,cột chân ở dưới tích cực âm 1 chữ T như thế kia thì tương đương với mã led là : 0h,02h ,02h,7eh,2h,2h,0h,0h Phải chú ý maled tính theo hàng nhưng có dạng cột như hình vẽ (data cũng đẩy vào hàng ) Với chữ T đầu tiên là 00h ,tức là cột đầu tiên ko sáng ,tương đương với 8 led đầu ở 8 hàng... a,@a+DPTR mov p2,a inc r1 acall delay cjne r3,#07fh,main3 main4: mov a,r3 rl a mov r3,a mov p1,a clr p3.2 setb p3.0 setb p3.1 setb p3.3 mov a,r7 movc a,@a+DPTR mov p2,a inc r7 acall delay cjne r3,#07fh,main4 main5: mov a,r3 rl a mov r3,a mov p1,a clr p3.3 setb p3.2 setb p3.0 setb p3.1 mov a,b movc a,@a+DPTR mov p2,a inc b acall delay cjne r3,#07fh,main5 djnz r0,main1 inc DPTR mov a,DPL cjne a,#144,lap ; 144... hexa Do yếu tố trên thì người ta thường chọn sao cho led có hàng ở trên và được tích cực mức dương ,còn cột ở dưới tích cực mức âm , chọn port 1 để quét cho cột ,còn dữ liệu tính theo mã hàng thì được đưa vào port 2 4 bit của port 3 để cho 4 chân oe1 của 4 con led ma trận Và để có được những điều trên thì chúng ta phải thử led trước ,ví dụ với led xanh như trên thì phải chỉnh sửa theo kiểu mà tôi . Ma trận đèn LED Ma trận đèn LED Lập trình cho led ma trận là một bài tập thú vị cho người mới học vi điều khiển.ở đây tôi. loại led ma trận , ví dụ như loại 8x8 hoặc 5x8.Tôi chỉ nói về led matrix loại 8x8 vì nó phổ biến và thường hay được dung ,các loại led matrix khác nguyên lý đều tượng tự như nhau . Led ma trận. mã led của led ma trận , để đỡ mất thời gian ngồi tính toán ,và có thể dẫn đến sai . Phần mềm này có trong trang web www.hoiquandientu.com. Ai chưa có vào đó down hoặc liên hệ với tui quan mai