Embedded Engineer

80+ Embedded Engineer Interview Questions and Answers

Updated 29 Nov 2024

Popular Companies

search-icon

Q1. how many algorithms that you got familiar with when learning c programming?

Ans.

I learned several algorithms while learning C programming.

  • I learned sorting algorithms like bubble sort, insertion sort, and selection sort.

  • I also learned searching algorithms like linear search and binary search.

  • I learned recursive algorithms like factorial and Fibonacci series.

  • I learned data structure algorithms like linked list, stack, and queue.

  • I also learned algorithms for string manipulation and file handling.

  • Overall, I learned a variety of algorithms that helped me bec...read more

Q2. Why are you interested in the field of embedded software development?

Ans.

I am fascinated by the challenge of working with low-level hardware and creating efficient, real-time systems.

  • Enjoy the challenge of working with low-level hardware

  • Excited about creating efficient, real-time systems

  • Passionate about developing innovative solutions for embedded systems

Embedded Engineer Interview Questions and Answers for Freshers

illustration image

Q3. How packet goes from source to destination.

Ans.

Packets are sent from source to destination through a series of network devices using routing protocols.

  • Packet is created at the source with source and destination IP addresses.

  • Packet is sent to the default gateway or router.

  • Router checks its routing table to determine the next hop for the packet.

  • Packet is forwarded to the next hop until it reaches the destination.

  • Destination receives the packet and sends an acknowledgement back to the source.

Q4. What are the Protocols in Industry. Like SPI,I2c, CAN

Ans.

Common industry protocols include SPI, I2C, and CAN for communication between devices.

  • SPI (Serial Peripheral Interface) is a synchronous serial communication protocol commonly used for communication between microcontrollers and peripheral devices.

  • I2C (Inter-Integrated Circuit) is a multi-master, multi-slave serial communication protocol used for connecting low-speed peripherals to a motherboard or embedded system.

  • CAN (Controller Area Network) is a robust serial communication ...read more

Are these interview questions helpful?

Q5. Write a code to allocate a memory for multidimential array on heap

Ans.

Code to allocate memory for multidimensional array on heap

  • Use malloc() function to allocate memory on heap

  • Calculate the total size of the array using the dimensions

  • Use a pointer to access the array elements

Q6. Why can bus uses 120 ohm resistance

Ans.

120 ohm resistance is used in CAN bus to match the characteristic impedance of the transmission line.

  • CAN bus is a differential signaling system that requires a balanced impedance to prevent signal reflections.

  • The 120 ohm resistance matches the characteristic impedance of the transmission line, which is typically 120 ohms.

  • Without the proper impedance matching, signal reflections can cause data errors and reduce the maximum communication distance.

  • The 120 ohm resistance is typic...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q7. What is the principle of analog to digital converter?

Ans.

An analog to digital converter converts continuous analog signals into discrete digital values.

  • Converts continuous analog signals into digital values

  • Utilizes sampling and quantization techniques

  • Common types include successive approximation ADC and delta-sigma ADC

Q8. Formula for frequency and how to calculate frequency in 8051

Ans.

Frequency in 8051 is calculated using the formula: Freq = 1 / (2 * T * 12 * (65536 - TH0 + TL0))

  • Frequency can be calculated by using the formula: Freq = 1 / (2 * T * 12 * (65536 - TH0 + TL0))

  • T is the crystal oscillator period in seconds

  • TH0 and TL0 are the values stored in Timer 0 registers

  • Example: If T = 1/12 MHz, TH0 = 0x00, TL0 = 0xFF, then Freq = 1 / (2 * (1/12e6) * 12 * (65536 - 0x00FF))

Embedded Engineer Jobs

Telematics Embedded Engineer 5-10 years
Infosys Limited
3.7
Chennai
Embedded Engineer 1-3 years
Quest Global Technologies
4.0
Thiruvananthapuram
Embedded Engineer -Hyderabad 1-6 years
IIT Hyderabad
4.3
Hyderabad / Secunderabad

Q9. What are the criteria for c program

Ans.

Criteria for C program include syntax correctness, logical flow, and efficient memory usage.

  • Correct syntax and logical flow are essential for program functionality

  • Efficient memory usage is important for performance optimization

  • Program should be well-documented and easy to maintain

  • Code should be modular and reusable for future projects

Q10. Explain I2c diff btn i2c and spi diff btn hw and sw interrupt

Ans.

I2C is a serial communication protocol used to connect multiple devices with two wires. SPI is another serial protocol with four wires.

  • I2C uses a master-slave architecture while SPI uses a master-master architecture.

  • I2C supports multiple devices on the same bus while SPI requires a separate chip select line for each device.

  • Hardware interrupts are triggered by external events while software interrupts are triggered by software instructions.

Q11. How keyboard mapping works in a microcontroller?

Ans.

Keyboard mapping in a microcontroller involves assigning specific key codes to each key on the keyboard.

  • Keyboard mapping is typically done using a lookup table that maps physical key presses to corresponding key codes.

  • The microcontroller reads the key code when a key is pressed and sends it to the computer for processing.

  • Keyboards may use different mapping standards such as ASCII or HID.

  • Custom keyboard mappings can also be implemented for specific applications or languages.

Q12. what is microcontroller? have you worked on any microcontroller? c++ basics polymorphism

Ans.

A microcontroller is a small computer on a single integrated circuit that contains a processor core, memory, and programmable input/output peripherals.

  • Microcontrollers are commonly used in embedded systems for controlling various devices and appliances.

  • They are programmed using languages like C or assembly language.

  • Examples of popular microcontrollers include Arduino, Raspberry Pi, and PIC.

  • Microcontrollers are often used in applications such as robotics, home automation, and ...read more

Q13. pointers work, how program execute for stm32,types of GPIO

Ans.

Pointers are used to access memory addresses in STM32 for GPIO operations.

  • Pointers are used to access memory-mapped GPIO registers in STM32.

  • GPIO pins can be configured as input or output using pointers.

  • Example: GPIOA->MODER |= (1 << (2*2)); // Set pin PA2 as output

Q14. Write the code for with explain 8 bit and 4bit of clcd

Ans.

Code for interfacing 8-bit and 4-bit CLCD with an embedded system.

  • For 8-bit CLCD, use all 8 data lines (D0-D7) to send data to the display.

  • For 4-bit CLCD, use only 4 data lines (D4-D7) to send data in two 4-bit nibbles.

  • Ensure proper initialization and configuration of the CLCD controller in the code.

  • Example: For 8-bit CLCD - send data using PORTA in AVR microcontroller. For 4-bit CLCD - send data using lower nibble of PORTB.

Q15. How does a computer boot up?

Ans.

A computer boots up by executing the BIOS, loading the operating system into memory, and initializing hardware components.

  • BIOS (Basic Input/Output System) is the first code executed by a computer when powered on.

  • BIOS performs a Power-On Self Test (POST) to check hardware components.

  • BIOS then locates and loads the operating system from the boot device (e.g. hard drive, SSD, USB).

  • The operating system is loaded into memory (RAM) and begins executing, initializing hardware compon...read more

Q16. Difference between normal can and extended can

Ans.

CAN is a communication protocol used in automotive and industrial applications. Normal CAN has 11-bit identifier while Extended CAN has 29-bit identifier.

  • Normal CAN has 11-bit identifier while Extended CAN has 29-bit identifier.

  • Extended CAN allows for more unique identifiers, enabling more devices to communicate on the same network.

  • Normal CAN has a maximum data rate of 1 Mbps while Extended CAN has a maximum data rate of 8 Mbps.

  • Extended CAN is typically used in applications w...read more

Q17. Types of error messages in CAN protocol

Ans.

Types of error messages in CAN protocol

  • Bit Error: Error in a single bit of the message

  • Stuff Error: Error in the stuffing bits

  • CRC Error: Error in the cyclic redundancy check

  • Form Error: Error in the message format

  • Acknowledge Error: Error in the acknowledgement of the message

Q18. Why they call port 0 as no power port

Ans.

Port 0 is called no power port because it does not have any power supply connected to it.

  • Port 0 is typically used for communication purposes and does not provide power to connected devices.

  • It is commonly found in microcontrollers and is designated for data transfer rather than power supply.

  • Devices connected to port 0 may need to be powered separately to function properly.

Q19. How clcd works and explain in detail

Ans.

CLCD stands for Character LCD. It is a type of display commonly used in embedded systems to show text and simple graphics.

  • CLCD displays characters and symbols by controlling individual pixels on the screen

  • It typically has a predefined set of characters stored in ROM, which can be displayed by sending corresponding ASCII values

  • CLCDs are commonly interfaced with microcontrollers using protocols like I2C or SPI

  • Commands are sent to CLCD to set cursor position, clear screen, displ...read more

Q20. differences between micro processors and micro controllers

Ans.

Microprocessors are general-purpose CPUs while microcontrollers are specialized chips with integrated memory and peripherals.

  • Microprocessors are used in devices like computers and smartphones, while microcontrollers are used in embedded systems like microwaves and washing machines.

  • Microprocessors require external components like memory and peripherals, while microcontrollers have these components integrated on the chip.

  • Microprocessors are more powerful and versatile, while mi...read more

Q21. What's is MOSFET ? How control current

Ans.

MOSFET stands for Metal-Oxide-Semiconductor Field-Effect Transistor. It is a type of transistor used to control current in electronic devices.

  • MOSFET is a type of transistor that uses an electric field to control the flow of current.

  • It has three terminals - gate, source, and drain.

  • By applying a voltage to the gate terminal, the MOSFET can either allow or block current flow between the source and drain.

  • MOSFETs are commonly used in amplifiers, power regulators, and digital circu...read more

Q22. Delete a node from single linked list.

Ans.

To delete a node from a single linked list, we need to find the node and update the pointers.

  • Traverse the list to find the node to be deleted

  • Update the previous node's pointer to point to the next node

  • Free the memory of the node to be deleted

Q23. What is the use of UART protocal

Ans.

UART protocol is used for serial communication between devices, typically between a microcontroller and peripherals.

  • UART allows for asynchronous communication

  • It uses two wires for communication - one for transmitting data (TX) and one for receiving data (RX)

  • Commonly used in applications like GPS modules, Bluetooth modules, and serial communication with PCs

Q24. how ADC and DAC converters works?

Ans.

ADC converts analog signals to digital signals, while DAC converts digital signals to analog signals.

  • ADC stands for Analog-to-Digital Converter, which samples and quantizes analog signals into digital values.

  • DAC stands for Digital-to-Analog Converter, which converts digital values into analog signals.

  • ADC involves sampling, quantization, and encoding processes.

  • DAC involves decoding, reconstruction, and filtering processes.

  • Example: A microphone converts sound waves (analog) int...read more

Q25. Size of Bus in a 8-bit microcontroller?

Ans.

The size of the bus in an 8-bit microcontroller is typically 8 bits.

  • The bus size determines the amount of data that can be transferred in one operation.

  • In an 8-bit microcontroller, the bus size is 8 bits, allowing for 8 bits of data to be transferred at a time.

  • This means that the microcontroller can process data in 8-bit chunks, which is common for 8-bit architectures.

Q26. Discuss project of the previous company block diagram etc

Ans.

Designed a real-time monitoring system for industrial machines using sensors and microcontrollers.

  • Created a block diagram outlining the system architecture

  • Utilized sensors to collect data on machine performance

  • Implemented microcontrollers to process and transmit data

  • Developed a user interface for monitoring and analyzing machine data

Q27. What is an inline function?

Ans.

An inline function is a function that is expanded in line when it is called, rather than executing a call to the function.

  • Inline functions are defined with the 'inline' keyword.

  • They are used to improve performance by reducing the overhead of function calls.

  • They are typically small functions that are called frequently.

  • Inline functions can be defined in header files.

  • Example: inline int add(int a, int b) { return a + b; }

Q28. Steps of compilation of a C program.

Ans.

Compilation of a C program involves preprocessing, compiling, assembling, and linking.

  • Preprocessing: Includes header files, macro expansions, and comments removal. Example: gcc -E program.c

  • Compiling: Translates source code to assembly code. Example: gcc -S program.c

  • Assembling: Converts assembly code to machine code. Example: gcc -c program.s

  • Linking: Combines object files and libraries to generate executable. Example: gcc program.o -o program

Q29. Why c is faster than java or python

Ans.

C is faster than Java or Python due to its lower-level nature and direct hardware access.

  • C is a low-level language that allows for direct memory manipulation and hardware access, resulting in faster performance.

  • Java and Python are higher-level languages with more abstractions, leading to slower execution compared to C.

  • C code is compiled directly to machine code, while Java and Python code are typically interpreted or run on a virtual machine.

  • C is closer to the hardware and pr...read more

Q30. Define structure Define union Why C programming

Ans.

Structure is a user-defined data type in C that allows storing multiple data types under a single name.

  • Structures in C are used to group different data types together under a single name.

  • They are used to represent a record, such as a student with attributes like name, age, and roll number.

  • Structures can contain variables, arrays, and even other structures as members.

Q31. Difference between structure and union ?

Ans.

Structure is a collection of different data types under a single name, while union is a collection of different data types but only one can be accessed at a time.

  • Structure allows all members to be accessed simultaneously, while union allows only one member to be accessed at a time.

  • Size of structure is sum of sizes of all members, while size of union is equal to the size of the largest member.

  • Example: struct Person { int age; char name[20]; }; union Data { int num; char letter...read more

Q32. Bit arbitration and its significance

Ans.

Bit arbitration is the process of resolving conflicts when multiple devices try to access the same bus simultaneously.

  • Bit arbitration is important in multi-master systems where multiple devices can initiate data transfer.

  • It ensures that only one device gains control of the bus at a time.

  • Different arbitration schemes include priority-based, round-robin, and collision detection.

  • For example, in a CAN bus system, the device with the highest priority message gets to transmit first...read more

Q33. Explain the difference between loops in C.

Ans.

Different types of loops in C include for, while, and do-while loops.

  • For loop: Used when the number of iterations is known. Example: for(int i=0; i<5; i++) {}

  • While loop: Used when the number of iterations is unknown. Example: while(condition) {}

  • Do-while loop: Similar to while loop but guarantees at least one execution. Example: do {} while(condition);

Q34. program to count the number of words in a string

Ans.

Program to count the number of words in a string using array of strings.

  • Split the string into an array of strings using a delimiter like space.

  • Iterate through the array and count the number of elements.

  • Handle edge cases like multiple spaces between words.

Q35. What is Embedded System?

Ans.

Embedded system is a computer system designed to perform specific tasks with real-time constraints.

  • Combination of hardware and software

  • Limited resources

  • Real-time constraints

  • Examples: traffic lights, medical devices, smart home appliances

Q36. What is binary coded decimal?

Ans.

Binary Coded Decimal (BCD) is a way of representing decimal numbers using a binary code.

  • BCD uses four bits to represent each decimal digit.

  • Each decimal digit is represented by its binary equivalent.

  • For example, the decimal number 25 is represented in BCD as 0010 0101.

Q37. What is CAN protocol?

Ans.

CAN protocol stands for Controller Area Network protocol, used for communication between microcontrollers and devices in automotive and industrial applications.

  • CAN protocol is a robust and reliable communication protocol used in automotive and industrial applications.

  • It allows multiple microcontrollers to communicate with each other without a host computer.

  • CAN protocol uses a differential signaling scheme to reduce electromagnetic interference.

  • It supports message prioritizati...read more

Q38. what is vlsi and its uses

Ans.

VLSI stands for Very Large Scale Integration and it involves packing millions of transistors onto a single chip.

  • VLSI is used in the design and manufacture of microprocessors, memory chips, and other electronic components.

  • It enables the creation of smaller and more powerful electronic devices.

  • VLSI technology is used in various industries such as automotive, aerospace, telecommunications, and consumer electronics.

  • Examples of VLSI chips include Intel's Pentium processors, Samsun...read more

Q39. Interprocess communication in OS

Ans.

Interprocess communication is a mechanism that allows processes to communicate with each other in an OS.

  • IPC mechanisms include pipes, sockets, message queues, shared memory, and signals.

  • IPC can be used for synchronization, data sharing, and coordination between processes.

  • IPC can be implemented using system calls such as fork(), pipe(), socket(), and msgget().

Q40. Work culture of company

Ans.

Our company values collaboration, innovation, and work-life balance.

  • We encourage open communication and teamwork among employees.

  • We prioritize creativity and finding new solutions to problems.

  • We believe in maintaining a healthy work-life balance for our employees.

  • We offer flexible work arrangements and opportunities for professional development.

  • We have a diverse and inclusive work environment that values all perspectives.

  • We prioritize employee wellness and offer benefits such...read more

Q41. Can we call ISR from ISR

Ans.

Yes, it is possible to call an ISR from another ISR.

  • Calling an ISR from another ISR is known as nesting ISRs.

  • It is important to carefully manage the nesting depth to avoid stack overflow.

  • Nested ISRs can introduce complexity and potential issues, so it should be used judiciously.

Q42. How does cross Compilation work

Ans.

Cross compilation is the process of compiling code on one platform to run on a different platform.

  • Cross compilation involves using a compiler that runs on one platform (the host) to generate executable code for another platform (the target).

  • It is commonly used in embedded systems development where the target platform may have different architecture or operating system than the host platform.

  • Cross compilation requires a cross compiler toolchain that includes a compiler, linker...read more

Q43. What is ISR?

Ans.

ISR stands for Interrupt Service Routine. It is a function that is executed in response to an interrupt signal.

  • ISR is a type of callback function that is used in embedded systems.

  • It is used to handle hardware interrupts, such as button presses or sensor readings.

  • ISR is executed asynchronously and takes priority over other tasks.

  • It is important to keep ISR functions short and efficient to prevent delays in other system operations.

  • Examples of ISR include handling interrupts fro...read more

Q44. How to calculate voltage

Ans.

Voltage can be calculated using Ohm's Law, which states V = I * R.

  • Use Ohm's Law formula V = I * R, where V is voltage, I is current, and R is resistance.

  • Measure the current flowing through the circuit using an ammeter.

  • Measure the resistance of the circuit using a multimeter.

  • Multiply the current by the resistance to calculate the voltage.

  • For example, if the current is 2A and the resistance is 5 ohms, the voltage would be 10V (2A * 5 ohms = 10V).

Q45. what is spi communication

Ans.

SPI (Serial Peripheral Interface) is a synchronous serial communication protocol used for short distance communication.

  • SPI is used to communicate between microcontrollers, sensors, and other peripherals.

  • It uses a master-slave architecture where the master device initiates the communication.

  • SPI uses four wires: MOSI (Master Out Slave In), MISO (Master In Slave Out), SCK (Serial Clock), and SS (Slave Select).

  • SPI is faster than I2C and UART communication protocols.

  • Example: SPI i...read more

Q46. What is ADC?

Ans.

ADC stands for Analog-to-Digital Converter. It is a device that converts analog signals into digital signals.

  • ADC is commonly used in embedded systems to convert analog signals from sensors into digital signals that can be processed by a microcontroller.

  • ADC can have different resolutions, which determines the number of bits used to represent the digital signal.

  • ADC can also have different sampling rates, which determines how often the analog signal is sampled and converted into...read more

Q47. Which language you like?

Ans.

I prefer C++ for its performance and versatility.

  • C++ is known for its high performance and efficiency.

  • C++ is a versatile language that can be used for a wide range of applications.

  • C++ allows for low-level memory manipulation, making it suitable for embedded systems.

  • Examples: Developing firmware for microcontrollers, implementing real-time systems.

Q48. Dynamic memory alocation in c

Ans.

Dynamic memory allocation in C allows allocation of memory at runtime.

  • Dynamic memory allocation is done using functions like malloc(), calloc(), realloc() and free().

  • malloc() allocates memory block of specified size and returns a pointer to the first byte of allocated memory.

  • calloc() allocates memory block of specified size and initializes all bits to zero.

  • realloc() changes the size of previously allocated memory block.

  • free() deallocates the memory previously allocated by mal...read more

Q49. SQL query to retrieve top 5 records.

Ans.

Use SQL query with ORDER BY and LIMIT to retrieve top 5 records.

  • Use SELECT statement to specify columns to retrieve

  • Use ORDER BY clause to sort the records in descending order

  • Use LIMIT clause to limit the number of records to 5

Q50. Two sum- return true or false

Ans.

Given an array of integers, determine if there are two numbers that add up to a specific target.

  • Iterate through the array and store each element in a hash set.

  • For each element, check if the difference between the target and the element exists in the hash set.

  • If the difference exists, return true; otherwise, continue iterating.

  • Example: nums = [2, 7, 11, 15], target = 9. The function should return true as 2 + 7 = 9.

1
2
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.7
 • 10k Interviews
3.6
 • 3.6k Interviews
4.2
 • 325 Interviews
3.9
 • 289 Interviews
3.8
 • 267 Interviews
3.9
 • 50 Interviews
View all

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

Embedded Engineer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions
Get AmbitionBox app

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter