Báo cáo thí nghiệm kỹ thuật vi xử lý & vi điều khiển - Pdf 23

Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
ĐẠI HỌC ĐÀ NẴNG
TRƯỜNG ĐẠI HỌC BÁCH KHOA
KHOA ĐIỆN TỬ VIỄN THÔNG
o0o
BÁO CÁO THÍ NGHIỆM
KỸ THUẬT VI XỬ LÝ
& VI ĐIỀU KHIỂN
Giáo viên hướng dẫn : Phạm Xuân Trung
Danh Sách SVTH :Lê Trị An
Trần Lê Nhật Bình
Phạm Văn Công
Phạm Văn Hải
Nguyễn Mạnh Hổ
Cao Mạnh Hùng
Nhóm : 07- 24A
Đà Nẵng Tháng 12-2010
Nhóm:07-24A Trang: 1
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
BÀI THÍ NGHIỆM SỐ 1: A LED-TURNING ON/OFF, FLASHING
1.1 MỤC ĐÍCH
-Kiểm tra khả năng truy xuất I/O của thiết bị thông qua 1 led đơn báo hiệu được mắc ở ngoài.
Tính toán trể.
1.2. Yêu cầu:
- Sử dụng được Kit PICDEM2 Plus.
- Sử dụng được bộ công cụ lập trình MPLAB.
- Viết giả thuật và chương trình bật, tắt và nháy một led đơn.
- Nắm cấu trúc phần cứng của PIC16F877A.
1.3 Sơ đồ khối chung:

= 4*
6
10*4
1
= 1
s
µ
Vậy 1ms = 5*(199 + 1)*1
s
µNhóm:07-24A Trang: 2
BỘ XỬ

TRUNG
TÂM
BỘ DAO
ĐỘNG
OUTPUT
PIC16f877A
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
1.4.2 Bật, tắt và nháy một led đơn:Nhóm:07-24A Trang: 3
XÓA PORTB
CHỌN BANK1
XÓA TRISB

; Khai bao vi dieu khien
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC &
_WRT_OFF & _LVP_ON & _CPD_OFF
COUNT1 EQU 0X20
COUNT2 EQU 0X21
;Bat dau chuong trinh
ORG 0X0000
GOTO START
START
CLRF PORTB
BSF STATUS,RP0
BCF STATUS,RP1
CLRF TRISB
BCF STATUS,RP0
LOOP
MOVLW 0X02
MOVWF PORTB
CALL DELAY
CLRF PORTB
CALL DELAY
GOTO LOOP
DELAY
MOVLW D'199'
MOVWF COUNT1
LOOP1
MOVLW D'1'
MOVWF COUNT2
DECFSZ COUNT2,1

GND
2.4 Xây dựng sơ đồ khối:
2.4.1 Tính toán trể 1s (DELAY) bằng phương pháp giảm thanh ghi:
Chu kỳ dao động của thạch anh t
0
: t
0
=
0
1
f

Thời gian thực hiện xong một lệnh t
i
: t
i
= 4*t
0
.
Sử dụng thạch anh 4Mhz, thời gian thực hiện xong một lệnh là: t
i
= 4*
6
10*4
1
= 1
s
µ
Vậy 1s = 4*250*(199 + 1)*5*1
s

TĂNG COUNT
SETUP PORTB
ĐẾM LẺ
XÓA COUNT
W COUNT
GỌI TABLE
PORTB W
DELAY
ALY
TĂNG W
W XOR 8
Z=0?
TĂNG COUNT
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
2.4.2:Đếm nhị phân:
N
Y
Nhóm:07-24A Trang: 8
XÓA PORTB
BẮT ĐẦU
XÓA COUNT
W COUNT
GỌI TABLE
PORTB W
DELAY
TĂNG W
TĂNG COUNT
W XOR 15
Z=0?

Trung2.5 Viết chương trình bằng ngôn ngữ ASEMBLY:
2.5.1 Bật, tắt 4 led đơn theo số chẵn:
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON
&_XT_OSC &_WRT_OFF & _LVP_OFF & _CPD_OFF
COUNT1 EQU 0X20
COUNT2 EQU 0X21
COUNT3 EQU 0X22
COUNT4 EQU 0X23
ORG 0X0000
GOTO START
START
CLRF PORTB
BCF STATUS,RP1
BSF STATUS,RP0
CLRF PORTB
BCF STATUS,RP0
LOOP
CLRF COUNT
LOOP0
MOVF COUNT,0
CALL TABLE
MOVWF PORTB
CALL DELAY
INCF COUNT,0
XORLW D'8'

GOTO $+2
DECFSZ COUNT3,1
GOTO LOOP0
DECFSZ COUNT2,1
GOTO LOOP1
DECFSZ COUNT1,1
GOTO LOOP2
RETURN
END
2.5.2: Bật, tắt 4 led đơn theo số lẻ:
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC
&_WRT_OFF & _LVP_OFF & _CPD_OFF
COUNT1 EQU 0X20
COUNT2 EQU 0X21
COUNT3 EQU 0X22
COUNT4 EQU 0X23
ORG 0X0000
GOTO START
START
CLRF PORTB
BCF STATUS,RP1
BSF STATUS,RP0
CLRF PORTB
BCF STATUS,RP0
LOOP
CLRF COUNT
LOOP0
MOVF COUNT,0

MOVWF COUNT3
LOOP0
MOVLW D'1'
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $+2
DECFSZ COUNT3,1
GOTO LOOP0
DECFSZ COUNT2,1
GOTO LOOP1
DECFSZ COUNT1,1
GOTO LOOP2
RETURN
END
2.5.3:Đếm nhị phân:
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON &
_XT_OSC &_WRT_OFF & _LVP_OFF & _CPD_OFF
COUNT EQU 0X20
COUNT1 EQU 0X21
COUNT2 EQU 0X22
COUNT3 EQU 0X23
Nhóm:07-24A Trang: 12
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
ORG 0X0000
GOTO START
START
CLRF PORTB

RETLW b’00001100’
RETLW b’00001101’
RETLW b’00001110’
RETLW b’00001111’
DELAY
MOVLW D'4'
MOVWF COUNT1
LOOP2
MOVLW D'250’
MOVWF COUNT2
LOOP1
MOVLW D'199'
MOVWF COUNT3
Nhóm:07-24A Trang: 13
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
LOOP0
MOVLW D'1'
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $+2
DECFSZ COUNT3,1
GOTO LOOP0
DECFSZ COUNT2,1
GOTO LOOP1
DECFSZ COUNT1,1
GOTO LOOP2
RETURN
END


TRUNG
TÂM
BỘ DAO
ĐỘNG
OUTPUT
PIC16f877A
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
Chu kỳ dao động của thạch anh t
0
: t
0
=
0
1
f

Thời gian thực hiện xong một lệnh t
i
: t
i
= 4*t
0
.
Sử dụng thạch anh 4Mhz, thời gian thực hiện xong một lệnh là: t
i
= 4*
6
10*4
1


Nhóm:07-24A Trang: 17
DELAY
COUNT2 250
COUNT4 1
COUNT4
=0
?
GIẢM COUNT4
GIẢM COUNT3
RETURN
COUNT1 8
GIẢM COUNT2
COUNT3 199
COUNT3
=0
?
COUNT2
=0
?
GIẢM COUNT1
COUNT1
=0
?
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
3.5:Chương tình ASEMBLY:
processor 16f877a
include <p16f877a.inc>
__CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON &

Nhóm:07-24A Trang: 18
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
MOVWF COUNT2
LOOP1
MOVLW D'199'
MOVWF COUNT3
LOOP0
MOVLW D'1'
MOVWF COUNT4
DECFSZ COUNT4,1
GOTO $+2
DECFSZ COUNT3,1
GOTO LOOP0
DECFSZ COUNT2,1
GOTO LOOP1
DECFSZ COUNT1,1
GOTO LOOP2
RETURN
END
Nhóm:07-24A Trang: 19
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
BÀI THÍ NGHIỆM SỐ 4: BUTTON CONTROL
4.1MỤC ĐÍCH
-Kiểm tra khả năng truy xuất I/O của thiết bị thông qua 1 led đơn báo hiệu được mắc ở ngoài và
trể tạo bởi phần mềm.
4.2. Yêu cầu:
- Sử dụng được Kit PICDEM2 Plus
- Sử dụng được bộ công cụ lập trình MPLAB

INDEX = 0x22
Chương trình chính:
- Xóa các bits của PORTB
- Chọn bank 1
Nhóm:07-24A Trang: 22
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
- Đặt 4 bits thấp của thanh ghi TRISB là output
- Set bit 4 của TRISA là input
- Chọn lại bank 0
- Xóa thanh ghi INDEX
- Nếu nút RA4 được nhấn
+ goto R2L
Ngược lại: goto L2R
Đoạn chương trình R2L:
- Nạp byte cao của TABLER2L vào W
- Nạp W vào thanh ghi PCLATH
- Tạo nhãn LOOP1 để quay về từ DISPLAY
- Nạp INDEX vào W
- Call TABLER2L
- Goto DISPLAY
Đoạn chương trình L2R:
- Nạp byte cao của TABLEL2R vào W
- Nạp W vào thanh ghi PCLATH
- Tạo nhãn LOOP2 để quay về từ DISPLAY
- Nạp INDEX vào W
- Call TABLEL2R
- Goto DISPLAY
Chương trình DISPLAY:
- Nạp W vào PORTB

Movwf PCLATH Movwf PCLATH
Movf INDEX,W Movf INDEX,W
MOVWF PORTBINDEX++
Báo cáo thí nghiệm VXL&VDK GVHD: Phạm Xuân
Trung
Nhóm:07-24A Trang: 25
Call
TABLER2L
Call
TABLEL2R
Call DELAY
INDEX++
INDEX=7
?
Clear INDEX
RA4=1?
A
AC B
C B


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status