1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Tổng hợp các ứng dụng, chương trình vi điều khiển

188 471 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Thông tin cơ bản

Tiêu đề Chương trình Vi Điều Khiển
Tác giả Vương Văn Hùng
Người hướng dẫn Vương Văn Hùng
Trường học Trường Đại Học Công Nghệ Sài Gòn
Chuyên ngành Điện Tử và Vi Điều Khiển
Thể loại báo cáo thực tập
Năm xuất bản 2008
Thành phố TP. Hồ Chí Minh
Định dạng
Số trang 188
Dung lượng 1,12 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Chương trình vi điều khiển Tổng hợp các ứng dụng, chương trình vi điều khiển

Trang 1

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;**************************************************************************

Trang 2

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

AD0 AD2 AD4 AD6 AD7

AD5 AD3 AD1

ALE 30

EA 31PSEN 29RST 9

P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32

P2.7/A15 28

P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27

P1.0 1P1.1 2P1.2 3P1.3 4P1.4 5P1.5 6P1.6 7P1.7 8

P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14

P3.7/RD

17 P3.6/WR

16 P3.5/T115

4 6 8

Trang 3

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 4

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

CHƯƠNG TRÌNH CHẠY HAI CHẾ ĐỘ AUTO VÀ HANDDY

;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan

;Nguoi viet :VUONG VAN HUNG

Trang 5

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

SETB P1.0 ;Do A sang

SETB P1.5 ; Xanh B sang

;||Îneu p3.1 = 0 thi nhay XADB_HANDDY

;||Îneu p3.1 = 1 thi nhay DAXB_HANDDY

;||Îneu p3.1 = 0 thi nhay XADB_HANDDY

Trang 6

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 7

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan

;Nguoi viet :VUONG VAN HUNG

JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 =1 thi chay Auto

CALL DELAY1S ;||Î con p3.0 =0 thi chay Handdy

Trang 8

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JNB P3.0,XADB_HANDDY ;||Î neu p3.0 =1 thi chay Auto

CALL DELAY1S ;||Î con p3.0 =0 thi chay Handdy

MOV P0,#0FFH ; Khong cho hien thoi gian

SETB DOA ;Do A sang

SETB XANHB ; Xanh B sang

CLR DOB ;Tat Do B

CLR VANGB ;Tat Vang B

CLR XANHA ;Tat Xanh A

JB P3.0,DAXB_AUTO ; ||Îneu p3.0 = 0 thi Chay Handdy

Trang 9

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JB P3.1,DAXB_HANDDY ; ||Îneu p3.0 = 1 thi chay AUTO

;|| =>neu p3.1 = 1 thi nhay DAXB_HANDDY

;|| =>neu p3.1 = 0 thi nhay XADB_HANDDY

CLR XANHB ; || Îneu p3.0 = 1 thi chay AUTO

JB P3.0,XADB_AUTO ; ||Î neu p3.0 = 0 thi Chay Handdy

JNB P3.1,XADB_HANDDY ; || =>neu p3.1 = 1 thi nhay DAXB_HANDDY JMP DAXB_HANDDY ; || =>neu p3.1 = 0 thi nhay XADB_HANDDY

Trang 10

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

CHƯƠNG TRÌNH CHẠY CHẾ ĐỘ AUTO

;CHUONG TRINH DEN GIAO THONG CHAY AUTO CO HIEN THI THOI GIAN

;Nguoi viet :VUONG VAN HUNG

Trang 11

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 12

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

CHƯƠNG TRÌNH HOÀN HIỆN HƠN 1:

;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan

; khi TGA hay TGB nho hon 10 thi chi co LED hang don vi sang

;Nguoi viet :VUONG VAN HUNG

Trang 13

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JNB P3.0,DAXB_HANDDY ;||Î Neu p3.0 = 0 thi chay Handdy

DJNZ R6,LAPXB ;||Î con p3.0 = 1 thi chay AUTO

JNB P3.0,XADB_HANDDY ;||Î neu p3.0 o muc thap (0) thi chay Auto

CALL DELAY1S_4 ;||Î con p3.0 o muc cao (1) thi chay Handdy

Trang 14

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JNB P3.0,XADB_HANDDY ; ||=>neu p3.0 o muc thap (0) thi chay Handdy

CALL DELAY1S_1 ; ||=>con p3.0 o muc cao (1) thi chay AuTo

JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 = 1 thi chay Auto

CALL DELAY1S_4 ;||Î con p3.0 = 0 thi chay Handdy

MOV P0,#0FFH ; Khong cho hien thoi gian

SETB P1.0 ;Do A sang

SETB P1.5 ; Xanh B sang

CLR P1.3 ;Tat Do B

CLR P1.4 ;Tat Vang B

CLR P1.2 ;Tat xanh A

JB P3.0,TIEP ; ||Î neu p3.0 = 0 thi Chay Handdy

JB P3.1,DAXB_HANDDY ; ||Î neu p3.0 = 1 thi chay AUTO

Trang 15

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

; ||=> neu p3.1 = 1 thi nhay DAXB_HANDDY ;||=> neu p3.1 = 0 thi nhay XADB_HANDDY

JB P3.0,XADB_AUTO ; ||Î neu p3.0 = 0 thi Chay Handdy

;||Î neu p3.0 = 1 thi chay AUTO JNB P3.1,XADB_HANDDY ;||=>neu p3.1 = 1 thi nhay DAXB_HANDDY

JMP DAXB_HANDDY ;||=>neu p3.1 = 0 thi nhay XADB_HANDDY

Trang 16

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 17

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

CHƯƠNG TRÌNH HOÀN HIỆN HƠN 2:

;chuong trinh den giao thong 2 che do co hien thi thoi gian ra led 7 doan

;Nguoi viet :VUONG VAN HUNG

Trang 18

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JNB P3.0,XADB_HANDDY ; neu p3.0 =1 thi chay Auto

CALL DELAY1S_4 ; con p3.0 =0 thi chay Handdy

JNB P3.0,XADB_HANDDY ;||Î neu p3.0 =0 thi chay Handdy

CALL DELAY1S_1 ; ||Îcon p3.0 =1 thi chay AuTo

Trang 19

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JNB P3.0,DAXB_HANDDY ;||Î neu p3.0 = 1 thi chay Auto

CALL DELAY1S_4 ; ||Îcon p3.0 = 0 thi chay Handdy

MOV P0,#0FFH ; Khong cho hien thoi gian

SETB DOA ;Do A sang

SETB XANHB ; Xanh B sang

CLR DOB ;Tat Do B

CLR VANGA ;Tat Vang A

CLR XANHA ;Tat Xanh A

JB P3.0,TIEP ;|=> neu p3.0 = 0 thi Chay Handdy

JB P3.1,DAXB_HANDDY ;|=>neu p3.0 = 1 thi chay AUTO

;|==>neu p3.1 = 1 thi nhay DAXB_HANDDY

;|==> neu p3.1 = 0 thi nhay XADB_HANDDY

;====================================================================

XADB_HANDDY:

SETB XANHA ;XANH A SANG

SETB DOB ; DO B SANG

CLR VANGB ; TAT VANG B

CLR DOA ; DO A TAT

CLR XANHB ; XANH B TAT

JB P3.0,XADB_AUTO ; neu p3.0 = 1 thi chay AUTO

JNB P3.1,XADB_HANDDY ; neu p3.0 = 0 thi Chay Handdy

JMP DAXB_HANDDY ;neu p3.1 = 1 thi nhay DAXB_HANDDY

; neu p3.1 = 0 thi nhay XADB_HANDDY

Trang 20

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 21

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 22

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

AD0 AD2

QA4 QC4 QE4 QG4

XTAL2 18XTAL1 19

ALE 30

EA 31PSEN 29RST 9

P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32

P2.7/A15 28

P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27

P1.0 1P1.1 2P1.2 3P1.3 4P1.4 5P1.5 6P1.6 7P1.7 8

P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14

P3.7/RD

17 P3.6/WR

16 P3.5/T115

1

RP1

10K

BÀI 1: CHƯƠNG TRÌNH ĐÈN GIAO THÔNG

PHẦN 1: CHƯƠNG TRÌNH ĐÈN GIAO THÔNG TỰ ĐỘNG CÓ HIỂN THỊ THỜI GIAN

Trang 23

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 24

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 25

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;DONG HO SO THE HIET PHUT VA GIAY

;Nguoi viet :VUONG VAN HUNG

Trang 26

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Thoi gian cua Do B va Vang A

Trang 27

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;CHUONG TRINH DEN GIAO THONG 2 CHE DO CO HIEN THI THOI GIAN RA LED 7 DOAN

;Nguoi viet :VUONG VAN HUNG

Trang 28

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

MOV P0,#00H ; Khong cho hien thoi gian

Trang 29

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

JB P3.0,DAXB_AUTO ; neu p3.0 o muc thap (0) thi chay Auto

Trang 30

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 2: CHƯƠNG TRÌNH ĐỌC ENCODER

PHẦN 1: CHƯƠNG TRÌNH ĐỌC ENCODER VA XUAT XUNG ĐIỀU KHIỂN ĐÔNG CƠ

CÁCH 1:

;===================================================

;Khai bao bien / hang so / dau vao/ra

Trang 31

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 32

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Khai bao bien / hang so / dau vao/ra

Trang 33

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

CHUC DATA 7AH

DONVI DATA 7BH

;===================================================

;Khai bao ngat ngoai

;===================================================

Trang 34

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 35

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 36

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

PHẦN 2: CHƯƠNG TRÌNH ĐỌC ENCODER CỦA ĐÔNG CƠ

;=============================================================

;Khai Bao Bien/Hang So/ Dau Vao Ra

Trang 37

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 38

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

MOV TMOD,#01010010B ; TIMER 1 DEM 16 BIT, TIMER 0 DINH THOI 8 BIT NAP LAI

MOV IE,#10000011B ; CHO PHEP NGAT NGOAI 0 VA TIMER 0

Trang 39

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 40

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 41

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

A8 A10 A12 A14

AD0 AD2 AD4 AD6

ALE 30

EA 31PSEN 29RST 9

P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32

P2.7/A15 28

P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27

P1.0 1P1.1 2P1.2 3P1.3 4P1.4 5P1.5 6P1.6 7P1.7 8

P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14 P3.7/RD

17 P3.6/WR

16 P3.5/T115

RES RES

8 9

BÀI 3: CHƯƠNG TRÌNH HIỂN THỊ LED MA TRẬN

PHẦN 1 : CHƯƠNG TRÌNH XUẤT CHỮ A RA LED MA TRẬN :

; HIEN THI LED MATRAN

;===================================================

;Khai bao bien / hang so / dau vao/ra

DEM DATA 7EH

Trang 42

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Khai bao bien / hang so / dau vao/ra

Trang 43

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 44

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 45

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

AD0 AD2 AD4 AD6

AD AD

A8 A10

AD7 AD5 AD3 AD1

XTAL2 18XTAL1 19

ALE 30

EA 31PSEN 29RST 9

P0.0/AD0 39 P0.1/AD1 38 P0.2/AD2 37 P0.3/AD3 36 P0.4/AD4 35 P0.5/AD5 34 P0.6/AD6 33 P0.7/AD7 32

P2.7/A15 28

P2.0/A8 21 P2.1/A9 22 P2.2/A10 23 P2.3/A11 24 P2.4/A12 25 P2.5/A13 26 P2.6/A14 27

P1.0 1P1.1 2P1.2 3P1.3 4P1.4 5P1.5 6P1.6 7P1.7 8

P3.0/RXD 10 P3.1/TXD 11 P3.2/INT0 12 P3.3/INT1 13 P3.4/T0 14

P3.7/RD

17 P3.6/WR

16 P3.5/T115

LT 3 BI 4 LE/STB 5

Trang 46

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 4: CHƯƠNG TRÌNH BĂNG CHUYỀN :

PHẦN 1 : CHƯƠNG TRÌNH BĂNG CHYỀN SẢN PHẨM :

CÁCH 1:

;Ngay viet :09/06/2008

;===================================================

;Khai bao bien / hang so / dau vao/ra

Trang 47

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Khai bao bien / hang so / dau vao/ra

Trang 48

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Khai bao bien / hang so / dau vao/ra

Trang 49

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 5: CHƯƠNG TRÌNH HIỂN THỊ LED 7 ĐOẠN

PHẦN 1 : CHƯƠNG TRÌNH HIỆN THỊ LED 7 ĐOẠN VỚI SỐ : 250 GIẢM VỀ 0 :

; CHUONG TRINH XUET LED HANG TRAM

Trang 50

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 51

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Chuong trinh chinh

Trang 52

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 53

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 6: CHƯƠNG TRÌNH HIỂN THỊ LED 7 ĐOẠN

PHẦN 2 : CHƯƠNG TRÌNH MỖI KHI CÓ NGẮT NGOÀI THÌ TĂNG BIẾN ĐẾM HIỂN THỊ RA LED 7 ĐOẠN GIÁ TRỊ TỪ 0 ĐẾN 9 ĐỒNG THỜI XUẤT XUNG CÓ TẦN SỐ 100HZ VÀ CÓ ĐỘ RỘNG ĐẾM /10 :

Trang 54

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;==============================================

;Khai bao bien / hang so / dau vao/ra

DEM DATA 7EH

Trang 55

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 56

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;======================================

;Khai bao bien / hang so / dau vao/ra

DEM DATA 7EH

Trang 57

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

INIT:

Trang 58

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 59

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 7: CHƯƠNG TRÌNH CÁC BỘ ĐỊNH THỜI TIMER

PHẦN 1 : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 20KHZ TRÊN CHÂN P1.0

Trang 60

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Khai bao bien / hang so / dau vao/ra

;8KHZ CO 125 CKM VOI MUC CAO 62CKM , MUC THAP 62CKM

;Khai bao bien / hang so / dau vao/ra

;1KHZ CO 1000 CKM VOI MUC CAO 500 CKM , MUC THAP 500 CKM

Trang 61

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 62

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 63

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 8: CHƯƠNG TRÌNH NGẮT NGOÀI :

PHẦN 1 : CHƯƠNG TRÌNH NHẤN START (P3.2) ĐÈN SÁNG SAU 15S THÌ TẮT , TRONG QUÁ TRÌNH ĐÈN SÁNG NẾU NHẤN START KHÔNG CÓ TÁC DỤNG

Trang 64

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;Chuong trinh chinh

Trang 65

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Trang 66

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

BÀI 9: CHƯƠNG TRÌNH NGẮT BỘ ĐỊNH THỜI TIMER

PHẦN 1 : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 2KHZ TRÊN CHÂN P1.1

Trang 67

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

PHẦN 3 : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 10KHZ TRÊN CHÂN P1.0

VỚI MỨC CAO 75 CKM MỨC THẤP 25 CKM SỬ DỤNG NGẮT TIMER

RETI

NGATTIMER1:

Trang 68

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

RETI

NGATTIMER1:

RETI

;===================================================

END

;***************************************************************

Trang 69

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

PHẦN 5 : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 10KHZ TRÊN CHÂN P1.0

RETI

;=============================================

NGATTIMER0:

RETI

;===================================================

END

;****************************************************

PHẦN 6A : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 1KHZ TRÊN CHÂN P1.0

VỚI MỨC CAO 500 CKM ( KHI Ở MỨC CAO LÀ 1 XUNG VUÔNG NHỎ CÓ MỨC CAO 25 MỨC THẤP 25 ) MỨC THẤP 500 CKM

;===================================================

Trang 70

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

PHẦN 6B : CHƯƠNG TRÌNH TẠO XUNG VUÔNG TẦN SỐ 1KHZ TRÊN CHÂN P1.0

VỚI MỨC CAO 10S ( KHI Ở MỨC CAO LÀ 1 XUNG VUÔNG NHỎ CÓ MỨC CAO 100CKM MỨC THẤP 100CKM ) MỨC THẤP 10S

Trang 71

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

Phần cứng: 8 led nối với Port 1, được định vị trí như sau: led 1 nối với

P1.0, lần lượt cho đến led 8 (nối với P1.7) Biết led sáng khi tín hiệu xuất ở các chân Port 1 ở giá trị 1 Viết chương trình để các led nối với Port 1 sáng lần lượt từng led từ led 1 đến led 8 Các quá trình trên được lặp lại không ngừng Minh hoạ:

Cách 1: Cách này đơn giản là làm cho các led sáng bằng cách thiết đặt các

giá trị thích hợp cho các bit của Port để làm led sáng theo từng trạng thái, cách

Trang 72

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;*******************Chuong trình;*************************************

;**************///// - LED SANG LAN LUOT -CACH DON GIAN -\\\\\\ ***********

;**//////// _ led sang lan luot tu led 1 den led 8-P1 _\\\\\\\

;**////////// _ sang o muc 1 va tat o muc 0 \\\\\\\\\\\\\

;**//////// lap di lap lai khong gioi han \\\\\\\\

;** \\\\\\\\\\\\ - nap gia tri cho tung trang thai -////

MOV P1,#00000000B ;===>>>> lam 8 led noi P1 tat

LCALL DELAY ;===>>>>goi chuong trinh con Delay

DJNZ R7 ,KT2 ;===>>>> giam R7 xuong 1, R6 khac 0-> ve Kt2,2ckm

RET ;===>>>> ket thuc chuong trinh con Delay

;

END ;===>>>> ket thuc chuong trinh

;*************************************************************

Cách2: Để led sáng lần lượt, cần làm cho tín hiệu xuất ra giá trị 1 một

khoảng thời gian để có thể nhận biết được Đầu tiên cho P1 tắt, sau đó làm cho bit A.0 lên 1, sử dụng lệnh xoay trái dữ liệu trên thanh Ram A, mỗi lần xoay giá trị 1 sẽ chuyển lần lượt qua A.1 - A.2 - A.3 -A.4 - A.5 -A.6 - A.7 - A.0, mỗi lần

Trang 73

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

;**//////////////// _ led sang lan luot tu led 1 den led 8 _\\\\\\\\\\\\\\\\\\\\\\\\\\\

;**/////////////// _ sang o muc 1 va tat o muc 0 \\\\\\\\\\\\\\\\\\\\\\\\\

;**////////////// lap di lap lai khong gioi han \\\\\\\\\\\\\\\\\\\\\

;**<<<<<< <<<<<<<< ->>>>>>>>>>>>>>

;** \\\\\\\\\\\\ - nap thanh Ram A=#00000001B -////////////////

;**\\\\\\\\\\\\\ -ket hop xoay phai thanh Ram A va xuat du lieu -////////////////

;*******************************************

ORG 000H ; khai bao dia chi de bat dau chuong trinh tren Rom

XUAT:

MOV P1,A ;===>>>> xuat du lieu A ra P1 dieu khien led

LCALL DELAY ;===>>>>goi chuong trinh con Delay

Trang 74

VƯƠNG VĂN HÙNG * CLASS: ĐĐT307 3

DJNZ R7 ,KT2 ;===>>>> giam R7 xuong 1, R6 khac 0-> ve Kt2,2ckm

RET ;===>>>> ket thuc chuong trinh con Delay

Khi mới bắt đầu chương trình, Mov P1,#0 làm tất cả các led đều tắt,

LCall Delay làm cho thời gian tắt đủ để mắt người nhận ra

Mov A,#00000001B làm cho bit A.0 của thanh ghi A được set lên 1, các bit còn lại ở giá trị 0

Tiếp theo trong chương trình là nhãn Xuat: vị trí trở về, trên lưu đồ giải thuật là điểm mũi tên trở về

Mov P1,A xuất tín hiệu ra P1, lúc này led 1 sáng lên

Tiếp theo là lệnh gọi chương trình con LCall Delay

Câu lệnh RL A làm trạng thái các bit dịch sang trái 1 bit, trước đó chỉ có A.0 ở giá trị

1, sau câu lệnh A.1 mang giá trị 1, còn bit A.0 bây giờ mang giá trị 0 do bit A.7 có giá trị 0 chuyển sang

Sjmp Xuat chương trình nhảy đến đoạn chương trình được đánh dấu bằng nhãn Xuat , nên nhớ rằng chương lệnh gọi Sjmp chỉ nhảy được đến vị trí cách lệnh gọi không quá 128 byte, nếu vượt qua giới hạn này chương trình dịch sẽ báo lỗi, khi đó cần thay Sjmp bằng

Ljmp vì Ljmp có thể nhảy đến vị trí bất kì trên ROM

Lúc này chương trình bắt đầu từ nhãn Xuat:

Sau nhãn Xuat: là câu lệnh Mov P1,A tín hiệu được xuất ra P1, lúc này P1.1 lên giá trị 1, led thứ hai sáng, các led còn lại không sáng Câu lệnh RL A làm trạng thái các bit dịch sang trái 1 bit: A.2 lên 1, các bit khác mang giá trị 0

Các quá trình trên được lặp lại liên tục (với câu lệnh Sjmp Xuat và nhãn Xuat: ) Kết quả cuối cùng như trên hình minh họa phía trên

Phần cứng: 32 led nối với Port 0,1,2,3, được định vị trí như sau: led 1 nối

với P0.0, lần lượt cho đến led 32 (nối với P3.7) Biết led sáng khi tín hiệu xuất

ở giá trị 1.Viết chương trình để các led nối với Port 0,1,2,3 sáng lần lượt từng led từ led 1 đến led 32 Các quá trình được lặp lại không giới hạn

Minh hoạ:

Ngày đăng: 03/04/2014, 21:21

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w