ỨNG DỤNG HỆ THỐN GI ĐIỀU KHIỂN LED 7 ĐOẠN
TỰA BÀ I: CHƯƠNGTRÌNH ĐIỀU KHIỂN BÀN PHÍM VÀ HIỂN THỊ MÃ CỦA PHÍM
NHẤN TRÊN LED 7 ĐOẠN.
Mã phím = 00
DCBA = 1111
Mã phím := mã phím + 04
Xoay mã quét sang trái gởi ra cộ t. Tăng cột lên 1 Đ Cột = 5 Đ Gán mã phím = FF Cột = 1 Quét = 1110 Đọc trạng thái hàng DCBA S S Begin End
Xoay DCBA qua Carry
Carry = 0 Đ
2. Kết nối mạch theo trình tự :
- Dùng bus dây kết nối port 0 đến pinhd điều khiển các đoạn a,b,c,d,e,f,g,dp và kết nối port 2 đến pinhd điều khiển quét hàng.
- Dùng port 1 chưa qua IC đệm kết nối với pindn của bàn phím.
- Gắn vi điều khiển vào đế nạp 40 pin ( socket ) ở modul nạp của hệ thống 2. 3. Khởi động phần mềm, mở File mới và đặt tên file. Vd: bai2_9
4. Viết chương trình với tên file vừa đặt :
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;chuong trinh quet phim dung he thong 1 ma phim hien thi tren 1led
;dung port 1 chua qua IC dem ket noi voi pinhd cua ban fim ;dung port0 va port 2 ket noi dieu khien led 7 doan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx org 0000h
mov sp,#60h mov dptr,#mafim
mov p2,#0feh ;xuat ma quet cho 1 led sang mov p0,#7fh
main: lcall keypres ;goi chtr con quet phim cjne a,#0ffh,main1
sjmp main
main1: lcall gma_hthi ;goi chtr con giai ma hien thi sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;Chuong trinh con giai ma fim nhan va hien thi ra 1 led 7 doan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx gma_hthi: movc a,@a+dptr
mov p0,a ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;Chuong trinh con quet phim va chong doi phim
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
keypres: mov r3,#10 ;nhap so dem 10 lan
keypres1 : lcall KEY ;Neu co phim an thi co c=1
jc pn1 ;kiem tra tiep neu c = 1
ret ;Neu khong co phim nhan thi co c=0
pn1: djnz r3,keypres1 ;Quay ve lap lai chong nay push acc ;Cat noi dung ma phim trong A keypres2: mov r3,#10 ;Nhap so dem 10 lan cho nha phim
keypres3: lcall key ;Co phim nhan hay khong
jc keypres2 ;Co thi kiem tra lai
djnz r3,keypres3 ;Khong thi lap lai 50 lan va dam bao
pop acc ;Khoi phuc lai gia tri cho A
ret ;ket thuc mot chuong trinh con
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;Chuong trinh con quet phim
key: mov r7,#0feh ;bat dau voi cot so 0(feh)
mov r6,#4 ;Su dung r6 lam bo dem
mov r5,#00
key1: mov p1,r7 ;xuat ma quet ra cot
mov a,p1 ;Doc lai port1 de xu ly tiep theo
anl a,#0f0h ;xoa 4 bit thap la hang
cjne a,#0f0h,key2 ;co nhan fim thi nhay mov a,r7
rl a ;xoay de chuyen den cot ke tiep
mov r7,a
mov a,r5 ;chuyen ma fim sang cot ke
add a,#4 mov r5,a
djnz r6,key1 ;Neu nhu sau moi lan 1 cot ma khong
clr c ;clr c neu nhu khong co phim duoc an
mov a,#0ffh ;thoat voi ma trong a = FFh ret
key2: swap a
key4: rrc a ;xoay sang phai tim bit 0
jnc key3 ;nhay neu (c)=0
inc r5 ;tang ma fim len cot ke
sjmp key4 ;tiep tuc cho den khi duoc (C)=0
key3: mov a,r5
setb c ret
;khai bao du lieu ma phim org 500h
mafim: db 0c0h,0f9h,0a4h,0b0h,099h,092h,082h,0f8h db 080h,090h,088h,083h,0c6h,0a1h,086h,08eh end
5. Thực hiện các bước giống như bài chuẩn và xem kết quả có hiển thị đúng yêu cầu hay không và hiệu chỉnh lại cho đúng.
III. Bài tập ứng dụng:
1. Hãy viết chương trình hiển thị chuỗi ‘-HA- NOI- ‘ trên 8 led và khi nhấn 1 phím số 1 thì chuỗi đó dịch chuyển sang trái.
2. Hãy viết chương trình hiển thị chuỗi ‘-HA- NOI- ‘ trên 8 led và khi nhấn 1 phím số 1 thì chuỗi đó dịch chuyển sang trái. Nhấn phím số 2 thì chuỗi dịch chuyển sang phải.
3. Hãy viết chương trình hiển thị chuỗi ‘-HA- NOI- ‘ trên 8 led và khi nhấn 1 phím số 1 thì tắt chuỗi nếu nhấn lại thì sáng chuỗi trở lại.
PHẦN 3:
ỨNG DỤNG HỆ THỐNG I ĐIỀU KHIỂN LED MA TRẬN.