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.340/20.347 câuCòn 1.007
19321What is normally used to access external pins on a microcontroller?5 lựa chọnDễ
ASystem Timer (SysTick)
BAnalog-to-Digital Converter (ADC)
CGeneral-Purpose Input/Output (GPIO)
DDigital-to-Analog Converter (DAC)
EUniversal Asynchronous Receiver/Transmitter (UART)
Lời giải
Mở trang câu hỏi này →Để truy cập vào các chân ngoại vi trên một vi điều khiển, người ta thường sử dụng General-Purpose Input/Output (GPIO). GPIO là một loại cổng vào/ra có thể được sử dụng để kết nối với các thiết bị ngoại vi như đèn LED, nút bấm, cảm biến v.v. Nó cho phép người lập trình đọc giá trị từ các chân vào và viết giá trị vào các chân ra. Điều này cho phép người lập trình tương tác với thế giới bên ngoài và tạo ra các ứng dụng thực tế. Ngoài ra, GPIO cũng có thể được sử dụng để tạo ra các giao tiếp với các thiết bị khác như máy tính, điện thoại di động v.v. Tóm lại, GPIO là một công cụ quan trọng trong lập trình vi điều khiển và được sử dụng rộng rãi trong nhiều ứng dụng khác nhau.
19322What is the fundamental architectural basis of the Arm architecture family?5 lựa chọnDễ78% trả lời đúng
APipeline array processor architectures
BCISC-based processor architectures
CRISC-based processor architectures
DVLIW-based processor architectures
EStack-based processor architectures
Lời giải
Mở trang câu hỏi này →Câu hỏi này hỏi về cơ sở kiến trúc cơ bản của gia đình kiến trúc Arm. Để trả lời câu hỏi này, chúng ta cần hiểu về các loại kiến trúc máy tính khác nhau. RISC (Reduced Instruction Set Computing) là một loại kiến trúc máy tính đơn giản, nơi mỗi lệnh chỉ thực hiện một hành động đơn giản. Điều này giúp tăng tốc độ và giảm chi phí sản xuất. Arm là một trong những ví dụ nổi bật về kiến trúc RISC. Nó được thiết kế để cung cấp hiệu suất cao và tiết kiệm năng lượng, làm cho nó trở thành lựa chọn phổ biến cho các thiết bị di động và máy tính cá nhân.
19323In RTOS task management, which state indicates that a task is waiting for an event before it can continue execution?4 lựa chọnDễ100% trả lời đúng
AFinished
BReady
CRunning
DBlocked
Lời giải
Mở trang câu hỏi này →Trong quản lý nhiệm vụ của hệ điều hành thời gian thực (RTOS), trạng thái 'Blocked' cho biết một nhiệm vụ đang chờ đợi sự kiện trước khi nó có thể tiếp tục thực hiện. Khi một nhiệm vụ đang chạy và cần chờ đợi một sự kiện nhất định, chẳng hạn như nhận một tín hiệu từ thiết bị ngoại vi hoặc chờ đợi một dữ liệu được tạo ra, nó sẽ chuyển sang trạng thái 'Blocked'. Trong trạng thái này, nhiệm vụ sẽ không được thực hiện và sẽ chờ đợi sự kiện mong muốn. Khi sự kiện xảy ra, nhiệm vụ sẽ được kích hoạt trở lại và chuyển sang trạng thái 'Ready' để chờ đợi thời gian thực hiện.
19324What integer value does the DigitalIn Interface return when it detects Zero Volts on the input pin?5 lựa chọnDễ88% trả lời đúng
A1024
B3.3
C0
D1
E256
Lời giải
Mở trang câu hỏi này →Khi sử dụng DigitalIn Interface để đọc giá trị từ một chân vào, nó sẽ trả về một giá trị integer. Giá trị này phụ thuộc vào mức điện áp trên chân vào. Nếu mức điện áp trên chân vào là 0V, DigitalIn Interface sẽ trả về giá trị 0. Điều này là vì DigitalIn Interface thường sử dụng mức điện áp 3.3V hoặc 5V làm mức điện áp tham chiếu. Khi mức điện áp trên chân vào bằng 0V, nó sẽ được coi là mức điện áp thấp, và DigitalIn Interface sẽ trả về giá trị 0. Điều này giúp người lập trình viên dễ dàng xác định trạng thái của chân vào.
19325Which function is NOT a part of the core Mbed API functions used for framing or configuration of the I2C bus?5 lựa chọnDễ100% trả lời đúng
Avoid stop (void)
Bint putc(int ch, FILE *stream)
Cfrequency (int Hz)
DI2C (PinName sda, PinName scl)
Evoid start (void)
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ác hàm cơ bản của API Mbed được sử dụng để cấu hình hoặc tạo khung cho giao tiếp I2C. Các hàm này bao gồm việc khởi động, dừng, bắt đầu và cấu hình tần số giao tiếp. Tuy nhiên, hàm không phải là một phần của các hàm cơ bản này là hàm putc(int ch, FILE *stream). Hàm này được sử dụng để đưa ký tự vào một luồng dữ liệu, nhưng nó không liên quan trực tiếp đến việc cấu hình hoặc tạo khung cho giao tiếp I2C. Thay vào đó, nó thuộc về các hàm cơ bản của API Mbed được sử dụng để nhập/ xuất dữ liệu.
19326What is the primary characteristic of serial communication?5 lựa chọnDễ100% trả lời đúng
ATransmits multiple bits simultaneously
BAlways requires a dedicated clock signal
COnly used for short-haul communication
DTransmits data one bit at a time, sequentially
ERequires many wires and large connectors
Lời giải
Mở trang câu hỏi này →Tính chất chính của giao tiếp serial là truyền dữ liệu một bit một lần, theo thứ tự. Điều này có nghĩa là dữ liệu được truyền một bit một lần, theo thứ tự từ trái sang phải hoặc từ trên xuống dưới. Giao tiếp serial thường được sử dụng trong các ứng dụng truyền thông như truyền dữ liệu qua cáp mạng, truyền tín hiệu qua không khí v.v. Giao tiếp serial có ưu điểm là dễ dàng thực hiện và không yêu cầu nhiều nguồn lực, nhưng nó cũng có nhược điểm là tốc độ truyền dữ liệu chậm hơn so với giao tiếp parallel.
19327What is the primary function of the DigitalInput interface in the Mbed API?4 lựa chọnTrung bình
ATo set the pin to an analog level
BTo configure and control a digital output pin
CTo read the value of a digital input pin
DTo generate PWM signals
Lời giải
Mở trang câu hỏi này →ĐigitalInput là một giao diện trong Mbed API, được sử dụng để đọc giá trị của một cổng vào số. Giao diện này cho phép bạn đọc trạng thái của một cổng vào số, chẳng hạn như trạng thái cao (1) hoặc thấp (0). Điều này rất hữu ích khi bạn cần đọc giá trị của một cảm biến hoặc một nút bấm. Để sử dụng giao diện DigitalInput, bạn cần tạo một đối tượng DigitalIn và gọi phương thức read() để đọc giá trị của cổng vào số. Phương thức read() sẽ trả về giá trị của cổng vào số, có thể là 0 hoặc 1. Giao diện DigitalInput rất đơn giản và dễ sử dụng, nhưng nó rất hữu ích khi bạn cần đọc giá trị của một cổng vào số.
19328What is a key feature of the Cortex-M4 processor pipeline?4 lựa chọnDễ100% trả lời đúng
AEight-stage pipeline
BFive-stage pipeline
CThree-stage pipeline
DTwo-stage pipeline
Lời giải
Mở trang câu hỏi này →Cortex-M4 là một loại vi xử lý được thiết kế bởi ARM. Một trong những đặc điểm quan trọng của vi xử lý này là cấu trúc chuỗi xử lý (pipeline). Cấu trúc chuỗi xử lý là một chuỗi các bước xử lý được thực hiện liên tiếp nhau trong vi xử lý. Đối với Cortex-M4, cấu trúc chuỗi xử lý có 3 bước chính. Điều này cho phép vi xử lý thực hiện các lệnh một cách nhanh chóng và hiệu quả. Cấu trúc chuỗi xử lý 3 bước giúp giảm thiểu thời gian xử lý và tăng cường hiệu suất của vi xử lý. Điều này đặc biệt quan trọng trong các ứng dụng yêu cầu xử lý nhanh chóng và hiệu quả như trong các hệ thống tự động hóa, thiết bị điện tử và các ứng dụng khác.
19329What technique allows digital signals to simulate analog output by varying the time of ON and OFF time?4 lựa chọnDễ94% trả lời đúng
AFrequency division
BPulse Width Modulation (PWM)
CInterrupt scheduling
DAnalog modulation
Lời giải
Mở trang câu hỏi này →Kỹ thuật nào cho phép tín hiệu số mô phỏng đầu ra tương tự bằng cách thay đổi thời gian bật và tắt?
19330Which component of the Mbed platform includes the Libraries, RTOS core, HAL and API?5 lựa chọnDễ
ACortex Microcontroller Software Interface Standard (CMSIS)
BIntegrated Development Environment (IDE)
CDAPLink
DMbed Hardware Development Kit (HDK)
EMbed Operating System (Mbed OS)
Lời giải
Mở trang câu hỏi này →Mbed platform là một nền tảng phát triển phần mềm cho các thiết bị Internet of Things (IoT). Mbed OS là một phần quan trọng của Mbed platform, bao gồm các thư viện, nhân hệ điều hành (RTOS core), giao diện phần cứng (HAL) và API. Mbed OS cung cấp một môi trường phát triển phần mềm thống nhất cho các thiết bị IoT, giúp các nhà phát triển dễ dàng tạo ra các ứng dụng và giải pháp IoT. Với Mbed OS, các nhà phát triển có thể truy cập vào các thư viện và công cụ cần thiết để phát triển các ứng dụng IoT, bao gồm các thư viện mạng, thư viện cảm biến và thư viện giao tiếp. Mbed OS cũng cung cấp một nhân hệ điều hành nhỏ gọn và hiệu suất cao, giúp các thiết bị IoT hoạt động một cách ổn định và hiệu quả.
19331Which technological trend has helped accelerate the growth of the Internet (01/07)?4 lựa chọnDễ100% trả lời đúng
AIncreasing chip size
BSlower communication networks
CSmaller and lower-power embedded chips
DDecreasing number of connected devices
Lời giải
Mở trang câu hỏi này →Trend công nghệ nào đã giúp tăng tốc sự phát triển của Internet? Trước đây, các thiết bị điện tử như máy tính, điện thoại di động,... đều có kích thước lớn và tiêu thụ nhiều năng lượng. Tuy nhiên, với sự phát triển của công nghệ, các chip điện tử đã trở nên nhỏ gọn và tiết kiệm năng lượng hơn. Điều này đã giúp tăng tốc độ xử lý và giảm thiểu tiêu thụ năng lượng, từ đó giúp tăng tốc sự phát triển của Internet. Các chip điện tử nhỏ gọn và tiết kiệm năng lượng đã giúp giảm thiểu chi phí sản xuất và tăng cường khả năng kết nối, từ đó giúp Internet phát triển nhanh chóng.
19332What is the key benefit of using the Mbed Online Compiler (Mbed Tool Compiler [Kit Studio Cloud IDE])?5 lựa chọnDễ
ARequires extensive initial setup
BNo prior-installation or set-up required
COnly supports assembly language
DWorks exclusively offline
ERequires a large local database
Lời giải
Mở trang câu hỏi này →Mbed Online Compiler (Mbed Tool Compiler [Kit Studio Cloud IDE]) là một công cụ trực tuyến cho phép lập trình viên tạo và biên dịch mã cho các thiết bị IoT mà không cần phải cài đặt hoặc cấu hình trước. Điều này làm cho nó trở thành một lựa chọn tuyệt vời cho những người mới bắt đầu hoặc những người muốn nhanh chóng thử nghiệm ý tưởng của mình. Không giống như các công cụ lập trình khác, Mbed Online Compiler không yêu cầu cài đặt hoặc cấu hình trước, điều này giúp tiết kiệm thời gian và giảm thiểu sự phức tạp. Ngoài ra, công cụ này cũng cho phép người dùng truy cập vào các tính năng và công cụ lập trình tiên tiến mà không cần phải tải xuống hoặc cài đặt bất kỳ phần mềm nào. Tóm lại, Mbed Online Compiler là một công cụ trực tuyến mạnh mẽ và linh hoạt cho phép người dùng tạo và biên dịch mã cho các thiết bị IoT mà không cần phải cài đặt hoặc cấu hình trước.
19333According to Flynn's Taxonomy, which architecture type is most commonly used in embedded systems?4 lựa chọnDễ
AMIMD
BSIMD
CSISD
DMISD
Lời giải
Mở trang câu hỏi này →Theo Flynn's Taxonomy, kiến trúc loại nào được sử dụng phổ biến nhất trong hệ thống tích hợp (embedded systems)? Flynn's Taxonomy là một mô hình phân loại kiến trúc máy tính, được phát triển bởi Michael J. Flynn vào năm 1966. Theo mô hình này, kiến trúc máy tính được phân loại thành bốn loại chính: SISD, SIMD, MISD và MIMD. Trong đó, SISD (Single Instruction, Single Data) là kiến trúc loại mà một bộ xử lý thực hiện một lệnh và một dữ liệu tại một thời điểm. Kiến trúc SISD thường được sử dụng trong các hệ thống có yêu cầu tính toán đơn giản, như các hệ thống đo lường, điều khiển và các thiết bị điện tử tiêu dùng. Vì vậy, kiến trúc SISD là loại kiến trúc được sử dụng phổ biến nhất trong hệ thống tích hợp (embedded systems).
19334If a thread is waiting for an event to occur, which state it is in according to the Mbed API?5 lựa chọnDễ
AWaiting
BRunning
CTerminated
DInactive
EReady
Lời giải
Mở trang câu hỏi này →Khi một luồng (thread) đang chờ đợi sự kiện xảy ra, theo API Mbed, nó sẽ ở trạng thái nào? Trả lời này dựa trên mô hình quản lý luồng (thread management model) của Mbed. Theo mô hình này, một luồng có thể ở các trạng thái khác nhau như: Running (chạy), Waiting (đợi), Terminated (đã kết thúc), Inactive (không hoạt động), Ready (đã sẵn sàng). Trong trường hợp một luồng đang chờ đợi sự kiện xảy ra, nó sẽ ở trạng thái Waiting (đợi). Điều này có nghĩa là luồng đang chờ đợi một sự kiện nào đó xảy ra trước khi nó có thể tiếp tục thực hiện các hành động tiếp theo. Ví dụ, một luồng có thể đang chờ đợi một tín hiệu từ thiết bị ngoại vi trước khi nó có thể tiếp tục thực hiện các hành động tiếp theo.
AUnit tests i-d, ii-a, ili-c, iv-b
BAcceptance tests i-c, iid, ili-a, iv-b
CSystem tests i-b, ita, ili-d, iv-c
D3. Integration tests i-c, ii-a, iii-d, iv-b
Lời giải
Mở trang câu hỏi này →Mỗi giai đoạn trong vòng đời phát triển phần mềm cần được khớp với vòng đời kiểm thử như sau:
- Giai đoạn thu thập yêu cầu kinh doanh (Business requirements) nên được kiểm thử bằng các bài kiểm thử chấp nhận (Acceptance tests).
- Giai đoạn thiết kế tổng quan (High-level design) nên được kiểm thử bằng các bài kiểm thử tích hợp (Integration tests).
- Giai đoạn thiết kế chi tiết (Low-level design) nên được kiểm thử bằng các bài kiểm thử đơn vị (Unit tests).
- Giai đoạn viết mã (Code) nên được kiểm thử bằng các bài kiểm thử đơn vị (Unit tests).
Vậy đáp án đúng là: Integration tests i-c, ii-a, iii-d, iv-b.
19336Which of the following is not a major task of Exit criteria?4 lựa chọn
AChecking test logs against the exit criteria specified in test planning.
BLogging the outcome of test execution.
CAssessing if more tests are needed.
DWriting a test summary report for stakeholders.
Lời giải
Mở trang câu hỏi này →Mục tiêu thoát (Exit criteria) là một phần quan trọng trong quá trình kiểm thử phần mềm. Nó xác định điều kiện để kết thúc kiểm thử và đảm bảo rằng phần mềm đã đạt được yêu cầu. Một số nhiệm vụ chính của mục tiêu thoát bao gồm: kiểm tra nhật ký kiểm thử so với mục tiêu thoát đã được chỉ định trong kế hoạch kiểm thử, ghi lại kết quả thực hiện kiểm thử, đánh giá xem có cần thêm kiểm thử hay không. Tuy nhiên, viết báo cáo tóm tắt kiểm thử cho các bên liên quan không phải là một nhiệm vụ chính của mục tiêu thoát. Mục tiêu thoát được thiết kế để xác định khi nào kiểm thử nên kết thúc, chứ không phải để tạo ra báo cáo cho các bên liên quan.
19337The difference between re-testing and regression testing is5 lựa chọn
ARe-testing is running a test again; regression testing looks for unexpected side effects
BRe-testing looks for unexpected side effects; regression testing is repeating those tests
CRe-testing is done after faults are fixed; regression testing is done earlier
DRe-testing uses different environments, regression testing uses the same environment
ERe-testing is done by developers, regression testing is done by independent testers
Lời giải
Mở trang câu hỏi này →Khái niệm re-testing và regression testing thường được sử dụng trong lĩnh vực kiểm thử phần mềm. Re-testing là quá trình chạy lại các thử nghiệm đã thực hiện trước đó để đảm bảo rằng các vấn đề đã được sửa chữa. Trong khi đó, regression testing là quá trình kiểm tra lại các phần mềm đã được sửa chữa để đảm bảo rằng các thay đổi không gây ra các tác động phụ không mong muốn. Cụ thể, re-testing là chạy lại các thử nghiệm một lần nữa, trong khi regression testing tìm kiếm các tác động phụ không mong muốn. Điều này cho thấy rằng re-testing và regression testing có mục đích và phạm vi khác nhau trong quá trình kiểm thử phần mềm.
19338Majority of system errors occur in the phase4 lựa chọn
ARequirements Phase.
BAnalysis and Design Phase
CDevelopment Phase
DTesting Phase
Lời giải
Mở trang câu hỏi này →Sự cố hệ thống thường xảy ra trong giai đoạn nào? Trong quá trình phát triển phần mềm, giai đoạn yêu cầu (Requirements Phase) là giai đoạn quan trọng và dễ xảy ra sự cố. Đây là giai đoạn nơi các yêu cầu và mục tiêu của dự án được xác định. Nếu không thực hiện đúng, giai đoạn này có thể dẫn đến sự cố hệ thống sau này. Các yêu cầu không rõ ràng, không đầy đủ hoặc không chính xác có thể gây ra sự cố trong giai đoạn thiết kế và phát triển. Do đó, giai đoạn yêu cầu là giai đoạn dễ xảy ra sự cố hệ thống.
19339A field failure occurs when multiple users access a system. Which of the following is true?4 lựa chọn
AThis is an acceptable risk of a multi-user system.
BInsufficient functional testing has been performed
CThis indicates an important non-functional requirement was not specified and tested.
DItis not possible to test against such events prior to release.
Lời giải
Mở trang câu hỏi này →Một trường hợp lỗi xảy ra khi nhiều người dùng truy cập vào hệ thống. Điều này có nghĩa là một yêu cầu không chức năng quan trọng đã không được chỉ định và kiểm tra. Trong khi các yêu cầu chức năng thường tập trung vào các tính năng và chức năng của hệ thống, các yêu cầu không chức năng lại tập trung vào các tính chất của hệ thống như hiệu suất, độ tin cậy, khả năng mở rộng, bảo mật, v.v. Trong trường hợp này, trường hợp lỗi xảy ra khi nhiều người dùng truy cập vào hệ thống là một yêu cầu không chức năng quan trọng mà không được chỉ định và kiểm tra. Điều này có thể dẫn đến hệ thống không thể xử lý được số lượng người dùng lớn, gây ra sự cố và ảnh hưởng đến hiệu suất của hệ thống.
19340The goal of a software tester is to find bugs, find them as early as possible and make sure they get fixed.2 lựa chọn
ATrue
BFalse
Lời giải
Mở trang câu hỏi này →Mục tiêu của một tester phần mềm là tìm kiếm lỗi, tìm kiếm chúng càng sớm càng tốt và đảm bảo chúng được sửa chữa. Điều này giúp tiết kiệm thời gian và chi phí cho quá trình phát triển phần mềm. Khi lỗi được tìm thấy và sửa chữa sớm, nó sẽ giúp cải thiện chất lượng phần mềm và giảm thiểu rủi ro khi đưa sản phẩm ra thị trường. Vì vậy, mục tiêu của một tester phần mềm là tìm kiếm lỗi và đảm bảo chúng được sửa chữa một cách hiệu quả.