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

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (539.55 KB, 46 trang )

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.
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
BÀI TẬP VI ĐIỀU KHIỂN
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
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.
BÀI TẬP VI ĐIỀU KHIỂN
2
34
2
170
81
2
40
20
2
10
2
2
01

* 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
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
BÀI TẬP VI ĐIỀU KHIỂN
Câu 3: Chuyển các số sau sang hệ 10: 23h, 110101b,
101011b, 4Ah
* Chuyển 110101b
110101B = 1×2
5
+ 1×2
4
+ 0x2
3
+ 1×2
2
+ 0x2
1
+ 1×2
0
= 35
* Chuyển 101011b
101011b = 43
* Chuyển 23h
23h = 2×16
1
+ 3×16
0

= 35
* Chuyển 4Ah
4Ah = 4×16
1
+ 10×16
0
= 74
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.
S1 = 47 + 30 ;
S2 = 64 – 37 ;
S3 = 28H + 33H ;
S4 = 49H – 2CH ;
47 sang nhị phân là: 00101111
30 sang nhị phân là: 00011110
Thực hiện phép cộng:
00101111
+ 00011110
01001101
Vậy S1 = 00101111 + 00011110 = 01001101
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.
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
+ 64 KB vùng nhớ dữ liệu ngoài.
+ Cho phép xử lý bit.
+ 210 vị trí nhớ có thể định vị bit.
+ 4 chu kỳ máy (4 µs đối với thạch anh 12MHz)
cho hoạt động nhân hoặc chia.
+ Có các chế độ nghỉ (Low-power Idle) và chế độ
nguồn giảm (Power-down).
+ Ngoài ra, một số IC khác của họ MCS-51 có
thêm bộ định thời thứ 3 và 256
byte RAM nội.
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
Chương 3. Lập trình hợp ngữ cho 8051
Các chân nguồn:
AT89C51 hoạt động ở nguồn đơn +5V. Vcc được nối vào
chân 40, và Vss (GND) được nối vào chân 20.
+ Chân 40: VCC = 5V± 20%
+ Chân 20: GND
BÀI TẬP VI ĐIỀU KHIỂN
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
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
Chương 3. Lập trình hợp ngữ cho 8051
RST (Reset):
RST (chân 9) cho phép reset AT89C51 khi ngõ vào tín
hiệu đưa lên mức 1 trong ít nhất là 2 chu kỳ máy.
X1, X2:
Ngõ vào và ngõ ra bộ dao động, khi sử dụng có thể chỉ cần
kết nối thêm thạch anh và các tụ. Tần số thạch anh thường sử
dụng cho 8051 là 11.0592 Mhz.
BÀI TẬP VI ĐIỀU KHIỂN
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
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
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
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN
BÀI TẬP VI ĐIỀU KHIỂN

Các thanh ghi công dụng đặc biệt quan trọng ( 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ộ xê dịch ( Oscillator ) Bộ định thời / đếm ( Timers / Counters ) Truyền thông nối tiếpChương trìnhBÀI TẬP VI ĐIỀU KHIỂNCâu 3 : Chuyển từ hệ cơ số 10 những 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êntắc là cứ chia số đó lấy phần dư rồi liên tục chia phầnnguyên lấy phần dư tiếp sau đó xếp thứ tự ngược từdưới lên. BÀI TẬP VI ĐIỀU KHIỂN341708140201001 * Chuyển 34 sang hệ nhị phân : Sắp xếp những số dư từ dưới lên trên ta được : 34 ( demical ) = 100010 ( binary ) Hoặc viết : 34 = 100010 bBÀI TẬP VI ĐIỀU KHIỂN * Chuyển 225 sang hệ nhị phân : 225 = 11100001 b * Chuyển 143 sang hệ nhị phân : 143 = 10001111 bBÀI TẬP VI ĐIỀU KHIỂNCâu 3 : Chuyển những số sau sang hệ 10 : 23 h, 110101 b, 101011 b, 4A h * Chuyển 110101 b110101B = 1×2 + 1×2 + 0x2 + 1×2 + 0x2 + 1×2 = 35 * Chuyển 101011 b101011b = 43 * Chuyển 23 h23h = 2×16 + 3×16 = 35 * Chuyển 4A h4Ah = 4×16 + 10×16 = 74B ÀI TẬP VI ĐIỀU KHIỂNCâu 4 : Thực hiện phép toán sau bằng thanh ghi 8 bít. S1 = 47 + 30 ; S2 = 64 – 37 ; S3 = 28H + 33H ; S4 = 49H – 2CH ; 47 sang nhị phân là : 0010111130 sang nhị phân là : 00011110T hực hiện phép cộng : 00101111 + 0001111001001101V ậy S1 = 00101111 + 00011110 = 01001101B ÀI TẬP VI ĐIỀU KHIỂNCâu 6 : Trình bày chuẩn 8051AT89 C51 là vi điều khiển do Atmel sản xuất, sản xuất theocông nghệ CMOS có những đặc tính như sau : + 4 KB PEROM ( Flash Programmable and Erasable ReadOnly Memory ), có năng lực tới 1000 chu kỳ luân hồi ghi xoá + Tần số hoạt động giải trí từ : 0H z đế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. 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 + 64 KB vùng nhớ tài liệu ngoài. + Cho phép giải quyết và xử lý bit. + 210 vị trí nhớ hoàn toàn có thể xác định bit. + 4 chu kỳ luân hồi máy ( 4 µs so với thạch anh 12MH z ) cho hoạt động giải trí nhân hoặc chia. + Có những chính sách nghỉ ( Low-power Idle ) và chế độnguồn giảm ( Power-down ). + Ngoài ra, một số ít IC khác của họ MCS-51 cóthêm bộ định thời thứ 3 và 256 byte RAM nội. BÀI TẬP VI ĐIỀU KHIỂNCâu 7 : Vẽ sơ đồ chân của vi điều khiển 8051. Nêu ýnghĩa những chânSơ đồ chân của vi điều khiển 8051C hương 3. Lập trình hợp ngữ cho 8051C ác chân nguồn : AT89C51 hoạt động giải trí ở nguồn đơn + 5V. Vcc được nối vàochân 40, và Vss ( GND ) được nối vào chân 20. + Chân 40 : VCC = 5V ± 20 % + Chân 20 : GNDBÀI TẬP VI ĐIỀU KHIỂNChương 3. Lập trình hợp ngữ cho 8051N gõ 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 trongkhoảng địa chỉ thấp ( 4K hoặc tối đa 8 k so với 89C52 ). Nếu ở mức thấp, chương trình được thi hành từ bộ nhớ lan rộng ra ( tối đa đến 64 Kbyte ). BÀI TẬP VI ĐIỀU KHIỂNChương 3. Lập trình hợp ngữ cho 8051 / PSEN ( Program Store Enable ) : / PSEN ( chân 29 ) được cho phép đọc bộ nhớ chương trình mởrộng so với những ứng dụng sử dụng ROM ngoài. Mã lệnh củachương trình được đọc từ ROM trải 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ỂNChương 3. Lập trình hợp ngữ cho 8051RST ( Reset ) : RST ( chân 9 ) được cho phép reset AT89C51 khi ngõ vào tínhiệu đưa lên mức 1 trong tối thiểu là 2 chu kỳ luân hồi máy. X1, X2 : Ngõ vào và ngõ ra bộ xê dịch, khi sử dụng hoàn toàn có thể chỉ cầnkết nối thêm thạch anh và những tụ. Tần số thạch anh thường sửdụng cho 8051 là 11.0592 Mhz. BÀI TẬP VI ĐIỀU KHIỂNChươ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ứcnăng là bus địa chỉ và bus dữ liệu do đó phải tách những đườ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 những đường địa chỉ và tài liệu khi kết nóichúng với IC chốt. • Tín hiệu ra ở chân ALE là một xung trong khoảng chừng thờigian port 0 đóng vai trò là địa chỉ thấp nên chốt địa chỉ hoàn toàntự động. BÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNCâu 8 : Trình bày những chính sá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 sách đánh địa chỉ này toán hạngnguồ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ácthanh ghi Ví dụ : MOV A, R23. Địa chỉ trực tiếp : Một toán hạng là thanh ghi, toán hạng còn lạilà đị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ạilà thanh ghi R0 hoặc R1 chứa địa chỉ của ô nhớ. Ví dụ : MOV A, @ R65. Địa chỉ theo chỉ số : Một toán hạng là thanh ghi tích góp A, toánhạng còn lại là ô nhớ của bộ nhớ ROM Ví dụ : MOVC A, @ A + DPTRBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂNBÀI TẬP VI ĐIỀU KHIỂN

Source: https://ta-ogilvy.vn
Category: Hỏi Đáp