1. Trang chủ
  2. » Thể loại khác

BÁO CÁO THÍ NGHIỆM VI XỬ LÝ

16 592 1

Đ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

Định dạng
Số trang 16
Dung lượng 300,31 KB

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

Nội dung

BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN ......... 3 Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202) ...................................................................................3 Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0 .......................................................................................3 BÀI 2: HIỂN THỊ LED 7 ĐOẠN .............................................6 Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0 ........................................................6 Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s ............................................................7 BÀI 3: GIAO TIẾP LCD VÀ ADC ............................................8 Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu. ............8 Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD. .............12 BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL PORT ............15 Thí nghiệm 1:Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1 ....................................................................................15 Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0 ở chế độ 2 ...................................................................................16 Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello world” lên máy tính thông qua HyperTerminal với tốc độ baud 19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn .........................................................................................17BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN ......... 3 Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202) ...................................................................................3 Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0 .......................................................................................3 BÀI 2: HIỂN THỊ LED 7 ĐOẠN .............................................6 Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0 ........................................................6 Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s ............................................................7 BÀI 3: GIAO TIẾP LCD VÀ ADC ............................................8 Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu. ............8 Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD. .............12 BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL PORT ............15 Thí nghiệm 1:Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1 ....................................................................................15 Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0 ở chế độ 2 ...................................................................................16 Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello world” lên máy tính thông qua HyperTerminal với tốc độ baud 19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn .........................................................................................17BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN ......... 3 Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202) ...................................................................................3 Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0 .......................................................................................3 BÀI 2: HIỂN THỊ LED 7 ĐOẠN .............................................6 Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0 ........................................................6 Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s ............................................................7 BÀI 3: GIAO TIẾP LCD VÀ ADC ............................................8 Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu. ............8 Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD. .............12 BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL PORT ............15 Thí nghiệm 1:Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1 ....................................................................................15 Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0 ở chế độ 2 ...................................................................................16 Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello world” lên máy tính thông qua HyperTerminal với tốc độ baud 19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn .........................................................................................17BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN ......... 3 Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202) ...................................................................................3 Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0 .......................................................................................3 BÀI 2: HIỂN THỊ LED 7 ĐOẠN .............................................6 Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0 ........................................................6 Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s ............................................................7 BÀI 3: GIAO TIẾP LCD VÀ ADC ............................................8 Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu. ............8 Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD. .............12 BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL PORT ............15 Thí nghiệm 1:Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1 ....................................................................................15 Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0 ở chế độ 2 ...................................................................................16 Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello world” lên máy tính thông qua HyperTerminal với tốc độ baud 19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn .........................................................................................17

Trang 1

ĐẠI HỌC BÁCH KHOA TP HỒ CHÍ MINH

KHOA ĐIỆN ĐIỆN TỬ

- -

BÁO CÁO THÍ NGHIỆM

VI XỬ LÝ GVHD: VŨ QUANG THỜI

Sinh viên thực hiện: Hồ Hoàng Thi

MSSV : 1513157

Nhóm : 8

Buổi học: Thứ sáu, tiết 2-5

Tp.Hồ Chí Minh, ngày 10 tháng 5 năm 2019

Trang 2

MỤC LỤC

BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN ……… 3

Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202) ……… 3

Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0 ………3

BÀI 2: HIỂN THỊ LED 7 ĐOẠN ………6

Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0 ……… 6

Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s ………7

BÀI 3: GIAO TIẾP LCD VÀ ADC ……… 8

Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu …………8 Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD ………….12

BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL PORT …………15

Thí nghiệm 1:Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1 ………15 Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0

ở chế độ 2 ……… 16 Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello world” lên máy tính thông qua HyperTerminal với tốc độ baud 19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn ……… 17

Trang 3

BÀI 1: LẬP TRÌNH GIAO TIẾP PHÍM ĐƠN VÀ LED ĐƠN

Thí nghiệm 1: Viết chương trình thực hiện việc đọc liên tục trạng thái của nút nhấn được nối đến P1.0 va hiển thị ra led được nối tại chân P1.7( bit thứ 0 của led thanh BL202)

CODE:

Thí nghiệm 2: Viết chương trình tạo xung vuông 1kHz, chu kỳ nhiệm vụ 50% trên P3.0

CODE:

ORG 2000H

LOOP: MOV C, P1.0

MOV P1.1, C

SJMP LOOP

END

ORG 2000H

LOOP: SETB P3.0

ACALL DELAY

CLR P3.0

LCALL DELAY1

SJMP LOOP

DELAY: PUSH 07

PUSH 06

PUSH 05

Trang 4

MOV R5,#2

L1_2: MOV R6,#150

L1_1: MOV R7,#250

DJNZ R7,$

DJNZ R6,L1_1

JNZ R5,L1_2

POP 05

POP 06

POP 07

RET

DELAY1: PUSH 07

PUSH 06

PUSH 05

MOV R5,#7

L2_2: MOV R6,#150

L2_1: MOV R7,#250

DJNZ R7,$

DJNZ R6,L1_1

JNZ R5,L1_2

POP 05

POP 06

POP 07

RET

END

Trang 5

DELAY1SINS: MOV R5,A

MOV R6,#150

MOV R7,#250

DJNZ R7,$

SETB TR0

JNB TF0,$

CLR TR0

CLR TF0

CPL P1.0

RET

END

Trang 6

BÀI 2: HIỂN THỊ LED 7 ĐOẠN

Thí nghiệm 1: Viết chương trình con DisplayLed0 hiển thị lên LED 7 đoạn số 0 bằng giá trị chứa trong thanh ghi R0

CODE:

Viết chương trình chính hiển thị số 9 lên LED 7 đoạn số 0 bằng cách cho R0 bằng 9 và gọi chương trình con DisplayLed0

CODE:

ORG 2000H

MOV TMOD, #01H

AGAIN: MOV DPTR, #0000H

MOV A,#71H

MOVX @DPTR, A

LCALL DELAY

SJMP AGAIN

DELAY: MOV TH0, #HIGH(-1000)

MOV TL0, #LOW(-1000)

SETB TR0

JNB TF0, $

CLR TR0

CLR TF0

RET

END

Trang 7

Thí nghiệm 2: Viết chương trình hiển thị lên LED 7 đoạn số 0 các con số từ 0 đến 9 sau các khoảng thời gian 1s

CODE:

ORG 2000H

MOV TMOD , #01H

AGAIN: MOV A,#0E4H

MOV A,#71H

MOVX @DPTR, A

LCALL DELAY

SJMP AGAIN

DELAY: MOV TH0, #HIGH(-1000)

MOV TL0, #LOW(-1000)

SETB TR0

JNB TF0, $

CLR TR0

CLR TF0

RET

END

Trang 8

ORG 2000H

MOV TMOD, #01H

MOV DPTR, #0000H

AGAIN:

MOV A, #0E0H

NEXT: MOVX @DPTR, A

LCALL DELAY

INC A

CJNE A, #0EAH, NEXT

SJMP AGAIN

DELAY:MOV R7, #40

DELAY1: MOV TH0, #HIGH(-50000)

MOV TL0, #LOW(-50000)

SETB TR0

JNB TF0, $

CLR TR0

CLR TF0

DJNZ R7, DELAY1

RET

END

Trang 9

BÀI 3: GIAO TIẾP LCD VÀ ADC

Thí nghiệm 1: Viết chương trình hiển thị tên sinh viên lên hàng đầu

CODE:

ORG 2000H

MOV A,#01H

ACALL WRITE_COMMAND

EN BIT P3.4

RS BIT P3.5

MAIN:MOV DPTR, #8000H

ACALL LCD_INIT

MOV A, #01H

ACALL WRITE_COMMAND

MOV A, #90H

ACALL WRITE_COMMAND

MOV R1, #11

MOV A, #0

PUSH ACC

LOOP: ACALL TRABANG

ACALL WRITE_TEXT

POP ACC

INC A

PUSH ACC

DJNZ R1, LOOP

MOV R1,#27

LOOP1:MOV A, #18H

ACALL WRITE_COMMAND

ACALL DELAY

DJNZ R1,LOOP1

SJMP MAIN

Trang 10

TRABANG: MOV DPTR, #TABLE1

MOVC A, @A+DPTR

RET

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

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

LCD_INIT: KHOI DONG LCD

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

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

LCD_INIT:MOV A, #38H

ACALL WRITE_COMMAND

MOV A, #0EH

ACALL WRITE_COMMAND

MOV A, #06H

ACALL WRITE_COMMANDRET

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

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

========================================

=======================; CHO 50MS DE LCD THUC HIEN XONG LENH;===================

========================================

====;

WAIT_LCD: MOV R7, #100

LL1: MOV R6, #250

DJNZ R6, $

DJNZ R7, LL1

RET

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

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

DELAY: MOV R5, #20

LLL1: MOV R7, #10

LLL2: MOV R6, #250

DJNZ R6, $

DJNZ R7, LLL2

DJNZ R5, LLL1

RET

Trang 11

; TRUYEN DU LIEU CHO LCD - RS=1

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

===========================

WRITE_TEXT: MOV DPTR, #8000H

LCALL WAIT_LCD

SETB RS

MOVX @DPTR, A

SETB EN

CLR EN

RET

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

===========================; TRUYEN L

ENH CHO LCD - RS=0

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

===========================

WRITE_COMMAND:MOV DPTR, #8000H

LCALL WAIT_LCD

CLR RS

MOVX @DPTR, A

SETB EN

CLR EN

RET

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

===========================

TABLE1:DB ‘HO HOANG THI’

END

Trang 12

Thí nghiệm 2: Viết chương trình hiển thị điện áp đo được lên LCD

CODE:

ORG 2000H

MAIN: ACALL LCD_INIT

MOV TMOD,#21H

LOOP:MOV DPTR,#4000H

MOV A,#0

MOVX @DPTR,A

ACALL DELAY100US

MOVX A,@DPTR

ACALL BINTOASCII

ACALL CLR_LCD

MOV A,R4

ACALL WRITE_TEXT

AMOV A,R3

ACALL WRITE_TEXT

MOV A,R2

ACALL WRITE_TEXT

ACALL DELAY3MS

ACALL DELAY3MS

SJMP LOOP

DELAY100US: MOV TH1,#-100

MOV TL1,#-100

SETB TR1

JNB TF1,$

CLR TF1

CLR TR1

RET

BINTOASCII:

Trang 13

ACALL DELAY3MS RET

WRITE_TEXT: MOV DPTR,#8000H SETB P3.4

SETB P3.5 MOVX @DPTR,A CLR P3.4CALL DELAY3MS RET

CLR_LCD:MOV DPTR,#8000H SETB P3.4

CLR P3.5 MOV A,#01H MOVX @DPTR,A CLR P3.4

ACALL DELAY3MS RET

END

Trang 14

BÀI 4: LẬP TRÌNH GIAO TIẾP TIMER VÀ SERIAL

PORT

Thí nghiệm 1:

Viết chương trình tạo song vuông 1Hz trên chân P1.0 sử dụng timer 0 ở chế độ 1

CODE:

ORG 2000H LOOP: CPL P1.0 ACALL DL500 SJPM LOOP DL500: MOV TMOD, #01H PUSH 05

MOV R5, #10 LOOP1: MOV TH0, #HIGH(-50000) MOV TL0, #LOW(-50000)

SETB TR0 JNB TF0, $ CLR TF0 CLR TR0 DJNZ R5, LOOP POP R5

RET END

Trang 15

Thí nghiệm 2: Viết chương trình tạo song vuông 1 Hz trên chân P1.0 sử dụng timer0 ở chế độ 2

CODE:

ORG 2000H

LJMP MAIN

ORG 200BH

INC R5

CJNE R5, #10, ISRT0

MOV R5, #1

CPL P1.0

ISRT0: CLR TR0

CLR TF0

MOV TH0, #HIGH(-50000)

MOV TL0, #LOW(-50000)

SETB TR0

RETI

ORG 2030H

MAIN: MOV TMOD ,#01H

SETB TF0

MOV IE, #82H

SJMP $

END

Trang 16

Thí nghiệm 3: Viết chương trình phát chuỗi ký tự “ Hello

world” lên máy tính thông qua HyperTerminal với tốc độ baud

19200 bps mỗi khi SW310 (gắn vào P1.0) được nhấn

CODE:

ORG 2000H

MOV SCON,#52H

MOV TMOD,#20H

MOV TH1,#-3

SETB TR1

MOV R7,#11

MOV A,#0

PUSH ACC

LOOP: MOV DPTR, #TABLE

MOVC A, @A+DPTR

CALL OUT_CHAR

POP ACC

INC ACC

PUSH ACC

DJNZ R7, LOOP

SJMP $

OUT_CHAR: JNB TI, $

CLR TI

MOV SBUF, A

RET

TABLE:DB 'Hello world'

END

Ngày đăng: 25/05/2019, 14:59

TỪ KHÓA LIÊN QUAN

w