Tất cả câu hỏi

Ngân hàng câu hỏi trắc nghiệm có giải thích chi tiết.

11.600/11.946 câuCòn 346
11581Why are embedded system programs often developed at a relatively low level?4 lựa chọnDễ83% trả lời đúng
ABecause high-level languages are not supported by microcontrollers
BBecause low-level programming allows better control and efficiency
CBecause assembly language is easier to learn
DBecause embedded systems always run full operating systems
Lời giải
Embedded system programs thường được phát triển ở mức thấp vì các ngôn ngữ lập trình cao cấp không được hỗ trợ bởi các microcontrollers. Tuy nhiên, lý do chính yếu là do lập trình ở mức thấp cho phép có khả năng kiểm soát và hiệu suất tốt hơn. Điều này là do các hệ thống embedded thường yêu cầu hiệu suất cao và thời gian phản hồi nhanh, và lập trình ở mức thấp cho phép các lập trình viên có thể tối ưu hóa mã của mình để đạt được hiệu suất tối đa. Ngoài ra, lập trình ở mức thấp cũng cho phép các lập trình viên có thể kiểm soát trực tiếp các thiết bị ngoại vi và các tài nguyên hệ thống, điều này là rất quan trọng trong các hệ thống embedded.
Mở trang câu hỏi này →
11582What is the main characteristic of serial communication?4 lựa chọnDễ88% trả lời đúng
AData is transmitted using multiple buses
BData is transmitted one bit at a time sequentially
CData is transmitted without timing control
DMultiple bits are transmitted simultaneously
Lời giải
Tính chất chính của giao tiếp tuần tự (Serial communication) là dữ liệu được truyền một bit một lần theo thứ tự tuần tự. Điều này có nghĩa là dữ liệu được truyền theo một dòng duy nhất, một bit một lần, và mỗi bit được truyền trước khi chuyển sang bit tiếp theo. Điều này giúp giảm thiểu sự phức tạp của hệ thống giao tiếp và giảm thiểu khả năng xảy ra lỗi. Giao tiếp tuần tự thường được sử dụng trong các ứng dụng yêu cầu tốc độ truyền dữ liệu thấp đến trung bình, chẳng hạn như giao tiếp giữa máy tính và thiết bị ngoại vi như bàn phím, chuột, v.v. Tuy nhiên, giao tiếp tuần tự cũng có thể bị giới hạn bởi tốc độ truyền dữ liệu và độ tin cậy của hệ thống.
Mở trang câu hỏi này →
AUnsigned short in the range [0x0, 0xFFFF]
BBoolean (0 or 1)
CFloat in the range [0.0, 1.0]
DInteger in the range
EFloat representing the reference voltage
Lời giải
Hàm read() trong Mbed được sử dụng để đọc giá trị từ đầu vào analog. Giá trị trả về của hàm này được biểu diễn dưới dạng số thực trong khoảng từ 0.0 đến 1.0. Điều này có nghĩa là giá trị đọc được từ đầu vào analog sẽ được chuyển đổi thành một giá trị số thực trong khoảng này, cho phép bạn dễ dàng sử dụng và xử lý trong chương trình của mình. Ví dụ, nếu đầu vào analog được kết nối với một cảm biến ánh sáng, giá trị đọc được từ cảm biến sẽ được chuyển đổi thành một giá trị số thực trong khoảng từ 0.0 đến 1.0, cho phép bạn dễ dàng đo lường và xử lý cường độ ánh sáng.
Mở trang câu hỏi này →
11584Mbed RTOS API provides easy-to-use API for programming which type of devices?5 lựa chọnDễ100% trả lời đúng
ALegacy DOS systems
BSystems without resource constraints
CGeneral Windows PCs
DHigh-throughput servers
EMbed-enabled devices
Lời giải
Mbed RTOS API cung cấp một bộ API dễ sử dụng cho việc lập trình các loại thiết bị nào? Mbed RTOS API là một phần của hệ điều hành Mbed, được thiết kế để hỗ trợ lập trình các thiết bị có khả năng nguồn lực hạn chế. Các thiết bị này thường được sử dụng trong các ứng dụng IoT (Internet of Things) và cần có khả năng quản lý nguồn lực một cách hiệu quả. Mbed RTOS API cung cấp các tính năng như quản lý nguồn lực, giao tiếp mạng và các tính năng khác để hỗ trợ lập trình các thiết bị này một cách dễ dàng. Vì vậy, câu trả lời đúng cho câu hỏi này là Mbed-enabled devices.
Mở trang câu hỏi này →
11585What programming language is typically used for developing embedded systems?5 lựa chọnDễ100% trả lời đúng
AAssembly language
BC/C++
CLadder logic
DRust
EPython
Lời giải
Ngôn ngữ lập trình thường được sử dụng để phát triển hệ thống tích hợp (embedded systems) là C/C++. C/C++ là ngôn ngữ lập trình phổ biến và mạnh mẽ, được sử dụng rộng rãi trong việc phát triển phần cứng và phần mềm cho các hệ thống tích hợp. Ngôn ngữ này cung cấp khả năng kiểm soát chi tiết và hiệu suất cao, cho phép các nhà phát triển tạo ra các phần mềm tinh vi và hiệu quả cho các hệ thống tích hợp. Ngoài ra, C/C++ cũng được sử dụng rộng rãi trong việc phát triển các phần mềm hệ thống, bao gồm cả phần mềm hệ thống thời gian thực và phần mềm hệ thống an toàn.
Mở trang câu hỏi này →
11586What register controls the direction of input/output for a GPIO controller?5 lựa chọnDễ86% trả lời đúng
AToggle Output Register
BDirection Register
CSet Output Register
DInput Register
EData Output Register
Lời giải
Để kiểm soát hướng của đầu vào/đầu ra cho một controller GPIO, bạn cần biết về các loại đăng ký khác nhau. Trong đó, đăng ký nào có thể điều khiển hướng của đầu vào/đầu ra? Câu trả lời chính xác là "Direction Register". Đây là loại đăng ký có chức năng xác định hướng của các chân GPIO, giúp bạn biết được các chân nào được sử dụng để đọc dữ liệu (đầu vào) và các chân nào được sử dụng để viết dữ liệu (đầu ra). Việc sử dụng đúng đăng ký sẽ giúp bạn tránh được các lỗi và đảm bảo rằng hệ thống của bạn hoạt động một cách chính xác.
Mở trang câu hỏi này →
11587Which Mbed class is used to generate PWM signals?4 lựa chọnDễ75% trả lời đúng
ATimer
BTicker
CPwmOut
DDigitalOut
Lời giải
Để tạo ra các tín hiệu PWM (Pulse Width Modulation), bạn cần sử dụng lớp Mbed PwmOut. Lớp PwmOut cho phép bạn tạo ra các tín hiệu PWM có thể điều khiển được độ rộng của xung. Điều này rất hữu ích trong các ứng dụng như điều khiển tốc độ động cơ, điều khiển độ sáng của đèn LED, v.v. Bạn có thể tạo ra các đối tượng PwmOut bằng cách sử dụng hàm PwmOut() và chỉ định chân GPIO mà bạn muốn sử dụng. Sau đó, bạn có thể sử dụng các phương thức như write_duty() hoặc write() để điều khiển độ rộng của xung PWM.
Mở trang câu hỏi này →
11588What is the function of the vector table in Cortex-M processors?4 lựa chọnDễ88% trả lời đúng
AStore peripheral data
BStore stack memory values
CStore program variables
DStore interrupt handler addresses
Lời giải
Trong các bộ xử lý Cortex-M, bảng vectơ (vector table) đóng vai trò quan trọng trong việc quản lý các địa chỉ nhảy (interrupt handler) của các ngoại vi (peripheral). Bảng vectơ là một vùng nhớ đặc biệt trong bộ nhớ RAM, nơi lưu trữ các địa chỉ nhảy của các ngoại vi. Khi một ngoại vi xảy ra, CPU sẽ tự động nhảy đến địa chỉ lưu trữ trong bảng vectơ tương ứng với ngoại vi đó. Điều này cho phép hệ thống phản ứng nhanh chóng và hiệu quả với các sự kiện ngoại vi. Bảng vectơ cũng giúp hệ thống quản lý các ngoại vi một cách hiệu quả, 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 →
11589Which processor mode is entered when handling an interrupt?4 lựa chọnDễ100% trả lời đúng
AThread Mode
BDebug Mode
CUser Mode
DHandler Mode
Lời giải
Khi xử lý một sự kiện ngắt, máy tính sẽ chuyển sang một chế độ xử lý đặc biệt gọi là chế độ xử lý ngắt. Chế độ này cho phép máy tính ưu tiên xử lý sự kiện ngắt và đảm bảo rằng hệ thống vẫn hoạt động ổn định. Trong chế độ này, máy tính sẽ tạm thời chuyển sang một môi trường đặc biệt để xử lý sự kiện ngắt, sau đó sẽ quay trở lại chế độ ban đầu. Chế độ này được gọi là chế độ xử lý ngắt, hay còn được gọi là chế độ Handler Mode.
Mở trang câu hỏi này →
11590Where is the generated executable file (program image) typically stored?5 lựa chọnDễ100% trả lời đúng
AStack memory
BHeap memory
CPeripheral registers
DProgram memory (normally on-chip flash memory)
EExternal RAM (SRAM)
Lời giải
Trong lập trình máy tính, chương trình được lưu trữ ở đâu đó trong bộ nhớ máy tính. Tuy nhiên, chương trình thực thi được lưu trữ ở đâu là một câu hỏi khác. Chương trình thực thi được lưu trữ ở chương trình nhớ (program memory), thường là bộ nhớ flash tích hợp trên chip. Chương trình nhớ là một phần của bộ nhớ máy tính được sử dụng để lưu trữ chương trình máy tính. Nó thường được sử dụng để lưu trữ chương trình máy tính khi máy tính được bật lên. Chương trình nhớ thường được sử dụng để lưu trữ chương trình máy tính vì nó cho phép chương trình được lưu trữ một cách lâu dài và có thể được thực thi nhanh chóng khi máy tính được bật lên. Ngoài ra, chương trình nhớ cũng cho phép chương trình được bảo vệ khỏi bị xóa hoặc bị thay đổi bởi các chương trình khác.
Mở trang câu hỏi này →
AUniversal Asynchronous Receiver/Transmitter (UART)
BInter-integrated Circuit (I2C)
CAll three protocols are synchronous.
DSerial Peripheral Interface (SPI)
EBoth SPI and I2C
Lời giải
Serial communication là một phương thức truyền dữ liệu qua một đường dây duy nhất. Trong đó, UART (Universal Asynchronous Receiver/Transmitter) là một giao thức truyền dữ liệu không đồng bộ, nghĩa là nó không cần một dây đồng hồ riêng biệt. Điều này cho phép UART hoạt động độc lập mà không cần đồng bộ hóa với thiết bị nhận. I2C (Inter-integrated Circuit) và SPI (Serial Peripheral Interface) là các giao thức truyền dữ liệu đồng bộ, nghĩa là chúng cần một dây đồng hồ để đồng bộ hóa dữ liệu. Vì vậy, UART là giao thức truyền dữ liệu không đồng bộ.
Mở trang câu hỏi này →
11592What type of resources does the Mbed Hardware Development Kit (HDK) provide?4 lựa chọnDễ100% trả lời đúng
ANetwork simulation models
BSoftware libraries only
CHardware design resources such as schematics and board files
DOperating system kernels
Lời giải
Mbed Hardware Development Kit (HDK) là một bộ công cụ phát triển phần cứng của Mbed. Nó cung cấp các tài nguyên thiết kế phần cứng như bản vẽ và tệp bảng mạch. Điều này cho phép người dùng thiết kế và phát triển các thiết bị phần cứng dựa trên các mô hình và nguyên tắc được xác định trước. Bộ công cụ này bao gồm các tài nguyên như bản vẽ điện tử, tệp bảng mạch, và các tài liệu hướng dẫn khác. Nó giúp người dùng tạo ra các thiết bị phần cứng có thể tương tác với các thiết bị khác và các hệ thống phần mềm. Mbed HDK cung cấp một môi trường phát triển toàn diện cho các nhà phát triển phần cứng và phần mềm.
Mở trang câu hỏi này →
11593What does the duty cycle represent in PWM?4 lựa chọnDễ100% trả lời đúng
AThe voltage level of the signal
BThe ratio of ON time to total cycle time
CThe frequency of the signal
DThe number of pulses per second
Lời giải
Duty cycle trong PWM (Pulse Width Modulation) là đại diện cho tỷ lệ thời gian bật (ON time) so với tổng thời gian chu kỳ (total cycle time). Điều này có nghĩa là nó thể hiện tỷ lệ thời gian mà tín hiệu PWM ở mức cao (bật) trong một chu kỳ. Duty cycle thường được biểu diễn dưới dạng tỷ lệ phần trăm và có giá trị từ 0% đến 100%. Khi duty cycle là 0%, tín hiệu PWM luôn ở mức thấp (tắt). Khi duty cycle là 100%, tín hiệu PWM luôn ở mức cao (bật). Duty cycle có thể được điều chỉnh để thay đổi cường độ của tín hiệu PWM, từ đó điều khiển các thiết bị điện tử như động cơ, đèn LED, v.v. Điều này cho phép chúng ta điều khiển cường độ của tín hiệu PWM một cách chính xác và linh hoạt.
Mở trang câu hỏi này →
11594What is the typical definition of an embedded system?, according to the sources?5 lựa chọnDễ100% trả lời đúng
AA system exclusively implemented using Microprocessors (CPUs) without integrated memory
BA computing unit specialized for cloud computing and big data processing
CA large mechanical or electrical system used in industrial settings
DA general-purpose computing device supporting instruction fetching, decoding, and executing.
EAn application-specific computer system interacting with its environment
Lời giải
Một hệ thống được tích hợp vào một thiết bị hoặc hệ thống khác, thường được sử dụng để thực hiện một chức năng cụ thể. Theo các nguồn, định nghĩa thông thường của một hệ thống tích hợp (embedded system) là một hệ thống máy tính được thiết kế để tương tác với môi trường xung quanh của nó. Điều này có nghĩa là hệ thống này được tối ưu hóa để thực hiện một nhiệm vụ cụ thể, thường không có giao diện người dùng và không cần phải được sử dụng độc lập. Ví dụ, một hệ thống điều khiển tự động, một hệ thống giám sát an ninh hoặc một hệ thống điều khiển nhiệt độ đều là các ví dụ về hệ thống tích hợp.
Mở trang câu hỏi này →
ATo maintain a desired system set point
BTo increase memory capacity
CTo disable the controller
DTo store environmental data permanently
Lời giải
Trong hệ thống điều khiển vòng kín, mục đích chính của việc điều chỉnh đầu ra dựa trên dữ liệu cảm biến là duy trì điểm tham chiếu mong muốn của hệ thống. Điều này có nghĩa là hệ thống sẽ liên tục đo lường và so sánh giá trị thực tế với giá trị mong muốn, sau đó điều chỉnh đầu ra để đạt được sự cân bằng. Điều này giúp hệ thống duy trì ổn định và hiệu suất cao. Ví dụ, trong một hệ thống điều khiển nhiệt độ, cảm biến nhiệt đo lường nhiệt độ hiện tại và gửi tín hiệu đến bộ điều khiển, bộ điều khiển sau đó điều chỉnh hệ thống để đạt được nhiệt độ mong muốn.
Mở trang câu hỏi này →
ABlocked
BRunning
CWaiting
DReady
EInactive
Lời giải
Trong API Mbed, nếu một luồng (thread) đã bị hủy (terminated) hoặc chưa được tạo (chưa được tạo) thì trạng thái của nó là gì? Trạng thái này được gọi là "Inactive". Điều này có nghĩa là luồng đó không còn hoạt động và không thể thực hiện bất kỳ hành động nào. Khi một luồng bị hủy, nó sẽ không còn được thực hiện và sẽ không thể tiếp tục thực hiện các nhiệm vụ của mình. Nếu một luồng chưa được tạo, thì nó cũng sẽ không thể thực hiện bất kỳ hành động nào. Trong cả hai trường hợp, trạng thái của luồng đó sẽ là "Inactive".
Mở trang câu hỏi này →
11597Which development board is mainly used and explained for pin layout in the lab?5 lựa chọnDễ100% trả lời đúng
ANUCLEO-F411RE
BESP32
CArduino Uno
DRaspberry Pi Pico
EAdafruit Feather
Lời giải
Trong phòng thí nghiệm, chúng ta thường sử dụng bảng phát triển (development board) để học hỏi và thực hành các kỹ thuật lập trình. Một trong những bảng phát triển được sử dụng phổ biến và giải thích chi tiết về bố cục chân cắm (pin layout) là NUCLEO-F411RE. Bảng phát triển này được thiết kế bởi STMicroelectronics và hỗ trợ cho các chương trình học về lập trình microcontroller. Nó cung cấp một cấu trúc đơn giản và dễ sử dụng, giúp sinh viên và người mới bắt đầu có thể dễ dàng học hỏi và thực hành các kỹ thuật lập trình.
Mở trang câu hỏi này →
11598What distinguishes a Real-Time Operating System (RTOS) from a general-purpose OS?4 lựa chọnDễ100% trả lời đúng
AIt does not support multitasking
BIt always executes programs faster
CIt guarantees predictable response times to events
DIt only supports single-task execution
Lời giải
Một hệ điều hành thời gian thực (RTOS) khác với hệ điều hành đa mục đích thông thường ở điểm gì? Hệ điều hành thời gian thực được thiết kế để đáp ứng các yêu cầu đặc biệt về thời gian phản hồi và độ tin cậy. Nó đảm bảo thời gian phản hồi dự đoán được đối với các sự kiện, điều này rất quan trọng trong các ứng dụng đòi hỏi thời gian phản hồi nhanh chóng và ổn định, chẳng hạn như hệ thống điều khiển tự động, thiết bị y tế và các hệ thống thời gian thực khác. Điều này cho phép các ứng dụng thời gian thực hoạt động một cách đáng tin cậy và hiệu quả, ngay cả trong các tình huống phức tạp và không thể đoán trước.
Mở trang câu hỏi này →
11599What is the main benefit of CMSIS in embedded software development?4 lựa chọnDễ100% trả lời đúng
AIncreasing processor frequency
BReplacing hardware peripherals
CEliminating the need for compilers
DStandardizing software interfaces across Cortex-M processors
Lời giải
CMSIS (Cortex Microcontroller Software Interface Standard) là một công cụ quan trọng trong phát triển phần mềm cho các vi điều khiển. Nó cung cấp một bộ giao diện tiêu chuẩn để truy cập các tính năng của vi điều khiển Cortex-M. Ưu điểm chính của CMSIS là giúp thống nhất các giao diện phần mềm trên các vi điều khiển Cortex-M khác nhau. Điều này cho phép các nhà phát triển dễ dàng chuyển đổi giữa các vi điều khiển khác nhau mà không cần phải viết lại toàn bộ phần mềm. Ngoài ra, CMSIS cũng cung cấp các thư viện và công cụ để giúp giảm thiểu thời gian phát triển và tăng hiệu suất phần mềm. Nhờ đó, CMSIS đã trở thành một phần không thể thiếu trong công cụ phát triển phần mềm cho các vi điều khiển.
Mở trang câu hỏi này →
A3.3
B1
C2
D3
E0
Lời giải
Khi sử dụng DigitalIn Interface để đọc giá trị điện áp trên một chân vào, nó sẽ trả về một giá trị integer đại diện cho điện áp đó. Trong trường hợp điện áp trên chân vào là 3.3V, DigitalIn Interface sẽ trả về giá trị 1. Điều này là vì DigitalIn Interface thường sử dụng mức điện áp logic 5V hoặc 3.3V, và giá trị 1 thường đại diện cho mức điện áp cao (VCC) trong khi giá trị 0 đại diện cho mức điện áp thấp (GND). Vì vậy, khi điện áp trên chân vào là 3.3V, DigitalIn Interface sẽ trả về giá trị 1 để chỉ định rằng điện áp trên chân vào đang ở mức cao.
Mở trang câu hỏi này →