Microcontrollers, SoCs, and Development Boards Questions
Selecting and reasoning about microcontroller and system-on-chip families, evaluation boards, and reference platforms for embedded work. Covers CPU cores, memory maps, on-chip peripherals, boot flow, and the trade-offs between MCU, MPU, and SoC targets. Includes how architecture choices constrain firmware and toolchain decisions.
Describe the difference between a bootloader and application firmware on a microcontroller. Outline the startup steps from reset to main(), including vector table setup, C runtime initialization (copying .data, zeroing .bss), and how a bootloader can perform safe firmware update (verification, fallback image, checksum/signature).
Explain the purpose of the volatile keyword in C/C++ when used with memory-mapped registers and variables shared with ISRs. Describe typical bugs that occur if volatile is omitted and when volatile alone is insufficient (e.g., for ordering guarantees or multicore/atomic operations).
Given a hypothetical microcontroller with the following register addresses: GPIO_DIR at 0x40000000, GPIO_PULLUP at 0x40000004, GPIO_IN at 0x40000008, write C code (register defines and a function) to configure pin 3 as input with pull-up enabled and return its current logical value. Use volatile and explain your choices.
Describe the classic 5-stage CPU pipeline (fetch, decode, execute, memory, write-back). Explain how pipelining improves instruction throughput, and briefly describe the three categories of hazards: data hazards, control hazards, and structural hazards, with a short example for each.
Explain the ARM Cortex-M exception and interrupt model: describe what registers are automatically stacked on exception entry, the roles of MSP and PSP, how BASEPRI and PRIMASK influence interrupt masking, and outline how to implement a basic context switch for a preemptive RTOS including saving/restoring registers and handling the floating-point state if an FPU is present.
Unlock Full Question Bank
Get access to all 39 Microcontrollers, SoCs, and Development Boards interview questions and detailed answers.
Sign in to ContinueJoin thousands of developers preparing for their dream job.