1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Bài tập môn vi điều khiển có lời giải

46 4,1K 9

Đ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 46
Dung lượng 597 KB

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

Nội dung

Câu 16: Chương trình khởi động động cơ qua 3 cấp điện trở phụMain:SETB P1.0 ; khởi động từ chínhACALL Delay ; trễ 10sSETB P1.1 ; khởi động từ loại Rf1ACALL Delay ; trễ 10sSETB P1.2 ; khởi động từ loại Rf2ACALL Delay ; trễ 10sSETB P1.3 ; khởi động từ loại Rf3ACALL DelayDelay:PUSH 07hPUSH 06hPUSH 05HMOV R6,200 Delay1: MOV R7,250Delay2:MOV R5, 200 DJNZ R5, DJNZ R7, Delay1DJNZ R6, Delay1 POP 05h

Trang 1

BÀI TẬP VI ĐIỀU KHIỂN

Câu 1: Trình bày hoạt động của vi điều khiển

• 1 Khi không có nguồn điện cung cấp, vi điều khiển chỉ

là một con chip có chương trình nạp sẵn vào trong đó và không

có hoạt động gì xảy ra

• 2 Khi có nguồn điện, mọi hoạt động bắt đầu được xảy

ra với tốc độ cao Đơn vị điều khiển logic có nhiệm vụ điều

khiển tất cả mọi hoạt động Nó khóa tất cả các mạch khác, trừ mạch dao động thạch anh Sau mini giây đầu tiên tất cả đã sẵn sàng hoạt động

Trang 2

Chương 3 Lập trình hợp ngữ cho 8051

3 Điện áp nguồn nuôi đạt đến giá trị tối đa của nó và tần

số dao động trở nên ổn định Các bit của các thanh ghi SFR cho biết trạng thái của tất cả các mạch trong vi điều khiển Toàn bộ vi điều khiển hoạt động theo chu kỳ của chuỗi xung chính

4 Thanh ghi bộ đếm chương trình (Program Counter) được xóa về 0 Câu lệnh từ địa chỉ này được gửi tới bộ giải mã lệnh sau đó được thực thi ngay lập tức

5 Giá trị trong thanh ghi PC được tăng lên 1 và toàn bộ quá trình được lặp lại vài triệu lần trong một giây

BÀI TẬP VI ĐIỀU KHIỂN

Trang 3

Câu 2: Nêu cấu trúc chung của vi điều khiển Trình bày về ROM, RAM của vi điều khiển

Bộ nhớ (Memory)

- Read Only Memory (ROM)

- Random Access Memory (RAM)

-Electrically Erasable Programmable ROM (EEPROM)

Các thanh ghi chức năng đặc biệt (SFR)

Bộ đếm chương trình (PC: Program Counter)

Central Processor Unit (CPU)

Các cổng vào/ra (I/O Ports)

Bộ dao động (Oscillator)

Bộ định thời/đếm (Timers/Counters)

Truyền thông nối tiếp

Chương trình

Trang 4

BÀI TẬP VI ĐIỀU KHIỂN

Câu 3: Chuyển từ hệ cơ số 10 các số: 34, 225,

143 sang hệ cơ số 2 và cơ số 16

* Nguyên tắc:

Để chuyển từ hệ cơ số bất kỳ sang thập phân, nguyên tắc là cứ chia số đó lấy phần dư rồi tiếp tục chia phần nguyên lấy phần dư tiếp sau đó xếp thứ tự ngược từ dưới lên

Trang 5

BÀI TẬP VI ĐIỀU KHIỂN

2

34

217

2

10

2

201

* Chuyển 34 sang hệ nhị phân:

Sắp xếp các số dư từ dưới lên trên ta được: 34 (demical) = 100010 (binary) Hoặc viết: 34 = 100010b

Trang 6

BÀI TẬP VI ĐIỀU KHIỂN

* Chuyển 225 sang hệ nhị phân: 225 = 11100001b

* Chuyển 143 sang hệ nhị phân: 143 = 10001111b

Trang 7

BÀI TẬP VI ĐIỀU KHIỂN

Câu 3: Chuyển các số sau sang hệ 10: 23h, 110101b,

Trang 8

BÀI TẬP VI ĐIỀU KHIỂN

Câu 4: Thực hiện phép toán sau bằng thanh ghi 8 bít.

Trang 9

BÀI TẬP VI ĐIỀU KHIỂN

Câu 6: Trình bày chuẩn 8051

AT89C51 là vi điều khiển do Atmel sản xuất, chế tạo theo công nghệ CMOS có các đặc tính như sau:

+ 4 KB PEROM (Flash Programmable and Erasable Read Only Memory), có khả năng tới 1000 chu kỳ ghi xoá

+ Tần số hoạt động từ: 0Hz đến 24 MHz

+ 3 mức khóa bộ nhớ lập trình

+ 128 Byte RAM nội

+ 4 Port xuất /nhập I/O 8 bit

+ 2 bộ Timer/counter 16 Bit

+ 6 nguồn ngắt

Trang 10

BÀI TẬP VI ĐIỀU KHIỂN

+ Giao tiếp nối tiếp điều khiển bằng phần cứng.+ 64 KB vùng nhớ mã ngoài

Trang 11

BÀI TẬP VI ĐIỀU KHIỂN

Câu 7: Vẽ sơ đồ chân của vi điều khiển 8051 Nêu ý

nghĩa các chân

Sơ đồ chân của vi điều khiển 8051

Trang 13

Chương 3 Lập trình hợp ngữ cho 8051

Ngõ tín hiệu /EA (External Acces):

Thường đặt lên mức cao ( +5V) hoặc mức thấp (GND)

- Nếu ở mức cao, 8951 thi hành chương trình từ ROM nội trong khoảng địa chỉ thấp (4K hoặc tối đa 8k đối với 89C52)

- Nếu ở mức thấp, chương trình được thi hành từ bộ nhớ mở rộng (tối đa đến 64 Kbyte)

BÀI TẬP VI ĐIỀU KHIỂN

Trang 14

Chương 3 Lập trình hợp ngữ cho 8051

/PSEN (Program Store Enable):

/PSEN (chân 29) cho phép đọc bộ nhớ chương trình mở rộng đối với các ứng dụng sử dụng ROM ngoài Mã lệnh của chương trình được đọc từ ROM thông qua bus dữ liệu (Port0) và bus địa chỉ (Port0 + Port2)

Khi 8051 thi hành chương trình trong ROM nội, PSEN sẽ

ở mức logic 1

BÀI TẬP VI ĐIỀU KHIỂN

Trang 15

BÀI TẬP VI ĐIỀU KHIỂN

Trang 16

Chương 3 Lập trình hợp ngữ cho 8051

* Ngõ tín hiệu điều khiển ALE (Address Latch Enable):

• Khi 89C51 truy xuất bộ nhớ bên ngoài, port 0 có chức năng là bus địa chỉ và bus dữ liệu do đó phải tách các đường dữ liệu và địa chỉ Tín hiệu ra ALE ở chân thứ 30 dùng làm tín hiệu điều khiển để giải đa hợp các đường địa chỉ và dữ liệu khi kết nói chúng với IC chốt

• Tín hiệu ra ở chân ALE là một xung trong khoảng thời gian port 0 đóng vai trò là địa chỉ thấp nên chốt địa chỉ hoàn toàn

tự động

BÀI TẬP VI ĐIỀU KHIỂN

Trang 18

Câu 8: Trình bày các chế độ dịa chỉ của 8051 Lấy ví

dụ minh họa (2.5)

1 Địa chỉ tức thời: Trong chế độ đánh địa chỉ này toán hạng

nguồn là một hằng số, toán hạng đích là một thanh ghi Ví dụ: MOV A, #52;

2 Địa chỉ thanh ghi: cả toán hạng đích và toán hạng nguồn là các thanh ghi Ví dụ: MOV A, R2

3 Địa chỉ trực tiếp: Một toán hạng là thanh ghi, toán hạng còn lại

là địa chỉ của ô nhớ Ví dụ: MOV R4, 30H;

4 Địa chỉ gián tiếp: Một toán hạng là thanh ghi, toán hạng còn lại

là thanh ghi R0 hoặc R1 chứa địa chỉ của ô nhớ

Ví dụ: MOV A, @R6

5 Địa chỉ theo chỉ số: Một toán hạng là thanh ghi tích lũy A, toán hạng còn lại là ô nhớ của bộ nhớ ROM Ví dụ: MOVC A, @A +

DPTR

Trang 19

BÀI TẬP VI ĐIỀU KHIỂN

Trang 27

Câu 9: Trình bày cấu trúc chung của một lệnh hợp ngữ Cho ví dụ.(2.5)

Cấu trúc chung của một lệnh hợp ngữ:

nhãn: từ gợi nhớ các toán hạng ; chú giải

Ví dụ:

KIEMTRA: JNB P3.2, BAT ; BAT DEN

JNB P3.3, TAT ; TAT DEN

Nhãn: là tên chương trình con Kết thúc bằng dấu hai chấm (:)

Từ gợi nhớ: là các câu lệnh của hợp ngữ.

Các toán hạng: là các thanh ghi, giá trị, địa chỉ, …

Chú giải: là phần giải thích ý nghĩa của câu lệnh Bắt đầu bằng dấu chấm phẩy (;)

Trang 28

BÀI TẬP VI ĐIỀU KHIỂN

Câu 10: Viết chương trình ghi 40H vào ô nhớ 30H của RAM nội sử dụng 2 chế độ đánh địa chỉ trực tiếp và gián tiếp (3.0)

1 Chế độ đánh địa chỉ trực tiếp

MOV A, #40H ; chuyển 40H vào thanh ghi A

MOV 30H, A ; chuyển nội dung thanh ghi A vào ô nhớ có địa chỉ 30H

2 Chế độ địa chỉ gián tiếp

MOV R0, #30H ; Dùng thanh ghi R0 chứa địa chỉ của ô nhớ RAM là 30H

MOV A, #40H ; Chuyển 40H vào thanh ghi A

MOV @R, A ; chuyển nội dung thanh ghi A vào ô nhớ có địa chỉ chứa trong thanh ghi R0

Trang 29

BÀI TẬP VI ĐIỀU KHIỂN

Câu 11: Viết chương trình chuyển một chuỗi dữ liệu gồm 10 byte trong RAM nội có địa chỉ đầu là 30H đến vùng RAM nội có địa chỉ đầu là 40H (3.0)

MOV R0, #30H ; dùng thanh ghi R0 chứa địa chỉ đầu 30H

MOV R1, #40H ; dùng thanh ghi R1 chứa địa chỉ đầu 40H

MOV R2, #10 ; dùng thanh ghi R2 làm bộ đếm 10 lần

Trang 30

BÀI TẬP VI ĐIỀU KHIỂN

Câu 12: Viết chương trình tính tổng sau: (3.0)

S = 1 + 2 + 3 + … + 10;

MOV A, #0 ; Xóa thanh ghi A MOV R1, #1 ;

MOV R2, 10 ; chứa số đếm là 10 lần Lap:

ADD A, R1 ; INC R1 ; DJNZ R2, Lap

Trang 31

BÀI TẬP VI ĐIỀU KHIỂN

Bài 13: Chương trình con tạo trễ 0.5ms dùng timer

LAP:

JNB TF0, LAP ;

CLR TF0 ;

CLR TR0 ;

Trang 32

Bài 14: Viết chương trình con tạo sóng vuông 1k HZ trên chân p1.0 (Xtal = 11.0592MHZ)

Trang 33

Bài 15 Chương trình hiển thị led 7 thanh số từ 00 đến 99 Dùng Led 7 thanh Cathode chung

Trang 35

Câu 16: Chương trình khởi động động cơ qua 3 cấp điện trở phụ

MOV R5, # 200 DJNZ R5, $

DJNZ R7, Delay1 DJNZ R6, Delay1 POP 05h

POP 06h POP 07h RET

END

Trang 36

Bài 17: Viết chương trình điều khiển động cơ 1 chiều quay thuận, quay nghịch

a Vẽ sơ đồ b Viết chương trình

; -chương trình quay ngược NGUOC:

SETB P0.1 RET

; -chương trình dừng STOP: ;

CLR P0.0 CLR P0.1 RET

; END

Trang 37

Câu 18: Thiết kế mạch, viết chương trình điều khiển

động cơ bước quay thuận nghịch Giải thích ý nghĩa các câu lệnh.

a Thiết kế mạch

Trang 38

BÀI TẬP VI ĐIỀU KHIỂN

MOV P1, #00000010B ACALL DELAY

MOV P1, #00000100B ACALL DELAY

MOV P1, #00001000B ACALL DELAY

RET DELAY:

MOV R1, #20 H1: MOV R2,#255

H2: MOV R3,#255 H3: DJNZ R3,H3

DJNZ R2,H2 DJNZ R1,H1 RET

END

Trang 39

Câu 19 Thiết kế mạch, viết chương trình điều khiển dãy 8 led đơn sáng dần từ trái qua phải, nhấp nháy, sau đó sáng lần lượt

từ phải qua trái Giải thích ý nghĩa các câu lệnh.

Trang 40

BÀI TẬP VI ĐIỀU KHIỂN

a Thiết kế mạch:

Trang 41

BÀI TẬP VI ĐIỀU KHIỂN

Trang 42

Câu20 Viết chương trình điều khiển mạch đếm sản phẩm sử dụng Timer 1 chế độ 2 hiển thị trên một Led 7 thanh Giải thích ý nghĩa các câu lệnh (5.0)

MOV TMOD, #01100000B; Chọn bộ đếm 1, chế độ 2, bít C/T = 1 xung ngoài.

BACK: MOV A, TL1 ; Lấy bản sao số đếm TL1

Trang 43

BÀI TẬP VI ĐIỀU KHIỂN

Trang 44

Câu 21: Thiết kế mạch, Viết chương trình hiển thị trên Led 7 thanh từ 0 đến 9 khi ấn nút tăng INC hay nút giảm DEC

a Thiết kế mạch

Trang 45

BÀI TẬP VI ĐIỀU KHIỂN

Trang 46

BÀI TẬP VI ĐIỀU KHIỂN

CJNE A,#255,Hienthi ; Nếu giá trị giảm = -1 (255) MOV 30H,#9

Ngày đăng: 18/03/2015, 16:08

HÌNH ẢNH LIÊN QUAN

Sơ đồ chân của vi điều khiển 8051 - Bài tập môn vi điều khiển có lời giải
Sơ đồ ch ân của vi điều khiển 8051 (Trang 11)

TỪ KHÓA LIÊN QUAN

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

w