IV. Các chú ý:
CHƯƠNG TRÌNH ĐIỀU KHIỂN LED SÁNG TẮT THÔNG QUA 8255 CỦA HỆ THỐNG II.
3. Sau khi viết xong tiến hành biên dịch rồi dùng menu lệnh “RUN” và dùng lệnh “send program” để gởi chương trình xuống bộ nhớ của hệ thống II. Sau khi gởi xong tiến hành chạy chương trình bằng cách vào menu lệnh “RUN” chọn lệnh “Run Addr” và gõ địa chỉ bắt đầu của chương trình là 8000 vào rồi ấn enter. (trong trường hợp này chương trình viết tại địa chỉ 8000H nếu bạn viết tại địa chỉ khác ví dụ như 9000H thì bạn gõ vào 9000 rồi ấn enter).
- Trên menu có nút lệnh 3 truy xuất nhanh như sau: là gởi chương trình xuống bộ nhớ RAM của hệ thống II, nút là nút chạy chương trình mặc nhiên tại 8000 bạn không cần gõ địa chỉ. Nút là nút có chức năng như “run addr”.
III. Bài tập:
6. Hãy viết chương trình điều khiển 24 led kết nối với 3 port A, B, C sáng dần và tắt dần. 7. Hãy viết một số chương trình đã học bằng hệ thống II.
s
I. Mục đích yêu cầu:
Biết cách sử dụng hệ thống II, khởi tạo 8255 và viết chương trình dùng các port của 8255 điều khiển led sáng tắt.
II. Trình tự thực hiện:
1. Kết nối mạch theo trình tự :
Dùng bus dây (8 sợi ) kết nối 1PORTA với hàng của led ma trận.
Dùng bus dây (8 sợi ) kết nối 1PORTB với cột xanh hoặc đỏ của led ma trận. 2. Khởi động phần mềm, biên soạn chương trình sau:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien led ma tran hinh "trai tim" roi tu tren xuong ;dung he thong 2 qua giao tiep voi 8255.
;ket noi 1PA (port A) voi hang, 1PB voi cot xanh hoac do
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;khai bao dia chi cac port cua 8255
porta equ 4000h ;dia chi cua porta portb equ 4001h ;dia chi cua portb portc equ 4002h ;dia chi cua portc
cw1 equ 4003h ;dia chi cua thanh ghi dieu khien org 8000h
mov dptr,#cw1 mov a,#80h movx @dptr,a main: mov r0,#14
mov r4,#0 ;luu dia chi vung du lieu byte loop1: mov r2,#0 ;bien dem so lan lap lai cua 1 ki tu looplan: mov r3,04h ;copy r4 sang r3
mov r5,#1 ;ma quet cot
mov r1,#08 ;bien dem xu ly 8 byte
loop8b: mov a,r3
mov dptr,#madata movc a,@a+dptr mov dptr,#porta movx @dptr,a mov a,r5 mov dptr,#portb movx @dptr,a lcall delay
mov a,#00 ;chong lem movx @dptr,a NGÀY : SỐ TIẾT : LỚP : MSSV : THỰC HÀNH VI ĐIỀU KHIỂN BÀI SỐ : 7-2
CHƯƠNG TRÌNH ĐIỀU KHIỂN LED MA TRẬN SÁNG HÌNH TRÁI TIM RƠI THÔNG QUA 8255 CỦA HỆ THỐNG II.
inc r3 mov a,r5 rl a mov r5,a djnz r1,loop8b djnz r2,looplan mov a,r4 add a,#08h mov r4,a djnz r0,loop1 ljmp main delay: mov r7,#1 del2: mov r6,#50 djnz r6,$ djnz r7,del2 ret delay1s: mov r7,#0 pndel2: mov r6,#0 djnz r6,$ djnz r7,pndel2 ret org 9000h madata: db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh db 0ffh,0ffh,0ffh,07fh,07fh,0ffh,0ffh,0ffh db 0ffh,0ffh,07fh,03fh,03fh,07fh,0ffh,0ffh db 0ffh,07fh,03fh,01fh,01fh,03fh,07fh,0ffh db 07fh,03fh,01fh,00fh,00fh,01fh,03fh,07fh db 0bfh,01fh,00fh,087h,087h,00fh,01fh,0bfh db 0dfh,08fh,087h,0c3h,0c3h,087h,08fh,0dfh DB 0efH,0C7H,0C3H,0E1H,0E1H,0C3H,0C7H,0EFH DB 0F7H,0E3H,0E1H,0F0H,0F0H,0E1H,0E3H,0F7H DB 0FBH,0F1H,0F0H,0F8H,0F8H,0F0H,0F1H,0FBH DB 0FDH,0F8H,0F8H,0FCH,0FCH,0F8H,0F8H,0FDH DB 0FEH,0FCH,0FCH,0FEH,0FEH,0FCH,0FCH,0FEH DB 0FFH,0FEH,0FEH,0FFH,0FFH,0FEH,0FEH,0FFH db 0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh,0ffh end
3. Thực hiện các bước giống như các bài trên cho đến khi mạch chạy đúng yêu cầu. III. Bài tập ứng dụng:
I. Mục đích yêu cầu:
Biết cách sử dụng hệ thống II, khởi tạo 8255 và viết chương trình dùng các port của 8255 điều khiển led sáng tắt.
II. Trình tự thực hiện:
1. Kết nối mạch theo trình tự:
• Dùng bus dây (8 sợi ) kết nối 1PORTA với hàng của led ma trận.
• Dùng bus dây (8 sợi ) kết nối 1PORTB với cột xanh của led ma trận.
• Dùng bus dây (8 sợi ) kết nối 1PORTB với cột đỏ của led ma trận. 2. Khởi động phần mềm, biên soạn chương trình sau:
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;chuong trinh chay chuoi SPKT VA CAC KI TU TU A DEN y
;tu trai sang phai hien thi 2 mau xanh do ;dung he thong 2 qua giao tiep voi 8255.
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;khai bao dia chi cac port cua 8255
porta equ 4000h ;dia chi cua porta portb equ 4001h ;dia chi cua portb portc equ 4002h ;dia chi cua portc
cw1 equ 4003h ;dia chi cua thanh ghi dieu khien org 8000h
mov dptr,#cw1 mov a,#80h movx @dptr,a main: lcall xanh
lcall do sjmp main
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ;chtr con hien thi mau xanh
;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xanh: mov dptr,#portc
mov a,#00 movx @dptr,a
mov r4,#0 ;luu dia chi vung du lieu byte loop1: mov r2,#0 ;bien dem so lan lap lai cua 1 ki tu looplan: mov r3,04h ;copy r4 sang r3
mov r5,#1 ;ma quet cot
mov r1,#08 ;bien dem xu ly 8 byte loop8b: mov a,r3
mov dptr,#madata movc a,@a+dptr cjne a,#00,loope ret NGÀY : SỐ TIẾT : LỚP : MSSV : THỰC HÀNH VI ĐIỀU KHIỂN BÀI SỐ : 7-3