1. Trang chủ
  2. » Luận Văn - Báo Cáo

Tài liệu thí nghiệm vi xử lý 2015 NVD final

41 416 0

Đ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 41
Dung lượng 1,78 MB

Nội dung

Bài thí nghiệm 1 Bật tắt led đơn, hàng led 1.1. Mô tả mạch phần cứng Hình 1: Mạch nguyên lý nháy led Mạch phần cứng được mô tả như trong hình 1, cổng 0 nối với 8 led đơn (viết các giá trị 01 ra các chân tương ứng của cổng 0 để bậttắt led) 1.2. Chương trình mẫu 1.2.1. Chương tình nháy 1 led đơn ;===================== ; Nhay mot led don ; start ;===================== ( bài thí nghiệm 1, 2,3, 4, 6) Tài liệu TN Vi xử lýBộ môn KTĐTHCN Year 8 led bit p0.0 ;led tai chan P0.0 org 00h main: clr led ;bat led lcall delay_500ms ;delay 500ms setb led ;tat led lcall delay_500ms sjmp main delay_500ms: MOV 50H,200 loop: MOV 51H,250 DJNZ 51H, DJNZ 50H,loop RET end 1.2.2 Chương trình sáng lần lượt các led ;=========================== ; Sang lan luot cac led ; start ;============================ led_data equ p0 org 00h main: mov a,0x00 setb c loop: rlc a cpl a mov led_data,a cpl a lcall delay_500ms sjmp loop delay_500ms: MOV 50H,200 l1: MOV 51H,250 DJNZ 51H, DJNZ 50H,l1 RET end

Trang 1

B ào bi

B Vào thanh công c Project, ch New Project, ch

ên file ( ví d ài 1 )

Vào Select device ch Atmel, ch 89C51, ch OK

89C52

Trang 2

Sau khi so

Vào File ch save as ên file ( chú ý “.asm” ho c “ )

Trang 3

5 Kích chu ào d + Target1 s Source Group 1, Kích chu

ph ào Source Group1 , Kích chu ch Add files to group ‘Source Group1’, Ch

d “.asm”, Kích chu ên file , Kích chu Add, Kích chu

close, Kích chu ào d + Source ta

ào Bai1.asm

Trang 4

Vào Project ch Options for Target ‘Target1’; ch Ok

Project ch rget ‘Target1’ ta th

:

Trang 5

Ch Create Hex File ên file Name of Executable ; Ch

OK

Vào Project ch Rebuild all target files, n

Sau khi so à d ào Debug ch Start/Stop Debug Session

Trang 6

Nh òng l

trong c Value

ram trong vào m Address gõ D:0x00

ch

Trang 7

BÀI THÍ NGHIỆM VI XỬ LÝ 2015

Mở file “fullkit8051” theo đường dẫn sau: C:\TNVXL\students\full kit 8051\mo phong, để mở

file mạch nguyên lý mô phỏng trên phần mềm proteus 8.1

Bài thí nghiệm 1 Bật tắt led đơn, hàng led 1.1 Mô tả mạch phần cứng

Hình 1: Mạch nguyên lý nháy led

Mạch phần cứng được mô tả như trong hình 1, cổng 0 nối với 8 led đơn (viết các giá trị 0/1 ra các chân tương ứng của cổng 0 để bật/tắt led)

Trang 8

led bit p0.0 ;led tai chan P0.0

org 00h

main:

lcall delay_500ms ;delay 500ms

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Trang 9

Bài thí nghiệm 2:

Led 7 thanh 2.1 Mô tả phần cứng

Hình 2: Mạch nguyên lý nối led 7 thanh

Các chân A-DP của led 7 thanh tương ứng được nối với P1.0-P1.7, 2 chân chọn led thanh thanh 1-2 tương ứng nối với P2.2-P2.3

Trang 10

mov data_7seg,a ;so 5

lcall delay ;delay 250us

clr led1 ;disable 7seg no1

Trang 11

mov data_7seg,a ;chu so hang chuc

lcall delay_250us ;delay 250us

clr led1 ;disable 7seg no1

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Trang 12

Bài thí nghiệm 3 Hiển thị LCD 3.1 Mô tả phần cứng

Hình 3: Mạch nguyên lý nối LCD 16x2

Sử dụng LCD 16x2, cổng P2.4 nối với chân D4, cổng P2.5 nối với chân D5, cổng P2.6 nối với chân D6, cổng P2.7 nối với chân D7 Tín hiệu điều khiển từ cổng P2.0 nối chân RS, cổng P2.1 nối với chân E Sử dụng một biến trở nối với chân VEE của LCD để điều chỉnh tương phản màn hình

U equ 31 ; memory location to hold upper nibble

L equ 32 ; memory location to hold lower nibble

Port equ P2 ; data port to connect LCD

RS equ P2.0 ; RS pin connection

RW equ P2.2 ; RW pin connection

EN equ P2.1 ; EN pin connection

Trang 13

MOV U,A ; save A at temp location U

ANL U,#0F0H ; mask it with 0Fh (28h & F0h = 20h)

SWAP A ; swap nibble (28h => 82H)

ANL A,#0F0H ; mask it with 0fh (82h & f0h = 80h)

MOV L,A ; save it at temp location L

SETB EN ; make EN high

ACALL DELAY ; call a short delay routine

CLR EN ; clear EN

ACALL DELAY ; short delay

RET ; return

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

Trang 14

;LCD command

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

lcd_cmd:

CLR RS ; clear rs, going to send command

ACALL separator ; separate the command and save to U and L

SETB RS ; RS=1, going to send DATA

ACALL separator ; separate the data and save to U & L

CLR port.7 ; send 20h to LCD to set 4 bit mode

CLR RS ; after that we can use lcd_cmd

SETB EN ; make EN switching

Trang 15

- Soạn thảo, dịch, chạy, gi lại kết quả

- Mô phỏng trên phần mềm proteus

Bài thí nghiệm 4:

Giải mã phím (mã trân phím 2x2) 4.1 Mô tả phần cứng

Trang 16

U equ 31 ; memory location to hold upper nibble

L equ 32 ; memory location to hold lower nibble

Port equ P2 ; data port to connect LCD

RS equ P2.0 ; RS pin connection

RW equ P2.2 ; RW pin connection

EN equ P2.1 ; EN pin connection

Trang 18

MOV U,A ; save A at temp location U

ANL U,#0F0H ; mask it with 0Fh (28h & F0h = 20h)

SWAP A ; swap nibble (28h => 82H)

ANL A,#0F0H ; mask it with 0fh (82h & f0h = 80h)

MOV L,A ; save it at temp location L

SETB EN ; make EN high

ACALL DELAY ; call a short delay routine

CLR RS ; clear rs, going to send command

ACALL separator ; separate the command and save to U and L

Trang 19

; LCD data

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

lcd_data:

SETB RS ; RS=1, going to send DATA

ACALL separator ; separate the data and save to U & L

CLR port.7 ; send 20h to lcd to set 4 bit mode

CLR RS ; after that we can use lcd_cmd

SETB EN ; make EN switching

Trang 20

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Bài thí nghiệm 5:

Giải mã bàn phím 4x4 5.1 Mô tả phần cứng

Hình 5: Mạch nguyên lý giải mã phím 4x4

Trang 21

Bốn hàng được nối với P2.0-P2.3, bốn cột được nối với P2.4-P2.7 Bấm từng phím từ trái sang phải, từ trên xuống dưới sẽ hiện số tuần tự 0 đến 9 trên led 7 thanh Mô phỏng trên proteus bằng cách mở file “Keypad_Scan_Interrupt” theo đường dẫn sau: C:\TNVXL\students\Bai 5 - Quet ban phim dung ngat

SETB EA ; Enable Interrupt SETB EX0 ; Enable INT0

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

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

MOV TMOD, #20H MOV TH1, #0B0H

MOV P2, #0FH MOV P1, #0 MOV R1, #0 ; COUNT

Trang 22

ANL A, #0F0H CJNE A, #0F0H, ROW0 MOV P2, #11111101B MOV A, P2

MOV R1, #4 ANL A, #0F0H CJNE A, #0F0H, ROW1 MOV P2, #11111011B MOV A, P2

MOV R1, #8 ANL A, #0F0H CJNE A, #0F0H, ROW2 MOV P2, #11110111B MOV A, P2

MOV R1, #12 ANL A, #0F0H CJNE A, #0F0H, ROW3 ROW0:

SJMP ROW0 ROW1:

Trang 23

INC R1 SJMP ROW1 ROW2:

SJMP ROW2 ROW3:

SJMP ROW3 MATCH:

MOV A, #0 MOV A, R1 MOV P1, A EXIT:

MOV R1, #0 MOV P2, #0F0H RETI

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Trang 24

; * FUNCTION_PURPOSE: This file set up uart in mode 1 (8 bits uart) with

; * timer 1 in mode 2 (8 bits auto reload timer)

MOV SCON, #50h ; /* uart in mode 1 (8 bit), REN=1 */

ORL TMOD, #20h ; /* Timer 1 in mode 2 */

MOV TH1, #0FDh ; /* 9600 Bds at 11.059MHz */

MOV TL1, #0FDh ; /* 9600 Bds at 11.059MHz */

SETB ES ; /* Enable serial interrupt*/

SETB EA ; /* Enable global interrupt */

SETB TR1 ; /* Timer 1 run */

;/**

; * FUNCTION_PURPOSE: serial interrupt, echo received data

; * FUNCTION_INPUTS: P3.0(RXD) serial input

; * FUNCTION_OUTPUTS: P3.1(TXD) serial output

; */

serial_IT:

JNB RI,EMIT_IT ; test if it is a reception

CLR RI ; clear reception flag for next reception

MOV A,SBUF ; read data from uart

MOV SBUF,A ; write same data to uart

Trang 25

6.2 Yêu cầu

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Bài thí nghiệm 7

Đo nhiệt độ bằng cảm biến LM35 7.1 Mô tả phần cứng

Hình 6: Mạch nguyên lý mạch đo nhiệt độ

Sử dụng CLOCK ngoài cấp cho ADC0808 Đọc nhiệt độ vào chân IN0 của ADC Chân dữ liệu của 8051 gửi lên led 7 thanh là: P0.0 – P0.6 nối lần lượt với các chân A – G của led 7 thanh Mô phỏng trên proteus bằng cách mở file “do nhiet do_89c51” theo đường dẫn sau: C:\TNVXL\students\Bai 7 Do nhiet do\mo phong

Trang 27

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus

Bài thí nghiệm 8 Giao tiếp I2C, thiết kế mạch đồng hồ

8.1 Mô tả phần cứng

Hình 7: Mạch nguyên lý mạch đồng hồ

Sử dụng IC thời gian thực DS1307 để hiện thị thời gian trên led 7 thanh Mạch sử dụng các nút bấm để cài đặt thời gian cho đúng Chân dữ liệu của 8051 gửi lên led 7 thanh là: P0.0 – P0.7 nối

Trang 28

lần lượt với các chân A – G - DP của led 7 thanh Mô phỏng trên proteus bằng cách mở file

“Dong ho ds1307 Dn proteus” theo đường dẫn sau: C:\TNVXL\students\Bai 8 Mach dong ho\mo phong

XUNG_NHAY DATA 38H ; XUNG 100ms

BIEN_NHAY DATA 39H ; 0 = SANG TAT CA DEN , 1 = NHAY led TUONG UNG KHI set GIAY DATA 40H

Trang 31

MOV A,ADD_LOW ; send address low

Trang 33

MOV A,GIAY ;Lan luot chia cac Bien: Giay, Phut, Gio cho 10

MOV B,#10 ;de tach phan Don Vi va Hang Chuc ra, de cat rieng vao cac Bien tuong ung DIV AB ;PHAN NGUYEN trong A, PHAN DU trong B

MOV CHUC_GIAY,A ;Luu lai HANG CHUC Giay

MOV DONVI_GIAY,B ;luu lai DON VI Giay

Trang 35

MOV A,CHUC_GIAY ;hien thi hang chuc cua Giay

Trang 38

CJNE A,#-1,L_SW3 ;Bien Phut = -1? - Thoat khoi ngat Time0 neu khong =

MOV PHUT,#59 ;Neu = -1 th? set bien nay = 60

Trang 39

- Soạn thảo, dịch, chạy, ghi lại kết quả

- Mô phỏng trên phần mềm proteus, cài đặt múi giờ khác bằng các nút bấm

Trang 40

Bài thí nghiệm 9 Tạo xung vuông tần số 5 KHz 9.1 Mô tả phần cứng

Hình 8: Mạch nguyên mạch tạo xung vuông

Tạo xung vuông tần số 5 kHz trên chân P2.0, sử dụng Oscilloscope để đo tần số của xung được tạo ra Mô phỏng trên proteus bằng cách mở file “tao xung” theo đường dẫn sau: C:\TNVXL\students\Bai9 PWM\mo phong

Trang 41

- Soạn thảo, dịch, chạy, ghi lại kết quả, thay đổi tần số khác

- Mô phỏng trên phần mềm proteus

Ngày đăng: 13/07/2016, 10:25

TỪ KHÓA LIÊN QUAN

w