wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Quiz về Vi Điều Khiển

Total questions: 20

Worksheet time: 10mins

Name
Class
Date
1.

Sự khác biệt chính giữa vi xử lý (Microprocessor) và vi điều khiển (Microcontroller) là gì?

a)

Vi xử lý có tốc độ cao hơn vi điều khiển

b)

Vi điều khiển chỉ dùng trong máy tính

c)

Vi xử lý cần các linh kiện ngoài (RAM, ROM, I/O), còn vi điều khiển tích hợp sẵn

d)

Vi điều khiển không có CPU

2.

Thành phần bắt buộc phải có trong một vi điều khiển là gì?

a)

CPU

b)

RAM

c)

ROM/Flash

d)

Tất cả các đáp án trên

3.

Vi điều khiển thường được sử dụng nhiều nhất trong lĩnh vực nào?

a)

Máy tính cá nhân

b)

Máy chủ (Server)

c)

Hệ thống nhúng

d)

Thiết kế đồ họa

4.

Ví dụ nào sau đây là vi điều khiển phổ biến?

a)

Intel Core i5

b)

AMD Ryzen 7

c)

ARM Cortex-M

d)

NVIDIA RTX

5.

Bộ nhớ nào trong vi điều khiển dùng để lưu chương trình khi mất nguồn?

a)

RAM

b)

Cache

c)

Flash/ROM

d)

Register

6.

Dòng vi điều khiển ARM nào sau đây chuyên dùng cho hệ thống nhúng và vi điều khiển?

a)

ARM Cortex-A

b)

ARM Cortex-R

c)

ARM Cortex-M

d)

ARM Neoverse

7.

ARM Cortex-M thường sử dụng kiến trúc tập lệnh nào?

a)

x86

b)

RISC

c)

CISC

d)

VLIW

8.

Bộ nhớ nào sau đây thường được tích hợp sẵn trong vi điều khiển ARM để lưu chương trình?

a)

SRAM

b)

Cache

c)

Flash

d)

HDD

9.

Dòng STM32F nào sau đây thuộc phân khúc phổ thông, cân bằng giữa hiệu năng và chi phí, được dùng rất nhiều trong học tập và dự án nhúng?

a)

STM32F0

b)

STM32F1

c)

STM32F7

d)

STM32H7

10.

Hãng nào sau đây sản xuất vi điều khiển dựa trên lõi ARM Cortex-M?

a)

Intel

b)

STMicroelectronics

c)

NVIDIA

d)

Qualcomm

11.

Thư viện HAL (Hardware Abstraction Layer) của STM32 có mục đích chính là gì?

a)

Truy cập trực tiếp thanh ghi phần cứng

b)

Trừu tượng hóa phần cứng, giúp lập trình dễ và nhanh hơn

c)

Thay thế hoàn toàn hệ điều hành nhúng

d)

Chỉ dùng cho mô phỏng phần cứng

12.

Phần mềm STM32CubeIDE là gì?

a)

Trình mô phỏng STM32

b)

Trình soạn thảo code C thuần

c)

Môi trường phát triển tích hợp (IDE) cho STM32

d)

Công cụ thiết kế mạch STM32

13.

Công cụ nào trong STM32CubeIDE dùng để cấu hình chân GPIO, clock, peripheral?

a)

Keil uVision

b)

STM32CubeProgrammer

c)

STM32CubeMX

d)

Proteus

14.

Hàm nào sau đây thuộc thư viện HAL và thường dùng để tạo trễ (delay)?

a)

delay_ms()

b)

wait()

c)

HAL_Delay()

d)

SysTick_Delay()

15.

Khi sử dụng HAL trong STM32CubeIDE, đoạn code người dùng nên viết ở đâu để tránh bị mất khi regenerate code?

a)

Bất kỳ chỗ nào trong file main.c

b)

Trong các vùng /* USER CODE BEGIN */ và /* USER CODE END */

c)

Trong file HAL library

d)

Trong file startup

16.

Hàm nào trong HAL dùng để ghi mức logic ra chân GPIO?

a)

HAL_GPIO_ReadPin()

b)

HAL_GPIO_TogglePin()

c)

HAL_GPIO_WritePin()

d)

HAL_GPIO_Init()

17.

Hàm nào dùng để đọc trạng thái của một chân GPIO?

a)

HAL_GPIO_GetPin()

b)

HAL_GPIO_ReadPin()

c)

HAL_GPIO_CheckPin()

d)

HAL_GPIO_Input()

18.

Để xuất mức HIGH (1) ra chân GPIO bằng HAL, tham số thứ 3 của hàm
HAL_GPIO_WritePin() phải là giá trị nào?

a)

0

b)

1

c)

HIGH

d)

LOW

19.

Xét đoạn chương trình sau:

while (1)

{

    HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_SET);

    HAL_Delay(500);

    HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_RESET);

    HAL_Delay(500);

}

Chương trình trên có tác dụng gì?

a)

LED PC13 chỉ bật một lần rồi tắt

b)

LED PC13 luôn sáng

c)

LED PC13 nhấp nháy liên tục với chu kỳ 1 giây

d)

LED PC13 chỉ nhấp nháy 1 lần

20.

Xét đoạn chương trình sau:

for (int i = 0; i < 3; i++)

{

    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_SET);

    HAL_Delay(200);

    HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_RESET);

    HAL_Delay(200);

}

Kết quả đúng của đoạn chương trình là gì?

a)

LED PA5 nhấp nháy 1 lần rồi dừng
mức LOW

b)

LED PA5 nhấp nháy 2 lần rồi dừng
mức LOW

c)

LED PA5 nhấp nháy 3 lần rồi dừng
mức LOW

d)

LED PA5 nhấp nháy 4 lần rồi dừng
mức LOW