Embedded Interview Questions

Basic Embedded Interview Questions

CAN Interview Questions

Automotive Interview Questions

I2C and SPI Interview Questions

Embedded C interview Questions

Autosar Interview questions


Here are some frequently asked Embedded Interview Questions :

Q1. What is an embedded system?

Embedded systems means…

  • Embedded systems can be termed as a combination of hardware and software.
  • Have its own CPU which contains memory, timers, peripherals, bus, reset, on-chip oscillation.
  • Dedicated to a specific task.

Q2. Why embedded systems?

As we all know it’s a combination of hardware and software.

It helps to achieve a real-time embedded system with considering factors like speed and efficiency.

Q3. Why embedded applications are real-time?

Ans: An embedded system is a dedicated electronics design system which is used to control and access data within a given response time to handle critical events. In RTOS time responsiveness is fast and it maintains scalability.

Q4.What is mean by an infinite loop in embedded systems?

Ans: As it works on real-time embedded systems applications which used to repeatedly monitoring/processing status of the program.

Q5.What is big-endian and little-endian format in embedded systems?

The big-endian means data is stored at the big end first. In multiple bytes, the first byte is the biggest or represents the primary value but

In the little endian format, little end data stored first.

Q6.What are commonly found errors in embedded systems?

  1. Wrong addressing of address lines and data lines within a circuit.
  2. Transient current and static charges which damages memory devices.
  3. Illegal memory allocation.
  4. Wrong insertion of Memory devices into memory slots.
  5. Sometimes control signals are faulty.

Q7.Why I/O Devices are important in embedded systems?

As we know embedded systems have inbuilt on a single chip which contains peripherals, memory and communication protocols like I2C, SPI CAN. While communicating and interchanging contents with these devices require physical entities.

So to receive and send contents on device/computer I/O device functionality can be used by embedded applications.

Q8.What is microcontroller and why?

Microcontroller is an electronic device which controls I/o devices and has own CPU which contains peripherals, memory, and processor which can be used as embedded systems. The execution time of microcontrollers works in microseconds which give the output of particular embedded applications in specific time duration.

Q9.What is the difference between microprocessor and microcontroller?

Microprocessor is a device in which memory, peripherals, and I/O devices connected externally. The microcontroller has I/O, memory,& Peripherals inbuilt into it and designed for control.

Q10.In I2C, SPI and CAN which one is best?

Don’t give an answer to the interviewer that is best. As per industry requirement and project need all three are best. Every protocol has its unique quality to show performance in industry project.

Q11.List various timers in embedded systems?

Ans: Time Slicing, Time Division, Capture, and Compare Timer.Timer/Counter

Q12.Why Timers?

Timer is not only used to generate delay but used to count pulses. Timers maintain accuracy as per requirement. By using for loop we can generate delay but will not get accuracy as per requirement. Timers maintain accuracy and precise value. Timer calculation can be done by an external clock and controller itself.

Q13. Are Smart devices embedded systems?

No, Smart devices are not embedded systems but it contains several embedded systems like Wifi, Bluetooth, GSM Modules.

Q14.Why interrupts are prioritized?

Interrupts selection based on two criteria:

The execution time of the device driver’s interrupts.

Maximum interrupt latency requirement.

Worked on the basis of timer overflow. Once that cannot be serviced within the time limits specified for bus interrupts qualify as off-level interrupts. A device’s interrupt priority is picked on two criteria: it’s maximum interrupt latency requirements and the device driver’s interrupt execution time.

Q15.What is the use of model transformation in embedded?

Model transformation basically used to obtain different views for embedded project development. It provides a Bottom-up and top-down approach. It helps to construct the iterative model by using library components which involve analysis of the model so that the process can be made automated.

Q16.What is the use of DMA in embedded systems?

DMA means Direct Memory Access controller which handles dynamic memory allocation and allow data to be transferred between devices. I/o Devices data can be detected and communicated automatically. Data transfer between two devices can be done by an interrupt. DMA provides high-quality performance and is used to execute overall execution in the system.

Q17.What are the parameters required to design device drivers?

1:- Structure: Synchronous entry and asynchronous entry. Several synchronous entries handle device initialization, queue I/O Request, state control, read/write/. and aSynchronous entry point handles interrupt
2:-OS and driver Communication:-buffers, error codes.
3:-Driver operations: Initialize required devices.

4:-Interpret commands.

#Schedule multiple outstanding requests

#Manage data transfer

#Accept and process interrupt.

4. Support Functions: Support open, close, read, write, and seek functions.

Q18.What do you mean by reading modify write mechanism?

  • It is used to access microcontroller ports.
  • All three actions performed by single instructions.
  • Initially, data read by port and again written back to port.

Q19.Why startup code is required in embedded applications?

It is a prior and basic platform to run applications. It Contains assembly language to run the application. There are some parts need to execute startup code:

  1. Exception handler code
  2. Reset handler
  3. stack declaration
  4. Vector table allocation.

Q20.Write a code for infinite loop in “c”?

Below are different types for writing code in “c”

Type 1

while (1)

{

// task1

}

Type 3

Loop:

goto Loop;

Type 2

for(;;)

{

// task1

}

Q21.What are the steps to measure interrupt latency in embedded systems:

Configure one I/O Pin to generate interrupt and second I/O pin for toggling. Monitor pin to generate an interrupt. Monitor second pin which is toggled at the start of the interrupt service routine. Once interrupt is generated a signal of both pins will change.

Q22.Is an Embedded system is IoT?

We can say embedded applications are sub-set of IoT. IoT is a network connects with an object which is used to collect and exchange data and that object is nothing but your embedded devices and applications.

Q23.Why embedded is known as Automotive?

Embedded applications or devices is a system which is used to design &  control, access the data in electronics-based systems. These embedded based applications can be used in automotive cars to access different functionalities like powertrain, infotainment, security, and audio systems. Application is changing according to OEM requirements.

Q24.Why embedded applications are programmed? & How?

Computer understands machine level language. Also, an embedded system is a mechanical system with a dedicated role which has larger no of electrical and mechanical objections, it happens with real-time computing. Embedded device or systems include hardware and mechanical parts and used to control many devices in today’s world.

Q25.Why “c” language mostly preferred than assembly language?

Embedded applications need portability. By writing assembly code doesn’t maintain the required portability and accuracy in functions. but by writing code in “ C “ is more scalable, reliable and portable and easy to understand.


Frequently asked I2C Protocol Interview Questions:

I²C (Inter-Integrated Circuit), blazoned I-squared-C is an asynchronous, multi-master, packet switched multi-slave, single-ended, serial computer bus developed in 1982 by Philips Semiconductor (now NXP Semiconductors).

It is widely used for joining lower-speed peripheral ICs to processors and microcontrollers in short-distance, intra-board communication. Since October 10, 2006, no licensing fees are asked to implement the I²C protocol. However, fees are compelled to obtain I²C slave addresses allocated by NXP.

Some rivals, such as Siemens AG (later Infineon Technologies AG, nowadays Intel mobile communications), NEC, Texas Instruments, STMicroelectronics (formerly SGS-Thomson), Motorola (later Free scale, now merged with NXP), Nordic Semiconductor and Intersil, have added compatible I²C products to the market since the mid-1990s.

Questions and answers on I2C: 

1. Two-wire interface is also known as _________

a) UART
b) SPI
c) I2C
d) USART

Answer: c

Explanation: The i2c protocol also recognized as the two-wire interface that is a simple serial communication protocol that uses just pins of a microcontroller namely SCL and SDA.

2. I2c will address a large number of slave devices.

a) True
b) False

Answer: a

Explanation: This protocol will direct a large number of slave devices that are equated to the same bus.

3. SDA shows a ____________transition when the clock line SCL is high.

a) high to low
b) low to high
c) low to low
d) high to high

Answer: a

Explanation: SDA shows a high to low transition when the clock line SCL is high. Under normal conditions, this does not appear as you can see in the subsequent clock pulses that the data line is steady in one state, either high or low when the clock line is high.

4. Inter Integrated Circuit is a _____________

a) Single master, single slave
b) Multi-master, single slave
c) Single master, multi-slave
d) Multi-master, multi-slave

Answer: d

Explanation: I2C notable as I-squared-C, is a multi-master, multi salve. It is used for joining lower-speed peripheral IC’s to processors and microcontrollers in a small range, intraband communication within a system board.

5. Typical voltages used are ___________

a) 5v
b) 3.3v
c) 5v or 3.3v
d) 2.5v

Answer: c

Explanation: I2C uses just two bidirectional open-drain lines means that two lines neither connected to Vcc nor connected to ground, SDA and SCL. Standard voltages used are 5v or 3.3v, although system with other voltages is allowed.

6. What is the speed of the I2C bus?

a) 100 kbits/s
b) 10 kbits/s
c) 75 kbits/s
d) 100 kbit/s and 10 kbit/s

Answer: d

Explanation: Common I2C bus peed rates are the 100 kbit/s standard mode and the 10 kits/slow-speed mode, but arbitrarily lowering clock frequencies are also allowed.
7. Master transmits means _________

a) The master node is sending data to a slave
b) The master node is receiving data from the slave
c) Slave node is transmitting data to the master
d) Slave node is sending data to the master

Answer: a

Explanation: There maybe four potential modes of action for a given bus a device, although most devices only use a single role and its two modes:

-> Master transmit – Master node is transmitting data to a slave
-> Maser receive – Master node is receiving data from the slave
-> Slave transmit – slave node is transmitting data to the master
-> Slave receive – Slave node is sending data to the master.

8. Who sends the start bit?

a) Master receive
b) Master transmit
c) Slave transmit
d) Slave receive

Answer: b

Explanation: The master is initially in master transmit mode by sending a start bit followed by the 7-bit address of the slave.

9. Which is the I2C messaging example?

a) 24c32 EPROM
b) 24c32 EEPROM
c) 24c33 EEPROM
d) 24c33 EPROM

Answer: b

Explanation: The 24c32 EEPROM, which practices two request bytes that are called Address high and address low. These bytes are utilized to address bytes within the 32 kbit supported by that EEPROM which has inbuilt I2C pins.

10. Are pull up registers required in I2C?

a) True
b) False

Answer: a

Explanation: At the physical layer, both SCL and SDA lines are of open drain design, thus pull up resistors are needed.

11. How many kinds of addressing structures are there in I2C?

a) 4 types
b) 3 types
c) 2 types
d) 5 types

Answer: c

Explanation: There are 2 markings/addressing mode –> 7-bit addressing mode
–> 10-bit addressing mode.

12. All operating modes work under ____________

a) 11 kbit/s
b) 100 kbit/s
c) 15 kbit/s
d) 150 kbit/s

Answer: b

Explanation: There are different operating modes for I2C communication. All are cooperative in that the 100 kbit/s standard mode is always used.

13. Which mode is highly cooperative and simply tightens?

a) Fast mode
b) High-speed mode
c) Ultrafast mode
d) Both fast and high-speed mode

Answer: a

Explanation: Quick mode is highly cooperative and simply tightens several of the timing parameters to achieve 400 kbit/s speed.

14. What is the speed for fast mode?

a) 100 kbit/s
b) 400 kbit/s
c) 150 kbit/s
d) 200 kbit/s

Answer: b

Explanation: Quick mode is highly compatible and tightens several of the timing parameters to attain 400 kbit/s speed.
15. What is the speed for High Speed mode?

a) 100 kbit/s
b) 3.4 Mbit/s
c) 150 kbit/s
d) 200 kbit/s

Answer: b

Explanation: High-speed mode is compatible with normal I2C devices on the same bus, but requires the master to have an active pull-up on the clock line which is enabled during high-speed transfers.

16. What do you mean by I2C communication? Explain with its diagram.

Ans: I2C stands for inter IC communication. It is two wire i.e. SDA and SCL half duplex communication protocol. It is single and multi master and slave communication protocol.

17. What is the application of I2C protocol?

Ans: It is connected with serial RAM, LCD, EEPROM and it use within the television sets.

18.  Which of the following are the three hardware signals?

Ans : START, STOP, ACKNOWLEDGE.

19.  Which pin provides the reference clock for the transfer of data?

Ans : SCL provides the reference clock for the transfer of data.

20. Can devices be added and removed while the system is running in I2C ?        

Ans : Hot swapping is possible in I2C protocol.

21. What is the standard bus speed in I2C ?  

Ans : a standard bus speed is 100Kbps  , fast mode is 400Kbps  , fast mode plus is 1Mbps , high speed mode is 4Mbps , Ultra speed mode is 5 Mbps.

22.What is bus arbitration ?

Ans : Arbitration is the process to avoid conflict the data on bus when multi master start communication at the same time.  In the arbitration – which is the lowest address of the salve, that salve will communication continues and other will be lost the arbitration.

23.Advantages and limitations of I2C communication ?               

Ans : 1.Using I2C .. we can connect more slaves than SPI.  2. Cost effective compared to SPI.SPI 3.Different speeds available.  4. NO need of any GPIO pins. 5.hardware design implementation is simple than SPI because of 2 wire communication  6.Supports Multi master Communication  7. More complexity to write a program 8. Transfer of data speed(100 Kbps) is less than SPI(1 Mbps)

24. How many devices can be connected in a standard I2C communication?      

 Ans : As per theoretically we can connect up to 127 devices for 7Bit  address and 2 ^10 devices will connect for 10Bit address. But practically depends on Capacitance load. If capacitance load is increase the speed will be reduced

25. Is it possible to have multiple masters in I2C?                                          

 Ans : Multi master is possible in I2C communication using Arbitration process.

26.What is the maximum distance of the I2C bus?

Ans : This depends on the load of the bus and the speed you run at. In typical applications, the length is a few meters (9-12ft). The maximum capacitive load has been specified (see also the electrical Spec’s in the I2C FAQ). Another thing to be taken into account is the amount of noise picked up by long cabling. This noise can disturb the signal transmitted over the bus so badly that it becomes unreadable.
The length can be increased significantly by running at a lower clock frequency. One particular application – clocked at about 500Hz – had a bus length of about 100m (300ft). If you are careful in routing your PCB’s and use proper cabling (twisted pair and/or shielded cable), you can also gain some length.If you need to go far at high speed, you can use an active current source instead of a simple pull-up resistor. Philips has a standalone product for this purpose. Using a charge pump also reduces “ghost signals” caused by reflections at the end of the bus lines.

27. Can I do galvanic decoupling of my I2C bus?

Ans : This is possible. The circuit is rather complex due to the bi-directional nature of the I2C bus.

The following figure shows a possible solution:

Component Values:

  • 5 and 5′ : PNP like 2n2219 or BC557
  • 6 and 6′ : NPN like 2n2222 or BC 547
  • 1 and 1′ : 270 Ohm
  • 2 and 2′ : 3300 Ohm
  • 3 and 3′ : 1800 Ohm
  • 4 and 4′ : 1000 Ohm
  • Optocouplers : 6n139 , 4n27 or Til 111

Note: Since the speed of the I2C bus can be rather high, it is recommended to use a fast optocoupler. However, this circuit will not work on speeds higher then 10KHz. A 6N139 will do the job in all cases. The two PNP and the two NPN transistors can be any standard type, e.g. 2N2219 and 2N2222 (USA) or BC547 and BC557 (EUROPE).

28. How can I monitor the I2C bus?

Ans : There are a few commercial I2C monitor / debuggers around that can do this.

There is another possibility to do this: By using the stand-alone I2C controller PCF8584 from Philips. This chip has a certain mode in which it does not take part in the real I2C action but only records what is going on. It listens to all addresses, but does not generate any acknowledge. Using some software routines and a MCU you could build a universal I2C data logger.