MIP201DễKỳ 7Chuyên ngành Cập nhật 25/03/2026

Microcontroller Programming - MIP201

Lập trình vi điều khiển (Microcontroller Programming - MIP201) là một trong những cột mốc quan trọng trong lộ trình đào tạo kỹ sư IoT và hệ thống nhúng tại Đại học FPT. Môn học tập trung vào việc hiện thực hóa các dự án thực tế trên nền tảng kiến trúc Arm Cortex-M4 thông qua kit phát triển ST Nucleo F401RE và hệ sinh thái Mbed API (Mbed OS).

226Câu hỏi
2Bộ đề
1Chủ đề
5,01 đánh giá

Câu hỏi của môn

64/226 câuCòn 162
45What component manages and prioritizes interrupts in Cortex-M processors?4 lựa chọnDễ100% trả lời đúng
AMemory controller
BDMA controller
CGPIO controller
DNVIC (Nested Vectored Interrupt Controller)
Lời giải
Trong các lựa chọn, NVIC (Nested Vectored Interrupt Controller) là thành phần chịu trách nhiệm quản lý và ưu tiên các tín hiệu ngắt trong các bộ xử lý Cortex-M. Nó cho phép các tín hiệu ngắt được ưu tiên và xử lý một cách hiệu quả, giúp tăng tốc độ phản ứng của hệ thống. NVIC cũng cung cấp khả năng quản lý các tín hiệu ngắt phức tạp, bao gồm cả việc ưu tiên và phân loại các tín hiệu ngắt khác nhau. Điều này giúp giảm thiểu thời gian phản ứng và tăng cường độ tin cậy của hệ thống.
Mở trang câu hỏi này →
46Which function sets the PWM period specified in milliseconds (int)?5 lựa chọnDễ100% trả lời đúng
Apulsewidth_ms (int ms)
Bperiod_ms (int ms)
Cperiod_us (int us)
Dwrite (float value)
Eperiod (float seconds)
Lời giải
Hàm nào được sử dụng để đặt chu kỳ PWM được chỉ định bằng mili giây (int)? PWM (Pulse Width Modulation) là một kỹ thuật điều khiển tín hiệu điện áp, thường được sử dụng trong các ứng dụng như điều khiển tốc độ động cơ, điều khiển nhiệt độ, v.v. Trong các hàm được liệt kê, hàm nào có thể được sử dụng để đặt chu kỳ PWM được chỉ định bằng mili giây (int)? Hàm period_ms (int ms) là một hàm được sử dụng để đặt chu kỳ PWM được chỉ định bằng mili giây (int). Hàm này cho phép bạn đặt chu kỳ PWM theo mili giây, giúp bạn có thể điều khiển tín hiệu điện áp một cách chính xác. Ví dụ, nếu bạn muốn đặt chu kỳ PWM là 1000 mili giây, bạn có thể sử dụng hàm period_ms (int ms) như sau: period_ms(1000) Tóm lại, hàm period_ms (int ms) là một hàm được sử dụng để đặt chu kỳ PWM được chỉ định bằng mili giây (int).
Mở trang câu hỏi này →
AFetch, Decode, Execute
BLoad, Store, Compute
CWrite-back, Memory, Execution
DAddress, Data Path, Control Logic
EFetch, Speculate, Stall
Lời giải
Cortex-M4 là một loại vi xử lý được sử dụng rộng rãi trong các ứng dụng điện tử. Để hiểu rõ về quá trình hoạt động của nó, chúng ta cần biết về các giai đoạn chính trong pipeline của vi xử lý này. Có năm lựa chọn cho câu hỏi này, nhưng chỉ có một lựa chọn đúng. Lựa chọn đúng là "Fetch, Decode, Execute". Fetch là giai đoạn đọc lệnh từ bộ nhớ, Decode là giai đoạn phân tích lệnh và xác định các bước cần thực hiện, Execute là giai đoạn thực hiện các bước đã được xác định. Đây là ba giai đoạn chính trong pipeline của Cortex-M4.
Mở trang câu hỏi này →
48What is one of the main advantages of the Cortex-M series processors?5 lựa chọnTrung bình63% trả lời đúng
AHigh GPU performance
BEnergy efficiency and low power consumption
CWhat is one of the main advantages of the Cortex-M series processors?
DLarge external memory
EBuilt-in operating system
Lời giải
Cortex-M series là một loại bộ xử lý được thiết kế cho các ứng dụng yêu cầu năng lượng thấp và tiết kiệm. Một trong những lợi ích chính của bộ xử lý này là hiệu suất năng lượng thấp và tiêu thụ điện năng thấp. Điều này làm cho nó trở thành lựa chọn lý tưởng cho các thiết bị di động, các thiết bị cảm biến và các ứng dụng IoT khác. Bộ xử lý Cortex-M cung cấp hiệu suất cao và khả năng tiết kiệm năng lượng, đồng thời cũng cung cấp các tính năng bảo mật và độ tin cậy cao. Điều này làm cho nó trở thành một lựa chọn phổ biến trong các ứng dụng yêu cầu năng lượng thấp và hiệu suất cao.
Mở trang câu hỏi này →
49What is the main characteristic of an embedded operating system?4 lựa chọnDễ100% trả lời đúng
ASupports unlimited hardware resources
BRuns only on desktop computers
CDesigned for systems with limited memory and processing power
DRequires large storage capacity
Lời giải
Một hệ điều hành được tích hợp (embedded operating system) là một hệ điều hành được thiết kế để chạy trên các thiết bị điện tử nhỏ gọn, như máy tính bảng, điện thoại thông minh, máy tính xách tay, máy tính để bàn, và các thiết bị khác. Đặc điểm chính của hệ điều hành được tích hợp là chúng được thiết kế để hoạt động trên các hệ thống có khả năng xử lý và bộ nhớ hạn chế. Điều này có nghĩa là chúng không yêu cầu nhiều tài nguyên hệ thống như các hệ điều hành khác. Hệ điều hành được tích hợp thường được sử dụng trong các ứng dụng đặc biệt, như hệ thống điều khiển tự động, thiết bị y tế, và các thiết bị khác.
Mở trang câu hỏi này →
50How many signal lines are required for an I²C bus?4 lựa chọnDễ100% trả lời đúng
AOne
BTwo
CThree
DFour
Lời giải
Mạng I²C là một giao thức truyền thông hai dây được sử dụng rộng rãi trong các ứng dụng điện tử. Để xác định số lượng dây tín hiệu cần thiết cho giao thức I²C, chúng ta cần xem xét cấu trúc cơ bản của giao thức này. Mạng I²C sử dụng hai dây tín hiệu chính là SDA (Dây tín hiệu dữ liệu) và SCL (Dây tín hiệu điều khiển). Dây SDA được sử dụng để truyền dữ liệu giữa các thiết bị, trong khi dây SCL được sử dụng để đồng bộ hóa dữ liệu trên dây SDA. Ngoài ra, giao thức I²C cũng sử dụng một dây nguồn và một dây đất để cung cấp năng lượng và bảo vệ chống sét. Vì vậy, tổng số dây tín hiệu cần thiết cho giao thức I²C là hai dây SDA và SCL.
Mở trang câu hỏi này →
51What range does the read() function of Analogin typically return?4 lựa chọnDễ100% trả lời đúng
A[-1, 1]
B[0, 255]
C[0.0, 1.0]
D[0, 1023]
Lời giải
Hàm read() của Analogin thường trả về giá trị trong khoảng từ 0,0 đến 1,0. Điều này có nghĩa là giá trị đọc được từ Analogin sẽ được ánh xạ vào khoảng từ 0 đến 1, giúp dễ dàng sử dụng trong các ứng dụng và mô hình hóa.
Mở trang câu hỏi này →
ACortex-A
BCortex-R
CCortex-M
DSecurCore
Lời giải
Bộ xử lý Arm Cortex-A được thiết kế chủ yếu cho các ứng dụng có hiệu suất cao chạy toàn bộ hệ điều hành. Họ cung cấp khả năng xử lý đa luồng và hỗ trợ các tính năng như 64-bit, virtualization và các tính năng bảo mật tiên tiến. Các ứng dụng thường sử dụng các bộ xử lý này bao gồm máy tính bảng, điện thoại thông minh, máy tính xách tay và các thiết bị đám mây. Họ cũng được sử dụng trong các ứng dụng đòi hỏi hiệu suất cao như chơi game, video chỉnh sửa và các ứng dụng chuyên nghiệp khác.
Mở trang câu hỏi này →
ABatch OS
BMulti-user OS
CEmbedded OS
DSingle-user OS
Lời giải
Hệ điều hành loại nào cho phép nhiều người dùng truy cập hệ thống đồng thời? Hệ điều hành cho phép nhiều người dùng truy cập hệ thống đồng thời được gọi là hệ điều hành đa người dùng (Multi-user OS). Hệ điều hành này cho phép nhiều người dùng có thể truy cập và sử dụng hệ thống cùng một lúc, mỗi người dùng có tài khoản riêng biệt và có thể thực hiện các tác vụ khác nhau trên hệ thống. Ví dụ, một người dùng có thể đang chạy một chương trình, trong khi người dùng khác có thể đang chạy chương trình khác trên cùng một hệ thống. Hệ điều hành đa người dùng thường được sử dụng trong các môi trường mạng, nơi mà nhiều người dùng cần truy cập và sử dụng hệ thống cùng một lúc.
Mở trang câu hỏi này →
54Which Mbed API class is used to control a digital output pin?4 lựa chọnDễ83% trả lời đúng
ABusIn
BDigitalOut
CAnalogOut
DDigitalIn
Lời giải
Để kiểm soát một cổng đầu ra số (digital output pin), bạn cần sử dụng lớp Mbed API phù hợp. Trong các lựa chọn đã cho, lớp DigitalOut là lớp được sử dụng để kiểm soát các cổng đầu ra số. Lớp này cho phép bạn thiết lập giá trị logic cao (HIGH) hoặc thấp (LOW) cho các cổng đầu ra số, điều này rất hữu ích trong việc điều khiển các thiết bị điện tử như đèn LED, động cơ, v.v. Ngoài ra, lớp DigitalOut cũng cung cấp các phương thức để đọc và viết giá trị cho các cổng đầu ra số, giúp bạn có thể dễ dàng kiểm soát và điều khiển các thiết bị điện tử.
Mở trang câu hỏi này →
ADMA controller
BGPIO controller
CNVIC (Nested Vectored Interrupt Controller)
DCache controller
Lời giải
Trong bộ xử lý Cortex-M4, bộ điều khiển nào quản lý các sự kiện ngắt và ưu tiên của chúng? Bộ điều khiển NVIC (Nested Vectored Interrupt Controller) là một phần quan trọng của bộ xử lý Cortex-M4. Nó chịu trách nhiệm quản lý các sự kiện ngắt và ưu tiên của chúng. Bộ điều khiển NVIC cho phép các sự kiện ngắt được ưu tiên và xử lý theo thứ tự ưu tiên. Điều này giúp đảm bảo rằng các sự kiện ngắt quan trọng được xử lý trước. Ngoài ra, bộ điều khiển NVIC cũng cung cấp khả năng quản lý các sự kiện ngắt từ các nguồn khác nhau, bao gồm cả các thiết bị ngoại vi.
Mở trang câu hỏi này →
56What is the function of the Program Counter (PC) register?4 lựa chọnDễ100% trả lời đúng
AStores the address of the current instruction
BStores stack frame data
CStores interrupt priority levels
DStores temporary arithmetic data
Lời giải
Bộ đếm chương trình (Program Counter, PC) là một trong những bộ đệm quan trọng trong hệ thống máy tính. Nó có chức năng lưu trữ địa chỉ của lệnh hiện tại đang được thực thi. Khi máy tính thực hiện một lệnh, bộ đếm chương trình sẽ tăng lên địa chỉ của lệnh tiếp theo trong bộ nhớ. Điều này cho phép máy tính thực hiện các lệnh theo thứ tự và đảm bảo rằng các lệnh được thực thi một cách chính xác. Bộ đếm chương trình đóng vai trò quan trọng trong việc quản lý luồng thực thi của máy tính và giúp máy tính thực hiện các lệnh một cách hiệu quả.
Mở trang câu hỏi này →
AVS Code
BMbed CLI
CKeil uVision
DEclipse
EMbed Studio
Lời giải
Mbed Studio là một môi trường phát triển tích hợp (IDE) được thiết kế riêng cho ứng dụng Mbed OS 5. Nó có khả năng tự động phát hiện các bảng Mbed được hỗ trợ. Mbed Studio cung cấp một giao diện người dùng thân thiện và dễ sử dụng, giúp các nhà phát triển dễ dàng tạo, chạy và quản lý các ứng dụng Mbed. Ngoài ra, nó cũng hỗ trợ các tính năng như biên dịch, tải lên và chạy ứng dụng trên các bảng Mbed. Mbed Studio là lựa chọn hàng đầu cho các nhà phát triển muốn tạo và chạy các ứng dụng Mbed OS 5 một cách hiệu quả.
Mở trang câu hỏi này →
58How many wires typically comprise the SPI serial bus?5 lựa chọnDễ100% trả lời đúng
ATwo-wire
BFour-wire
CThree-wire
DFive-wire
EEight-wire
Lời giải
Mạng SPI (Serial Peripheral Interface) là một giao thức truyền thông được sử dụng rộng rãi trong các thiết bị điện tử. Để hiểu câu hỏi này, chúng ta cần biết cấu trúc cơ bản của mạng SPI. Theo tiêu chuẩn SPI, mạng này thường bao gồm bốn dây tín hiệu chính: SCK (đồng hồ), MOSI (đầu ra dữ liệu), MISO (đầu vào dữ liệu) và SS (nạp dữ liệu). Dây SCK được sử dụng để tạo ra tín hiệu đồng hồ, dây MOSI được sử dụng để truyền dữ liệu từ thiết bị chủ sang thiết bị khách, dây MISO được sử dụng để truyền dữ liệu từ thiết bị khách trở về thiết bị chủ và dây SS được sử dụng để điều khiển việc truyền dữ liệu. Vì vậy, câu trả lời đúng cho câu hỏi này là mạng SPI thường bao gồm bốn dây tín hiệu.
Mở trang câu hỏi này →
59What does ISR stand for in embedded systems?4 lựa chọnDễ76% trả lời đúng
AInstruction Storage Register
BInterrupt Service Routine
CInternal System Register
DIntegrated Software Resource
Lời giải
ISR trong hệ thống tích hợp (embedded systems) là viết tắt của Interrupt Service Routine. Nó là một phần mềm được thực hiện khi hệ thống nhận được một tín hiệu ngắt (interrupt). Mục đích của ISR là xử lý tín hiệu ngắt và khôi phục trạng thái hệ thống trở lại bình thường. ISR thường được sử dụng trong các hệ thống có yêu cầu thời gian thực (real-time systems), nơi mà hệ thống cần xử lý các tín hiệu ngắt một cách nhanh chóng và chính xác. Ví dụ, trong một hệ thống điều khiển tự động, ISR có thể được sử dụng để xử lý tín hiệu từ cảm biến và điều chỉnh hành động của hệ thống.
Mở trang câu hỏi này →
60What are the two signal lines required for I2C communication?5 lựa chọnDễ75% trả lời đúng
ATX and RX
BSCLK and CS
CCOTI and CITO
DMISO and MOSI
ESCL (Serial Clock) and SDA (Serial Data)
Lời giải
Để thực hiện giao tiếp I2C, cần có hai đường tín hiệu quan trọng. Đường tín hiệu đầu tiên là SCL (Serial Clock), nó đóng vai trò là đồng hồ giao tiếp, điều khiển tốc độ truyền dữ liệu giữa các thiết bị. Đường tín hiệu thứ hai là SDA (Serial Data), nó chịu trách nhiệm truyền dữ liệu giữa các thiết bị. Cả hai đường tín hiệu này đều đóng vai trò quan trọng trong việc đảm bảo giao tiếp I2C hoạt động đúng cách. Khi một thiết bị muốn gửi dữ liệu, nó sẽ gửi dữ liệu qua đường SDA và đồng thời gửi tín hiệu đồng hồ qua đường SCL. Nhờ có hai đường tín hiệu này, giao tiếp I2C có thể truyền dữ liệu một cách chính xác và hiệu quả.
Mở trang câu hỏi này →
ASimplex
BMaster/slave
CPolling
DFull-duplex
EHalf-duplex
Lời giải
Trong giao tiếp SPI, dữ liệu có thể được truyền trong cả hai chiều hoặc cả hai chiều cùng lúc. Đặc tính này được gọi là giao tiếp đầy đủ (full-duplex). Điều này có nghĩa là cả thiết bị truyền và thiết bị nhận đều có thể gửi và nhận dữ liệu cùng một lúc. Điều này cho phép giao tiếp SPI hoạt động nhanh chóng và hiệu quả hơn. Ví dụ, trong một ứng dụng, một thiết bị có thể gửi dữ liệu đến một thiết bị khác trong khi đồng thời nhận dữ liệu từ thiết bị đó. Đặc tính này rất quan trọng trong các ứng dụng cần giao tiếp nhanh chóng và đồng bộ.
Mở trang câu hỏi này →
ALibrary file
BSource file
CObject file
DProgram image
Lời giải
Trong hệ thống tích hợp, một chương trình thực thi đầy đủ được gọi là chương trình hình ảnh. Chương trình hình ảnh là một tập tin thực thi độc lập, bao gồm cả mã nguồn và dữ liệu cần thiết để chạy chương trình. Nó được tạo ra sau khi quá trình biên dịch và liên kết hoàn tất. Chương trình hình ảnh có thể được lưu trữ trong bộ nhớ RAM hoặc trên bộ nhớ ngoài, và nó được thực thi trực tiếp bởi CPU mà không cần phải biên dịch hoặc liên kết thêm.
Mở trang câu hỏi này →
AAlternating signal
BHigh voltage level
CGround or 0V
DPositive voltage supply
Lời giải
Logic '0' trong hệ thống số kỹ thuật là một trạng thái điện tử đặc trưng cho mức điện áp thấp. Trong hầu hết các hệ thống số, logic '0' được định nghĩa là mức điện áp gần như bằng 0V, thường được gọi là mức đất (ground). Điều này có nghĩa là khi một tín hiệu logic ở mức '0', nó sẽ được coi là một tín hiệu thấp, thường được biểu diễn bằng điện áp gần như bằng 0V. Logic '0' được sử dụng để biểu diễn các giá trị 'sai' hoặc 'không đúng' trong các hệ thống số.
Mở trang câu hỏi này →
64Which Mbed class is used to measure time intervals?4 lựa chọnDễ94% trả lời đúng
ATicker
BAnalogIn
CPwmOut
DTimer
Lời giải
Để đo thời gian chênh lệch giữa hai thời điểm khác nhau, chúng ta sử dụng lớp Mbed Timer. Lớp Timer cho phép chúng ta tạo ra các sự kiện thời gian và đo thời gian chênh lệch giữa các sự kiện đó. Điều này rất hữu ích trong các ứng dụng yêu cầu đo thời gian chính xác như đo thời gian chênh lệch giữa hai sự kiện, đo thời gian thực hiện một hành động, v.v. Ngoài ra, lớp Timer cũng cho phép chúng ta đặt thời gian thực hiện một hành động sau một khoảng thời gian nhất định. Tóm lại, lớp Timer là một lớp quan trọng trong Mbed và được sử dụng rộng rãi trong các ứng dụng yêu cầu đo thời gian.
Mở trang câu hỏi này →