viết chương trình điều khiển 8 led sáng dồn, chương 2 potx

15 2.4K 16
viết chương trình điều khiển 8 led sáng dồn, chương 2 potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

chương 2: Bài tập ứng dụng Hãy viết chương trình điều khiển led port sáng dồn theo chiều ngược lại Hãy viết chương trình điều khiển 16 led port: port0 port1 sáng dồn [xem chương trình viết bên thực chương trình cịn lại Hãy viết chương trình điều khiển port: port0, port1, port2 sáng dồn Hãy viết chương trình điều khiển port: port0, port1, port2 port3 sáng dồn Hãy viết chương trình sáng dồn port từ vào từ Hãy viết chương trình sáng dồn port 0, 1, từ vào từ ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien port 0, port sang don va tat het ;ket noi port va port den 16 led bang soi cap soi ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx org 0000h port01_6: mov r4,#00h mov r6,#00h ;luu trng thai ban dau mov p0,#00h mov p1,#00h ;luu trng thai ban dau lcall delay ;goi chuong trinh delay mov 10h,#16 chuyen cua led port01_6a: mov 11h,10h ;goi bien dem so lan dich ;chuyen bien dem tung led mov r5,#00h mov r7,#00h ;nap 00 vao r5 ;nap 00 vao r7 setb c ;lam cho bit C = port01_6b: mov a,r7 rrc a mov r7,a orl a,r4 ;xoay noi dung ghi A sang trai ;cat lai vao r7 de luu cho lan xu li ke ;lay ket qua or voi r4 roi goi p1 mov p1,a mov a,r5 rrc a mov r5,a orl a,r6 ;xoay noi dung ghi A sang trai ;cat lai vao r5 de luu cho lan xu li ke ;lay ket qua or voi r5 roi goi p0 mov p0,a lcall delay clr c djnz 11h,port01_6b thi quay lai mov r4,p1 ;xoa Cy de chi dich led di ;giam ndung o nho (11h) mov r6,p0 djnz 10h,port01_6a ;giam bien dem de xu li lan ke ljmp port01_6 ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh delay ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx delay: mov 7eh,#040h del: mov 7fh,#0ffh djnz 7fh,$ djnz 7eh,del ret end BÀI SỐ 1-5: CHƯƠNG TRÌNH ĐIỀU KHIỂN LED SÁNG BẰNG CÁCH TỔ HỢP CÁC BÀI ĐÃ VIẾT I Mục đích yêu cầu: biết cách kết hợp viết để điều khiển led sáng đa dạng Biết cách sử dụng lệnh gọi chương trình viết chương trình II Trình tự thực hiện: Giải thuật: Begin Sáng tắt led Đếm nhị phân led led sáng dần lên tắt dần led sáng dồn End Kết nối mạch theo trình tự : - Dùng bus dây kết nối port với bốn PINHD dãy 32 led - Gắn vi điều khiển vào đế nạp 40 pin ( socket ) modul nạp hệ thống Khởi động phần mềm, mở File đặt tên file Vd: bai1_5 Viết chương trình với tên file vừa đặt : ;chuong trinh tong hop cac chuong trinh da viet dieu khien port ;cac chuong trinh bao gom: ;chop tat lan ;sang dan tu tren xuong va tat het lan ;sang dan tu duoi len va tat het lan ;sang dan va tat dan tu tren xuong lan ;sang dan va tat dan tu duoi len lan ;sang don tu tren xuong lan ;sang don tu duoi len lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh chinh ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx org 0000h main: lcall choptat lcall sangdantx lcall choptat lcall sangdandl lcall choptat lcall stdtx lcall choptat ;chtr sang dan tren xuong ;chtr sang dan duoi len ;sang tat dan tren xuong lcall stddl lcall choptat lcall sangdontx lcall choptat lcall sangdondl lcall choptat lcall sangdontx lcall shtdtx lcall choptat lcall sangdondl lcall shtddl ;sang tat dan duoi len ;sang don tren xuong ;sang don tren xuong sjmp main ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh chop tat port 0: lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx choptat: mov r7,#5 ;5 lan loop1: mov p0,#0 lcall delay mov p0,#0ffh lcall delay djnz r7,loop1 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh sang dan port0 tu tren xuong: lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx sangdantx: mov r7,#3 ;3 lan loop2: mov a,#0 loop3: mov p0,a lcall delay setb c rlc a jnc loop3 djnz r7,loop2 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh sang dan port0 tu duoi len: lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx sangdandl: mov r7,#3 ;3 lan loop5: mov a,#0 loop4: mov p0,a lcall delay setb c rrc a jnc loop4 djnz r7,loop5 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh sang tat dan port0 tu tren xuong: lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx stdtx:mov r7,#3 ;3 lan loop6: mov a,#0 loop7: mov p0,a lcall delay setb c rlc a jnc loop7 loop8: clr c rlc a mov p0,a lcall delay jnc loop8 djnz r7,loop6 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh sang tat dan port0 tu duoi len: lan ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx stddl: mov r7,#3 ;3 lan loop9: mov a,#0 loop10: mov p0,a lcall delay setb c rrc a jnc loop10 loop11: clr c rlc a mov p0,a lcall delay jnc loop11 djnz r7,loop9 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien port sang don va tat het tu tren xuong ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx sangdontx: mov r7,#3 ;bien dem chu ky loop12: mov r2,#00h mov r4,#08 loop13: mov r5, 04h mov r3,#00h mov a,r3 orl a,r2 mov p0,a lcall delay setb c loop14: mov a,r3 rrc a mov r3,a orl a,r2 mov p0,a lcall delay clr c djnz r5,loop14 mov r2,a djnz r4,loop13 djnz r7,loop12 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien port sang don va tat het tu tren xuong ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx sangdondl: mov r7,#3 loop15: mov r2,#00h mov r4,#08 loop16: mov r5, 04h mov r3,#00h mov a,r3 orl a,r2 mov p0,a lcall delay setb c loop17: mov a,r3 rlc a mov r3,a orl a,r2 ;bien dem chu ky mov p0,a lcall delay clr c djnz r5,loop17 mov r2,a djnz r4,loop16 djnz r7,loop15 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien port sang het va tat dan tu phai sang trai ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx shtdtx: mov r7,#3 ;so lan thuc hien la loop20: mov p1,#0ffh lcall delay mov r0,#10000000b mov r3,#11111111b mov 12h,#8 mov 10h,#1 ;diem xuat phat ;luu tru trang thai ban dau ;bien dem so led dich chuyen ;bien dem so lan dich chuyen cua mov 11h,10h mov 20h,r0 ;luu tru so lan thuc hien ;chuyen r0 sang o nho 20h led loop22: loop21: lcall xnguoc09 ket qua luu 20h mov a,r0 ;xoay noi dung r1 sang phai cpl a anl a,r3 orl a,20h mov p0,a lcall delay ;nghich dao a ;hien thi o p0 djnz 11h,loop21 lcall xthuan09 inc 10h djnz 12h,loop22 ;quay lai xu li led ke djnz r7,loop20 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;cac chuong trinh ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xthuan09: mov a,r0 rr a mov r0,a clr c mov a,r3 rrc a mov r3,a ret xnguoc09: mov a,20h clr c rlc a mov 20h,a ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh dieu khien port sang het va tat dan tu phai sang trai ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx shtddl: mov r7,#3 ;so lan thuc hien la loop30: mov p1,#0ffh lcall delay mov r0,#00000001b mov r3,#11111111b mov 12h,#8 mov 10h,#1 led loop32: ;diem xuat phat ;luu tru trang thai ban dau ;bien dem so led dich chuyen ;bien dem so lan dich chuyen cua mov 11h,10h mov 20h,r0 ;luu tru so lan thuc hien ;chuyen r0 sang o nho 20h loop31: lcall xnguoc10 ket qua luu 20h ;xoay noi dung r1 sang phai mov a,r0 cpl a anl a,r3 ;nghich dao a orl a,20h mov p0,a lcall delay ;hien thi o p0 djnz 11h,loop31 lcall xthuan10 inc 10h djnz 12h,loop32 ;quay lai xu li led ke djnz r7,loop30 ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;cac chuong trinh ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xthuan10: mov a,r0 rl a mov r0,a clr c mov a,r3 rlc a mov r3,a ret xnguoc10: mov a,20h clr c rrc a mov 20h,a ret ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx ;chuong trinh delay ;xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx delay: mov 7fh,#50h de: mov 7eh,#0 djnz 7eh,$ djnz 7fh,de ret end Quan sát kết xem có với yêu cầu hay không hiệu chỉnh lại sai III Bài tập ứng dụng: Hãy cho biết chương trình chương trình có chương trình con? Tất chương trình thực 10 lần phải thực nào? Hãy viết chương trình giống lần lược cho port, port port theo chiều từ xuống, từ lên từ vào từ ... 1-5: CHƯƠNG TRÌNH ĐIỀU KHIỂN LED SÁNG BẰNG CÁCH TỔ HỢP CÁC BÀI ĐÃ VIẾT I Mục đích yêu cầu: biết cách kết hợp viết để điều khiển led sáng đa dạng Biết cách sử dụng lệnh gọi chương trình viết chương. .. lại sai III Bài tập ứng dụng: Hãy cho biết chương trình chương trình có chương trình con? Tất chương trình thực 10 lần phải thực nào? Hãy viết chương trình giống lần lược cho port, port port theo... gọi chương trình viết chương trình II Trình tự thực hiện: Giải thuật: Begin Sáng tắt led Đếm nhị phân led led sáng dần lên tắt dần led sáng dồn End Kết nối mạch theo trình tự : - Dùng bus dây kết

Ngày đăng: 01/07/2014, 11:20

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan