Tải bản đầy đủ (.pdf) (9 trang)

Lập trình cho ma trận LED 8x8 2 m¢u xanh đỏ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (186.85 KB, 9 trang )

Lập trình cho ma trận LED 8x8 2 màu xanh đỏ

Em đang gặp khó khăn trong trong vấn đề nay, nhờ các cao thủ chỉ giáo
Em đang làm một hiển thị chữ trên ma trận LED 8x8, và dưới đây là chương trình khiển thi
chữ BK50 từ phải qua trai, nhưng vấn đề đặt ra là cần phải có một nút điều chỉnh và viết lại
chương trình với yêu cầu mới. Bấm vào nút thì chữ BK sẽ chạy theo hướng khác (VD: tù
trên xuống dưới, từ dưới lên trê, cuốn ngang màn hình, nói chung thẻ hiện tất cả các trạng thái của
một cái biển quảng cáo.)


;******************************************************************************
; Chuong trinh hien thi chu BK bang led 2 mau xanh do
; p3 dieu khien quet, p2 dieu khien cot xanh, p1 dieu khien cot do
;******************************************************************************
ORG 00H
MAIN: MOV R3,#00H ;Bat dau chuong trinh voi dia chi 00h
MOV R2,#01H ;chuoi bit quet
MOV DPTR,#MANG ;Lay dia chi bat dau doc bo nho la tu bang

;*************************************
CHUB: MOV R5,#50 ;Hien thi chu D 50 lan
DD1: MOV R3,#00H ;Bien dem so cot cua mot ki tu
DDD1: MOV A,R3 ;Xoa thanh ghi da nang
MOVC A,@A+DPTR ;Lay gia tri tai vi tri con tro
MOV 90h,A ;p1 = A
MOV 0b0h,R2 ;p3 = r2
ACALL DELAY1 ;Tre 250x5 chu ky may
MOV 0b0h,#00H ;p3 = 00 xoa quet
ACALL DELAY2 ;Tre 4 chu ky may
MOV A,R2
INC R3 ;Tang bien dem ky tu


RL A ;Quay chuoi quet
MOV R2,A
CJNE R3,#08H,DDD1 ;neu r3 = 8 thi thoi
DJNZ R5,DD1 ;r5 = 0 thi thoi

;************************************
CHUK: MOV R5,#50 ;Bat dau bien dem lap la 50
xx1: MOV R3,#08H ;Bien dem ky tu bat dau la 8
xxx1: MOV A,R3 ;Xao thanh ghi da nang A
MOVC A,@A+DPTR ;Lay gia tri cua ngan nho vao A
MOV 0a0h,A ;p2 = a
MOV 0b0h,R2 ;p3 = r2
ACALL DELAY1 ;Goi tre 250X5 chu ky may
MOV 0b0h,#00H ;Xao cong quet
ACALL DELAY2 ;Goi tre 4 chu ky may
MOV A,R2
INC R3 ;Tang bien dem ky tu
RL A ;Quay tin hieu quet
MOV R2,A
CJNE R3,#16,xxx1 ;neu r3 = 16 thi thoi
DJNZ R5,xx1 ;neu r5 = 0 thi thoi

;*************************************
CHU5: MOV R5,#50 ;So luong lan lap la 50
DD2: MOV R3,#16 ;Bien dem ky tu bat dau la 16
DDD2: MOV A,R3 ;Xao A
MOVC A,@A+DPTR
MOV 090h,A ;p1 = a
MOV 0b0h,R2 ;p3 = r2
ACALL DELAY1

MOV 0b0h,#00H ;Xoa xung quet
ACALL DELAY2
MOV A,R2
INC R3
RL A
MOV R2,A
CJNE R3,#24,DDD2 ;Neu bien dem r3 = 24 thi thoi
DJNZ R5,DD2
RET

;************************************
CHU0: MOV R5,#50 ;Bat dau bien dem lap la 50
xx2: MOV R3,#24H ;Bien dem ky tu bat dau la 8
xxx2: MOV A,R3 ;Xao thanh ghi da nang A
MOVC A,@A+DPTR ;Lay gia tri cua ngan nho vao A
MOV 0a0h,A ;p2 = a
MOV 0b0h,R2 ;p3 = r2
ACALL DELAY1 ;Goi tre 250X5 chu ky may
MOV 0b0h,#00H ;Xao cong quet
ACALL DELAY2 ;Goi tre 4 chu ky may
MOV A,R2
INC R3 ;Tang bien dem ky tu
RL A ;Quay tin hieu quet
MOV R2,A
CJNE R3,#32,xxx2 ;neu r3 = 32 thi thoi
DJNZ R5,xx2 ;neu r5 = 0 thi thoi

SJMP main
;***********************************
DELAY1: MOV R6,#5

LAP1: MOV R7,#250
DJNZ R7,$
DJNZ R6,LAP1
RET

;************************************
DELAY2: MOV R7,#4
DJNZ R7,$
RET
;********************************************************
org 0800h
MANG: DB 0ffh,41h,91h,0aah,44h,00h,00h,00h
DB 0ffh,10h,28h,44h,00h,00h,00h,00h
DB 0efh,91h,91h,1eh,00h,00h,00h,00h
DB 3ch,42h,81h,81h,42h,3ch,00h,00h
END

Em định post sơ đồ nguyên lý lên cho các bác tham khảo, đóng góp ý khiến.
:Rất mong đựoc chỉ giáo

nguyenly2.jpg (85145 bytes) (Số lần tải về: 1416) (Đây là sơ đồ nguyên lí của nó )


Re: Lập trình cho ma trận LED 8x8 2 màu xanh đỏ

chao cac ban day la chuong trinh toi lam roi, no chay ngon, moi toi cai hình khong duoc dep.
$mod51
ORG 00H
MAIN: MOV R3,#00H
MOV R2,#10000000B


CHUBK: MOV DPTR,#BK
LCALL CHU1
JNB P0.4,CHU05
SJMP CHUBK

CHU05: LCALL DELAY1
MOV DPTR,#S50
LCALL CHU1
JNB P0.4,HINHT
SJMP CHU05

HINHT: MOV DPTR,#HINH
LCALL CHU1
JNB P0.4,CHUBK
SJMP HINHT

;*************************************
CHU1: MOV R5,#50
CHU11: MOV R3,#00H
CHU111: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A

MOV R2,A
CJNE R3,#08H,CHU111
DJNZ R5,CHU11
;************************************
CHU2: MOV R5,#50
CHU21: MOV R3,#02H
CHU211: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#10,CHU211
DJNZ R5,CHU21
;*************************************
CHU3: MOV R5,#50
CHU31: MOV R3,#03
CHU311: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2

INC R3
RR A
MOV R2,A
CJNE R3,#11,CHU311
DJNZ R5,CHU31
;*************************************
CHU4: MOV R5,#50
CHU41: MOV R3,#04
CHU411: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#12,CHU411
DJNZ R5,CHU41
;*************************************
CHU5: MOV R5,#50
CHU51: MOV R3,#05
CHU511: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H

LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#13,CHU511
DJNZ R5,CHU51
;*************************************
CHU6: MOV R5,#50
CHU61: MOV R3,#06
CHU611: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#14,CHU611
DJNZ R5,CHU61
;*************************************
CHU7: MOV R5,#50
CHU71: MOV R3,#07
CHU711: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2

LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#15,CHU711
DJNZ R5,CHU71
;*************************************
CHU8: MOV R5,#50
CHU81: MOV R3,#08
CHU811: MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#16,CHU811
DJNZ R5,CHU81
;*************************************
CHU9: MOV R5,#50
CHU91: MOV R3,#09
CHU911: MOV A,R3
MOVC A,@A+DPTR

MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#17,CHU911
DJNZ R5,CHU91
;*************************************
CHU10: MOV R5,#50
CHU101: MOV R3,#10
CHU1011:MOV A,R3
MOVC A,@A+DPTR
MOV P3,A
MOV P1,R2
LCALL DELAY1
MOV P1,#00H
LCALL DELAY2
MOV A,R2
INC R3
RR A
MOV R2,A
CJNE R3,#18,CHU1011
DJNZ R5,CHU101
RET
;***********************************
DELAY1: MOV R6,#5

LAP1: MOV R7,#255
DJNZ R7,$
DJNZ R6,LAP1
RET
;***********************************
DELAY2: MOV R7,#4
DJNZ R7,$
RET
;**********************************
BK: DB
00H,0BEH,7EH,6DH,93H,0FFH,0FFH,0FFH,00H,0EFH,0D7H,0BBH,7DH,0FFH,0FFH,0FFH,0FFH,0FFH
S50: DB
0C3H,0BDH,7EH,7EH,0BDH,0C3H,0FFH,0FFH,0FFH,0FFH,1EH,6EH,6EH,0F1H,0FFH,0FFH,0FFH,0FF
H
HINH: DB
0F3H,0E1H,0C1H,83H,0C1H,0E1H,0F3H,0FFH,0FFH,0F3H,0E1H,0C1H,83H,0C1H,0E1H,0F3H,0FFH,0
FFH
END

×