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.
12.080/13.152 câuCòn 1.072
12061Mbed RTOS API provides easy-to-use API for programming which type of devices?5 lựa chọnTrung bình69% trả lời đúng
ALegacy DOS systems
BSystems without resource constraints.
CGeneral Windows PCs
DHigh-throughput servers
EMbed-enabled devices
Lời giải
Mở trang câu hỏi này →Mbed RTOS API cung cấp một bộ API dễ sử dụng để lập trình các loại thiết bị nào? Mbed RTOS API là một hệ điều hành thời gian thực được thiết kế cho các thiết bị Internet vạn vật (IoT) và các thiết bị khác có yêu cầu về thời gian thực và hiệu suất cao. Nó cung cấp các tính năng như quản lý tài nguyên, giao tiếp mạng, và các tính năng khác để giúp lập trình viên dễ dàng lập trình và quản lý các thiết bị.
12062What is the main characteristic of serial communication?4 lựa chọnTrung bình64% 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 or concurrently
Lời giải
Mở trang câu hỏi này →Serial communication là một phương thức truyền dữ liệu trong đó dữ liệu được truyền một bit một lần theo thứ tự tuần tự. Điều này khác với phương thức truyền dữ liệu song song (parallel communication), trong đó nhiều bit được truyền cùng một lúc. Serial communication thường được sử dụng trong các ứng dụng cần truyền dữ liệu một cách ổn định và tin cậy, chẳng hạn như truyền dữ liệu qua đường dây điện thoại hoặc mạng internet. Trong serial communication, dữ liệu được truyền theo thứ tự bit-by-bit, với mỗi bit được truyền một lần và sau đó được nhận bởi thiết bị nhận. Điều này giúp đảm bảo rằng dữ liệu được truyền chính xác và không bị lỗi. Serial communication cũng có thể được sử dụng trong các ứng dụng cần truyền dữ liệu ở khoảng cách xa, chẳng hạn như truyền dữ liệu qua vệ tinh.
12063(20375.1) What is the data type and range of the value returned by the Mbed read() function for Analog Input?5 lựa chọnDễ71% trả lời đúng
AUnsigned short in the range [0x, 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
Mở trang câu hỏi này →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 là một số thực trong khoảng từ 0,0 đến 1,0. Điều này có nghĩa là giá trị đọc được sẽ được chuyển đổi thành một giá trị số thực trong khoảng này, giúp dễ dàng sử dụng và xử lý trong các ứng dụng. Ví dụ, nếu bạn đang đọc giá trị từ một cảm biến áp suất, giá trị đọc được sẽ được chuyển đổi thành một giá trị số thực trong khoảng từ 0,0 đến 1,0, giúp bạn dễ dàng tính toán và xử lý giá trị này.
12064Which of these statements is true about embedded system programs?4 lựa chọnDễ92% 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
Mở trang câu hỏi này →Embedded system chương trình thường được viết bằng ngôn ngữ lập trình thấp cấp như Assembly hoặc C vì chúng cho phép người lập trình có quyền kiểm soát và hiệu suất cao hơn. Điều này là do ngôn ngữ lập trình thấp cấp cho phép người lập trình truy cập trực tiếp vào các thành phần hardware của hệ thống, từ đó có thể tối ưu hóa hiệu suất và giảm thiểu thời gian phản hồi. Ngược lại, ngôn ngữ lập trình cao cấp như Java hoặc Python thường không được hỗ trợ bởi các vi điều khiển, và mặc dù chúng có thể dễ dàng sử dụng hơn, nhưng lại không cho phép người lập trình có quyền kiểm soát và hiệu suất cao như ngôn ngữ lập trình thấp cấp.
12065For an 8-bit ADC converting an analog signal with a range of -0.5 V, how many distinct input values are possible?5 lựa chọnDễ83% trả lời đúng
A128
B1024
C256
D8
E512
Lời giải
Mở trang câu hỏi này →Để trả lời câu hỏi này, chúng ta cần hiểu về cách hoạt động của một ADC (Đổi Chuyển Analog sang Digital). ADC có thể chuyển đổi tín hiệu analog thành tín hiệu số. Trong trường hợp này, chúng ta có một ADC 8-bit, có nghĩa là nó có thể biểu diễn 2^8 = 256 giá trị khác nhau. Tuy nhiên, tín hiệu analog có phạm vi là -0,5 V, vì vậy chúng ta cần tìm ra số giá trị khác nhau mà tín hiệu analog có thể biểu diễn. Để làm điều này, chúng ta cần biết về tỷ lệ chuyển đổi của ADC. Tỷ lệ chuyển đổi là tỷ lệ giữa giá trị tín hiệu analog tối đa và giá trị tín hiệu analog tối thiểu. Trong trường hợp này, giá trị tín hiệu analog tối đa là 0,5 V và giá trị tín hiệu analog tối thiểu là -0,5 V. Tỷ lệ chuyển đổi là (0,5 - (-0,5)) / (2^8 - 1) = 1 V / 255 = 0,003921568. Bây giờ, chúng ta có thể tính số giá trị khác nhau mà tín hiệu analog có thể biểu diễn. Số giá trị khác nhau là 256.
12066Which Mbed Timer function returns the time passed in milliseconds?5 lựa chọnDễ100% trả lời đúng
A
read_s()B
read_us()C
read_ms()D
read()E
reset()Lời giải
Mở trang câu hỏi này →Hàm Timer Mbed nào trả về thời gian đã trôi qua tính bằng mili giây?
Trong các hàm Timer Mbed, hàm read_ms() được sử dụng để đọc thời gian đã trôi qua tính bằng mili giây. Hàm này cho phép bạn biết được thời gian đã trôi qua kể từ khi chương trình bắt đầu chạy.
Ví dụ, nếu bạn muốn biết thời gian đã trôi qua sau khi chương trình chạy 5 giây, bạn có thể sử dụng hàm read_ms() để đọc thời gian và so sánh nó với thời gian ban đầu.
Hàm read_ms() là một trong những hàm quan trọng của Timer Mbed và được sử dụng rộng rãi trong các ứng dụng thời gian thực.
12067Why are GPIO pins grouped into ports in microcontrollers?4 lựa chọnDễ100% trả lời đúng
ATo reduce program size
BTo reduce clock frequency
CTo match register sizes and simplify management
DTo increase analog accuracy
Lời giải
Mở trang câu hỏi này →GPIO (Đầu vào/Đầu ra Tổng hợp) được nhóm thành các cổng trong vi điều khiển để đơn giản hóa việc quản lý và truy cập. Việc nhóm các GPIO thành các cổng cho phép các nhà thiết kế vi điều khiển tối ưu hóa việc sử dụng tài nguyên và tăng hiệu suất. Điều này cũng giúp giảm thiểu số lượng lệnh và tăng tốc độ thực thi chương trình. Ngoài ra, việc nhóm các GPIO thành các cổng cũng cho phép các nhà thiết kế vi điều khiển dễ dàng quản lý và cấu hình các GPIO khác nhau, từ đó tăng cường khả năng tùy chỉnh và mở rộng của vi điều khiển.
12068In UART communication, which wires are typically used for transmitting and receiving data?4 lựa chọnDễ86% trả lời đúng
ACOTI and CITO only
BSCL and SDA
CMOSI and MISO
DTX and RX
Lời giải
Mở trang câu hỏi này →UART (Universal Asynchronous Receiver-Transmitter) là một phương thức truyền thông phổ biến trong các hệ thống điện tử. Trong UART, dữ liệu được truyền qua hai dây riêng biệt. Dây TX (Transmission) thường được sử dụng để truyền dữ liệu từ nguồn phát ra ngoài, trong khi dây RX (Reception) được sử dụng để nhận dữ liệu từ nguồn nhận. Điều này cho phép hai thiết bị giao tiếp với nhau một cách độc lập và đồng bộ. Các lựa chọn khác như COTI và CITO, SCL và SDA, MOSI và MISO thường được sử dụng trong các phương thức truyền thông khác như I2C và SPI.
12069Which Mbed API function is used to create a start condition on the I2C bus?5 lựa chọnDễ93% trả lời đúng
A
read()B
write()C
frequency()D
stop()E
start()Lời giải
Mở trang câu hỏi này →Để tạo một điều kiện bắt đầu trên bus I2C, bạn cần sử dụng hàm Mbed API phù hợp. Trong các lựa chọn đã cho, hàm start() là hàm được sử dụng để tạo một điều kiện bắt đầu trên bus I2C. Điều này có nghĩa là hàm start() sẽ gửi một tín hiệu bắt đầu trên bus I2C, cho phép thiết bị nhận dữ liệu từ thiết bị gửi. Hàm start() là một phần quan trọng trong giao tiếp I2C và cần được sử dụng đúng cách để đảm bảo giao tiếp I2C hoạt động chính xác. Ngoài ra, bạn cũng cần lưu ý đến các hàm khác như read(), write(), frequency() và stop() để hiểu rõ hơn về giao tiếp I2C.
12070What does the write(float/float value) function in AnalogOut do?4 lựa chọnDễ100% trả lời đúng
ASets the analog output voltage as a percentage of the maximum value
BSets the sampling frequency
CReads the analog voltage
DConverts analog signals into binary
Lời giải
Mở trang câu hỏi này →Hàm write(float/float value) trong AnalogOut được sử dụng để đặt giá trị điện áp analog. Giá trị này được tính bằng phần trăm của giá trị tối đa. Điều này có nghĩa là giá trị điện áp analog có thể được đặt từ 0% đến 100% của giá trị tối đa. Hàm này cho phép người dùng kiểm soát điện áp analog một cách chính xác và linh hoạt. Ví dụ, nếu giá trị tối đa của điện áp analog là 10V, thì giá trị 0,5 sẽ tương đương với 5V. Hàm write(float/float value) là một phần quan trọng của AnalogOut và được sử dụng rộng rãi trong các ứng dụng điện tử và tự động hóa.
12071Which specific core architecture are the microcontroller supported by the Mixed platform based on?5 lựa chọnDễ75% trả lời đúng
AArm Cortex-A
BRISC-V
CArm Cortex-R
DArm Cortex-M
EIntel Xeon
Lời giải
Mở trang câu hỏi này →Câu hỏi này hỏi về kiến trúc bộ xử lý (core architecture) cụ thể mà các vi điều khiển (microcontroller) được hỗ trợ bởi nền tảng hỗn hợp (Mixed platform) dựa trên. Nền tảng hỗn hợp thường được sử dụng trong các ứng dụng có yêu cầu về hiệu suất và khả năng tiết kiệm năng lượng. Các lựa chọn bao gồm kiến trúc Arm Cortex-A, RISC-V, Arm Cortex-R, Arm Cortex-M và Intel Xeon. Tuy nhiên, kiến trúc được hỗ trợ bởi các vi điều khiển trong nền tảng hỗn hợp thường là kiến trúc Arm Cortex-M. Kiến trúc này được thiết kế để tiết kiệm năng lượng và có hiệu suất cao, phù hợp với các ứng dụng có yêu cầu về năng lượng và hiệu suất.
12072How many bits of segment data are required to represent different values on a 7-segment display5 lựa chọnDễ92% trả lời đúng
A4-bit
B6-bit
C8-bit
D12-bit
E5-bit
Lời giải
Mở trang câu hỏi này →Để trả lời câu hỏi này, chúng ta cần hiểu về cách hoạt động của màn hình hiển thị 7-segment. Màn hình này sử dụng các đoạn (segment) để tạo ra các số và ký tự khác nhau. Mỗi đoạn có thể được bật hoặc tắt để tạo ra các số và ký tự khác nhau. Để xác định số đoạn cần thiết để đại diện cho các giá trị khác nhau trên màn hình 7-segment, chúng ta cần xem xét số lượng số và ký tự có thể được tạo ra bằng cách sử dụng các đoạn. Mỗi số và ký tự có thể được tạo ra bằng cách sử dụng các đoạn khác nhau. Ví dụ, số 0 có thể được tạo ra bằng cách bật tất cả các đoạn, trong khi số 1 có thể được tạo ra bằng cách tắt tất cả các đoạn ngoại trừ đoạn trên cùng. Để đại diện cho tất cả các số và ký tự có thể được tạo ra, chúng ta cần ít nhất 7 đoạn (mỗi đoạn đại diện cho một số hoặc ký tự khác nhau). Tuy nhiên, để đại diện cho các giá trị khác nhau trên màn hình 7-segment, chúng ta cần ít nhất 7 * 2 = 14 đoạn (mỗi đoạn có thể được bật hoặc tắt). Nhưng trong thực tế, chúng ta chỉ cần 7 đoạn và một số bit để đại diện cho các trạng thái bật/tắt của các đoạn. Vì vậy, để đại diện cho các giá trị khác nhau trên màn hình 7-segment, chúng ta cần ít nhất 4 bit (mỗi bit đại diện cho một trạng thái bật/tắt của một đoạn). Tuy nhiên, để đảm bảo rằng màn hình có thể hiển thị tất cả các số và ký tự có thể được tạo ra, chúng ta cần ít nhất 7 * 2 = 14 bit. Nhưng trong thực tế, chúng ta chỉ cần 7 * 2 - 1 = 13 bit. Nhưng trong thực tế, chúng ta chỉ cần 7 * 2 - 1 = 13 bit. Nhưng trong thực tế, chúng ta chỉ cần 8 bit (mỗi bit đại diện cho một trạng thái bật/tắt của một đoạn).
12073In the while loop of the main function, which function of Analogin is used to read the potentiometer values?5 lựa chọnDễ100% trả lời đúng
A
attach()B
period()C
read()D
write()E
ISR()Lời giải
Mở trang câu hỏi này →Trong vòng lặp while của hàm chính, hàm nào của Analogin được sử dụng để đọc giá trị của potentiometer?
12074What does the C programming statement while(1) create?5 lựa chọnDễ93% trả lời đúng
AA timer event
BAn infinite loop
CA function call
DA prototype declaration
EA conditional statement
Lời giải
Mở trang câu hỏi này →Câu lệnh while(1) trong C là một vòng lặp vô hạn. Nó được sử dụng để thực hiện một hành động hoặc một chuỗi hành động lặp đi lặp lại mãi mãi cho đến khi chương trình bị dừng. Vòng lặp vô hạn này thường được sử dụng trong các trường hợp như tạo một trình giả lập thời gian, tạo một trình giả lập chu kỳ, hoặc tạo một trình giả lập sự kiện. Khi chương trình gặp câu lệnh while(1), nó sẽ tiếp tục thực hiện các hành động trong vòng lặp cho đến khi chương trình bị dừng. Điều này có nghĩa là chương trình sẽ không bao giờ kết thúc, trừ khi có một lệnh dừng chương trình được thực hiện.
12075What API allows you to combine a number of DigitalIn pins to read them at once?5 lựa chọnDễ77% trả lời đúng
A
PortInB
BusInC
DigitalInOutD
BusOutE
DigitalOutLời giải
Mở trang câu hỏi này →Để kết hợp một số cổng DigitalIn để đọc chúng cùng một lúc, bạn cần sử dụng API BusIn. BusIn cho phép bạn đọc nhiều cổng vào cùng một lúc, giúp tăng tốc độ và hiệu suất của chương trình. Điều này đặc biệt hữu ích khi bạn cần đọc nhiều giá trị từ các cảm biến hoặc thiết bị ngoại vi. Ngoài ra, BusIn cũng giúp giảm thiểu số lượng cổng vào cần thiết, giúp tối ưu hóa thiết kế mạch điện.
12076According to the Shannon-Nyquist sampling theorem, the sampling frequency must be at least4 lựa chọnDễ93% trả lời đúng
ATwice the highest frequency of the input signal
BHalf of the signal frequency
CEqual to the signal frequency
DTen times the signal amplitude
Lời giải
Mở trang câu hỏi này →Theo lý thuyết lấy mẫu Shannon-Nyquist, tần số lấy mẫu phải ít nhất là hai lần tần số cao nhất của tín hiệu đầu vào. Điều này có nghĩa là để tái tạo chính xác tín hiệu đầu vào, chúng ta cần lấy mẫu tín hiệu với tần số ít nhất gấp hai lần tần số cao nhất của tín hiệu. Nếu tần số lấy mẫu thấp hơn, tín hiệu lấy mẫu sẽ bị nhiễu xạ và không thể tái tạo chính xác. Ví dụ, nếu tín hiệu đầu vào có tần số cao nhất là 10 kHz, thì tần số lấy mẫu phải ít nhất là 20 kHz. Điều này đảm bảo rằng tín hiệu lấy mẫu sẽ không bị nhiễu xạ và có thể tái tạo chính xác.
12077Program Code and Constant data are usually stored in which type of memory?6 lựa chọnDễ85% trả lời đúng
ANon-volatile memories (e.g., FLASH)
BHeap data section
CHeap data section
DVolatile memories (e.g., SRAM)
EDynamic RAM (DRAM)
FStack data section
Lời giải
Mở trang câu hỏi này →Bộ nhớ không lưu trữ tạm thời (non-volatile memory) là nơi lưu trữ mã chương trình và dữ liệu hằng số. Các ví dụ về bộ nhớ này bao gồm FLASH. FLASH là một loại bộ nhớ có khả năng lưu trữ dữ liệu trong thời gian dài mà không cần nguồn điện. Điều này làm cho nó trở thành lựa chọn lý tưởng để lưu trữ mã chương trình và dữ liệu hằng số vì chúng không thay đổi thường xuyên. Trong khi bộ nhớ lưu trữ tạm thời (volatile memory) như SRAM và DRAM cần nguồn điện để lưu trữ dữ liệu, bộ nhớ không lưu trữ tạm thời có thể giữ dữ liệu ngay cả khi nguồn điện bị cắt. Vì vậy, chương trình code và dữ liệu hằng số thường được lưu trữ trong bộ nhớ không lưu trữ tạm thời như FLASH.
12078Where 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
Mở trang câu hỏi này →Ở câu hỏi này, chúng ta được hỏi nơi mà tập tin thực thi (program image) được tạo ra thường được lưu trữ. Để trả lời câu hỏi này, chúng ta cần hiểu về các loại bộ nhớ trong máy tính. Bộ nhớ stack (Bộ nhớ chồng) thường được sử dụng để lưu trữ thông tin về các hàm và các biến cục bộ. Bộ nhớ heap (Bộ nhớ đệm) thường được sử dụng để lưu trữ các biến động và các đối tượng. Bộ nhớ chương trình (Program memory) thường được sử dụng để lưu trữ mã chương trình và dữ liệu được sử dụng bởi chương trình. Bộ nhớ RAM (Bộ nhớ truy cập ngẫu nhiên) thường được sử dụng để lưu trữ dữ liệu tạm thời. Bộ nhớ flash (Bộ nhớ flash) thường được sử dụng để lưu trữ dữ liệu được sử dụng bởi chương trình. Trong trường hợp này, tập tin thực thi thường được lưu trữ trong bộ nhớ chương trình (Program memory), thường là bộ nhớ flash trên chip.
12079What integer value does the DigitalIn interface return when it detects 3.3 Volts on the input pin?5 lựa chọnDễ92% trả lời đúng
A3.3
B1.0
C2.0
D3.0
E0
Lời giải
Mở trang câu hỏi này →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 đó. Tuy nhiên, giá trị này không phải là điện áp thực tế mà là một giá trị logic. 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.0. Điều này là vì DigitalIn thường sử dụng mức logic 5V hoặc 3.3V, và giá trị 1.0 đại diện cho mức logic cao (tương đương 3.3V).
12080What is the main benefit of CMSIS in embedded software development?5 lựa chọnDễ100% trả lời đúng
AIncreasing processor frequency
BReplacing hardware peripherals
CReplacing hardware peripherals
DEliminating the need for compilers
EStandardizing software interfaces across Cortex-M processors
Lời giải
Mở trang câu hỏi này →CMSIS (Cortex Microcontroller Software Interface Standard) là một tiêu chuẩn phần mềm giúp thống nhất giao diện phần mềm trên các bộ xử lý Cortex-M. Nó cung cấp một bộ công cụ và thư viện phần mềm để giúp các nhà phát triển tạo ra phần mềm có thể tương tác với các bộ xử lý Cortex-M một cách dễ dàng. CMSIS giúp giảm thiểu thời gian phát triển và tăng cường khả năng tương thích giữa các phần mềm khác nhau trên các bộ xử lý khác nhau. Nó cũng giúp các nhà phát triển có thể tập trung vào việc phát triển phần mềm mà không cần phải lo lắng về việc tương tác với các bộ xử lý.