Bài toán 1: Viết chương trình sử dụng bộ định thời T0 và các ngắtđểtạo ra sóng vuông 10kHz trên

Một phần của tài liệu giáo trình vi điều khiển ths phạm quốc thái (Trang 76 - 78)

V 5 ± 20% ( hâ ố 40) cc = 5 ± 20%:(chân số 40)

Bài toán 1: Viết chương trình sử dụng bộ định thời T0 và các ngắtđểtạo ra sóng vuông 10kHz trên

chân P1.0

Bài toán 1: Viết chương trình sử dụng bộ định thời T0 và các ngắtđểtạo ra sóng vuông 10kHz trên chân P1.0

ORG 0000H ;Đim nhp reset

LJMP MAIN ; Nhy qua khi vector ngt

ORG 000BH ; Vector ngt ca T0

T0ISR: CPL P1.0 ; Ly bù

RETI

ORG 0030H ;Đim nhp ca ctrình chính

MAIN: MOV TMOD, #02H; T0mode 2

MOV TH0 # 50MOV TH0, #-50 MOV TH0, #-50

SETB TR0 ; T0 hotđộng

MOV IE, #10000010B; Cho phép ngt do T0

Chương 5: Hoạt động ngắt (INTERRUPT)5.5. Các ng dng ca lp trình ngt: 5.5. Các ng dng ca lp trình ngt:

Bài toán 2: Viết chương trình sử dụng các ngắt để tạo ra các sóng vuông 7kHz và 500 Hz trên các chân P1.6 và P1.7

Bài toán 2: Viết chương trình sử dụng các ngắt để tạo ra các sóng vuông 7 kHz và 500 Hz trên các chân P1.6 và P1.7

ORG 0000H ;Đim nhp reset

LJMP MAIN ; Nhy qua khi vector ngt

LJMP MAIN ; Nhy qua khi vector ngt

ORG 000BH ; Vector ngt ca T0

LJMP T0ISR

ORG 001BH ; Vector ngt ca T1

LJMP T1ISRORG 0030H ORG 0030H

MAIN: MOV TMOD, #12H; Timer 1: mode 1 ; Timer 0: mode 2;

SETB TR0 ; Timer 0 hotđộng

SETB TF1 ; Buc ngt do Timer 1

MOV IE, #8AH ; Cho phép ngt do T0 và T1

SJMP $T0ISR: CPL P1.7 T0ISR: CPL P1.7 RETI T1ISR: CLR TR1 MOV TH1, #HIGH(-1000) MOV TL1, #LOW(-1000) SETB TR1 CPL P1.6 RETI END

Chương 5: Hoạt động ngắt (INTERRUPT)5.5. Các ng dng ca lp trình ngt: 5.5. Các ng dng ca lp trình ngt:

Một phần của tài liệu giáo trình vi điều khiển ths phạm quốc thái (Trang 76 - 78)