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.

19.280/20.347 câuCòn 1.067
Aread_s()
Bread_us()
Cread_ms()
Dread()
Ereset()
Lời giải
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.
Mở trang câu hỏi này →
ATo reduce program size
BTo reduce clock frequency
CTo match register sizes and simplify management
DTo increase analog accuracy
Lời giải
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.
Mở trang câu hỏi này →
ACOTI and CITO only
BSCL and SDA
CMOSI and MISO
DTX and RX
Lời giải
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.
Mở trang câu hỏi này →
Aread()
Bwrite()
Cfrequency()
Dstop()
Estart()
Lời giải
Để 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.
Mở trang câu hỏi này →
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
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.
Mở trang câu hỏi này →
AArm Cortex-A
BRISC-V
CArm Cortex-R
DArm Cortex-M
EIntel Xeon
Lời giải
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.
Mở trang câu hỏi này →
A4-bit
B6-bit
C8-bit
D12-bit
E5-bit
Lời giải
Để 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).
Mở trang câu hỏi này →
Aattach()
Bperiod()
Cread()
Dwrite()
EISR()
Lời giải
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?
Mở trang câu hỏi này →
AA timer event
BAn infinite loop
CA function call
DA prototype declaration
EA conditional statement
Lời giải
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.
Mở trang câu hỏi này →
APortIn
BBusIn
CDigitalInOut
DBusOut
EDigitalOut
Lời giải
Để 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.
Mở trang câu hỏi này →
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
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.
Mở trang câu hỏi này →
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
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.
Mở trang câu hỏi này →
AStack memory
BHeap memory
CPeripheral registers
DProgram memory (normally on-chip flash memory)
EExternal RAM (SRAM)
Lời giải
Ở 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.
Mở trang câu hỏi này →
A3.3
B1.0
C2.0
D3.0
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 đó. 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).
Mở trang câu hỏi này →
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
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ý.
Mở trang câu hỏi này →
ANUCLEO-F411RE
BESP32
CArduino Uno
DRaspberry Pi Pico
EAdafruit Feather
Lời giải
Hệ thống phát triển NUCLEO-F411RE được sử dụng và giải thích về bố cục chân cắm trong Hình 1 dưới đây. Đây là một loại hệ thống phát triển dựa trên vi điều khiển STM32F411RE, được thiết kế để hỗ trợ việc học tập và phát triển ứng dụng. Hệ thống này cung cấp một số tính năng như khả năng tương tác với các thiết bị ngoại vi, khả năng lập trình và khả năng kiểm tra. Bố cục chân cắm của NUCLEO-F411RE được minh họa trong Hình 1, cho phép người dùng dễ dàng hiểu và sử dụng các chân cắm của hệ thống.
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 của một luồng trong hệ thống đa luồng (multi-threading) có thể được mô tả bằng các trạng thái khác nhau. Tuy nhiên, nếu một luồng đã bị hủy hoặc chưa được tạo, thì nó không thể được coi là đang chạy (Running), đang chờ đợi (Waiting) hoặc sẵn sàng (Ready) để thực hiện các tác vụ. Thay vào đó, trạng thái của nó được gọi là trạng thái không hoạt động (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ỳ tác vụ nào.
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ì một điểm tham chiếu mong muốn cho hệ thống. Điều này có nghĩa là hệ thống sẽ liên tục theo dõi và điều chỉnh đầu ra để đảm bảo rằng nó luôn ở trong phạm vi cho phép. Điều này rất quan trọng trong các ứng dụng như điều khiển nhiệt độ, áp suất, lưu lượng, v.v. Mục đích chính là duy trì hệ thống hoạt động một cách ổn định và hiệu quả.
Mở trang câu hỏi này →
AA system exclusively implemented using Microprocessors (CPUs) without integrated memory
BA computer 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, có nhiệm vụ 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ế để thực hiện một chức năng cụ thể, tương tác với môi trường xung quanh. Ví dụ, hệ thống điều khiển nhiệt độ trong nhà, hệ thống âm thanh trong ô tô, hoặc hệ thống điều khiển robot đều là các hệ thống tích hợp. Chúng thường được thiết kế để hoạt động độc lập, không cần người dùng trực tiếp tương tác với chúng.
Mở trang câu hỏi này →
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ụ hỗ trợ phát triển phần cứng. Nó cung cấp các tài nguyên thiết kế phần cứng như bản vẽ mạch điện (schematics) và tệp tin thiết kế bảng mạch (board files). Điều này cho phép các nhà phát triển tạo ra các thiết bị và hệ thống phần cứng dựa trên các yêu cầu và yêu tố cụ thể của dự án. HDK cũng hỗ trợ việc mô hình hóa và thử nghiệm các thiết bị và hệ thống phần cứng trước khi sản xuất. Điều này giúp giảm thiểu thời gian và chi phí phát triển, cũng như đảm bảo chất lượng của sản phẩm cuối cùng.
Mở trang câu hỏi này →