What background in electronics is necessary for embedded systems?

The first thing to consider is on whether you’ll be designing the hardware or simply programming. Anyone who is designing hardware for embedded systems is going to require an EE degree, as well as being adept in analog design, digital designs (including the power supply) and in many cases , RF design principles , if your device uses wireless. If the job demands the use of a PCB layout. (In numerous firms the circuit design and layout are given to various engineers.)

Even if you’re planning to write programs for embedded system, and not actually doing hardware design, at minimum , you’ll need to be competent enough to read the schematic, employ an oscilloscope, multimeter or other instruments, as well as comprehend microcontroller datasheets that can be hundreds of pages.

Let’s look at one.

in the case of an ARM processor. I’m developing a driver for a device which is nearly 2 000 pages in length. When you go through the datasheet, take note of the definitions of registers as well as block circuit diagrams.

This is a photo of my desk at work just to my left of my monitor and keyboard:

You’ll need to be familiar with the most common microcontroller peripherals such as USB, I2C, SPI, UART, DMA, I2S, ADC, DAC and many more.

Sometimes, a framework is offered such as the Microchip Harmony

in its 32-bit processing or STM32CubeMX

From ST. This allows you to avoid having write directly to registers in the microcontroller for instance, in order to set up I2C to control an audio codec. Instead, you can utilize an API that is the same across all processors. However, you must be aware of how I2C operates.

A solid background in hardware is an advantage. I’ve worked with a lot of engineers who were working on embedded software that did not have an CS background, however the reverse is not very common. only CS background, with little or no experience in electronics.

Leave a Comment