N
N
NEupy2019-05-01 19:56:01
C++ / C#
NEupy, 2019-05-01 19:56:01

What do you need to know for hardware programming?

Recently I got interested in this industry, and I would like to ask: Is the soldering of microcontrollers, circuits included in this specialty, or does it require mainly knowledge of C / ++ & Assembler?

Answer the question

In order to leave comments, you need to log in

5 answer(s)
M
Michael, 2019-05-01
@MikeDeblin

The ability to solder can be useful, but not essential when working with a finished, assembled device.
At a minimum, you need to understand how and what a certain node does, which you can programmatically access.
Be able to read datasheets (at least understand the parameters), understand the operation of typical circuits, the interaction of components, etc. It is desirable to be able to use control and measuring instruments.
Start with arduino or STM32. Collect a couple of devices, then you will understand in which direction to move.
You can assemble not on a breadboard, but make a full-fledged board, solder the parts, then program.

L
lamerok, 2019-05-08
@lamerok

In general, if you want to be a programmer, then knowledge of how to solder and circuitry details is not needed. Usually, in more or less decent offices, a circuit engineer and a programmer are separated. But in small offices, this can be combined, but this greatly affects the quality.
Therefore, if you want to be a high-class specialist, then it is better to separate these two things, circuitry and programming.
In general, programming for microcontrollers, like any other development, can be divided into levels.
For simplicity, let's say this is the Hardware Abstact Level (HAL) and the application level (Application or Business Level)
In order to deal with the iron level, you must:

  1. First of all, know how the microcontroller works, and any peripherals from simple ports, UART, ADC, SPI to USB, Ethernet and Bluetooth. To do this, you need to read the relevant literature, you can articles, of which there are many on the Internet.
    And after this acquaintance, the most important thing is to study the original specifications for all this, because only there is the truth.
    To deal with the application layer:
    In general, if the office is small, then for "hardware programming" it is necessary to be able to do everything from developing circuits and optimizing code in assembler to Metaprogramming ... I have never seen such people in my life. There are people who know all this, but the knowledge is very superficial, there are people who know one part well, but not very much the other.
    Usually all the same, people are divided into a circuit engineer and a programmer who does everything from HAL to business logic.
    Ideally, there should be 3 people, a circuit engineer, a low-level programmer (HAL, stacks, drivers), a business logic programmer

M
Moskus, 2019-05-01
@Moskus

If you answer formally, then, of course, no - you don’t need to know how to solder for programming. But it usually happens that a good low-level programmer learns some related skills in the process of learning. Moreover, soldering is not so difficult. The presence of such related skills significantly increases the level of training and speeds up the development process, especially if you work in a small company where broad, rather than narrow specialists are valued.

V
vanyamba-electronics, 2019-05-01
@vanyamba-electronics

It depends on the project. You also need an oscilloscope.

C
CityCat4, 2019-05-02
@CityCat4

It is quite possible that it is included, depending on what you do :)

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question