Mục đích yêu cầu: biết cách viết chương trình xử lý chuỗi di chuyển từ trái sang phải hoặc từ phải sang trái.. 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
Trang 1Chương 10: CHƯƠNG TRÌNH CHẠY CHỮ “-HA- NOI-” TRÊN 8 LED TỪ
PHẢI SANG TRÁI
I Mục đích yêu cầu: biết cách viết chương trình xử lý chuỗi di
chuyển từ trái sang phải hoặc từ phải sang trái
II Trình tự thực hiện:
1 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
- Gắn vi điều khiển vào đế nạp 40 pin ( socket ) ở modul nạp của hệ thống 2
2 Khởi động phần mềm, mở File mới và đặt tên file
3 Viết chương trình với tên file vừa đặt :
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
;chuong trinh hien thi chu "-HA-NOI-" chay tu phai sang trai
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
mov r3,#00 setb c
movc a,@a+dptr;lay ma chu mov p0,a
Trang 2mov p2,r2 lcall delay mov p2,#0FFh ;tat het de chong lem
rlc a mov r2,a
jc maina djnz r4,main
inc dptr mov a,dpl
vung data
djnz r7,$
djnz r6,de2
ret
delaytat: mov r6,#0h
djnz r7,$
djnz r6,de2a
ret
Trang 3org 508h
end
4 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 Câu hỏi và bài tập ứng dụng:
1 Hãy viết chương trình chạy theo chiều ngược lại
2 Hãy kết hợp 2 chương trình lại thành 1 chương trình chạy
từ phải sang trái và từ trái sang phải
3 Khi muốn hiển thị thêm nhiều dữ liệu nữa thì ta phải điều chỉnh chương trình như thế nào? Và điều chỉnh dữ liệu ra sao?
4 Khi vùng dữ liệu lớn hơn làm thay đổi cả dph ví dụ như 0500H đến 0600 thì chương trình được thay đổi như thế nào?
Trang 4BÀI SỐ 2-9: CHƯƠNG TRÌ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
I Mục đích yêu cầu: biết cách viết chương trình điều khiển quét
phím, tạo mã phím và hiển thị mã phím Khi chạy chương trình này thì trên led sẽ cĩ dấu chấm sáng và khi nhấn phím nào thì mã của phím đĩ sáng trên led
II Trình tự thực hiện:
1 Giải thuật:
Mã phím = 00
DCBA = 1111
Đ
Cột = 1 Quét = 1110
Đọc trạng thái hàng DCBA
S Begin
Xoay DCBA qua Carry
Trang 52 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
4 Viết chương trình với tên file vừa đặt :
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
;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
Trang 6;dung port0 va port 2 ket noi dieu khien led 7 doan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
org 0000h mov sp,#60h mov dptr,#0500h
mov p0,#7fh
cjne a,#0ffh,main1
main1: lcall gma_hthi ;goi chtr con giai ma hien thi
sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
;Chuong trinh con giai ma fim nhan va hien thi ra 1 led 7 doan
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
gma_hthi: movc a,@a+dptr
mov p0,a ret
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
;Chuong trinh con quet phim va chong doi phim
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
Trang 7jc pn1 ;kiem tra tiep neu c = 1
c=0
nha phim
djnz r3,keypres3 ;Khong thi lap lai 50 lan va dam bao
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
;Chuong trinh con quet phim
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxx
mov r5,#00
mov a,r7
mov r7,a
Trang 8mov a,r5 ;chuyen ma fim sang cot ke add a,#4
mov r5,a
khong
duoc an
ret
setb c ret
;khai bao du lieu ma phim
org 500h
db 080h,090h,088h,083h,0c6h,0a1h,086h,08eh end
Trang 95 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