What is embedded programming?

Asked

Viewed 810 times

7

Reading a book about programming practices, at a certain point an excerpt about embedded programming. It doesn’t go into detail, but it talks a little bit about programming in microcontrollers and microprocessors.

What is embedded programming? There is a specific language to create an embedded system?

  • 3

    That’s when the code gets to see ships :p

  • 1

    There is one issue that has been removed from Sozão that deals with it well :) http://web.archive.org/web/20100426125115/http://www.mattmcdole.com/boat/

  • Good thing no one mentioned Clipper and Harbour /s

2 answers

10


Like the Magichat commented in his reply, the embedded programming is geared to codes that are executed on a specific platform, usually dealing with a specific problem and their practices/techniques differ from those used in desktop applications precisely for this reason. In desktop applications you can have generic libraries, which solve a problem in N different situations, this because you have practically unlimited memory and disk space, that is, wastes computational resources. In an embedded application, the scenario already changes completely. For example, on the Arduino Uno development board, which uses the Atmega328p microcontroller, you have only 32 KB of Flash memory, 2 KB of SRAM and 1 KB of EEPROM, all running at a 16 Mhz clock. Your computational resources are extremely limited, so it changes the way you design an application.

Being more limited, the most used programming languages are C and Assembly. C on platforms you have more memory and can work with a little more freedom, as in Arduino, Assembly for when you have even more limited resources and need to develop a very specific solution.

However, you can still have applications running on embedded operating systems, as occurs on the Raspberry Pi platform. There is a Linux distribution precisely modified to be embedded on the board where you can basically run any programming language, such as Python, PHP, Java, etc. It is possible precisely because such platforms have more hardware resources available (today from 512 KB to 2 GB of RAM, on Raspberry, running at 900 Mhz).

5

Embedded programming is the name given to programs directed to embedded systems, which in turn are those that different from general-purpose systems, are planned for the use of predefined tasks of specific use, for example a router.

Low-level languages are used, mostly C and Assembly.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.