Hackernoon logoEmbedded Development: 5 Tools to Try in 2021 by@peter909098

Embedded Development: 5 Tools to Try in 2021

Author profile picture

@peter909098rt-thread

RT-Thread was born in 2006, it is an open source, neutral, and community-based real-time operating system (RTOS).

1. MDK

MDK, namely RealView MDK or MDK-ARM (Microcontroller Development Kit), is an embedded software development tool for ARM processors such as ARM7, Arm-9, Cortex-M0, Cortex-M1, Cortex-M2, Cortex-M3, Cortex-R4, launched based on the uVision UI after ARM acquired Keil.

MDK is designed for microcontroller applications and is powerful enough to satisfy most demanding embedded applications. It is available in four versions: MDK-Lite (free evaluation version), MDK-Essential, MDK-Plus, and MDK-Professional. All versions provide a full-fledged C/C++ development environment, with MDK-Professional including a number of intermediate libraries.

Download MDK5: https://www2.keil.com/mdk5

Advantage

Stable and reliable´╝ÜMDK has been used by many companies, schools and independent developers, and its quality is excellent

Abundant documents´╝ÜBecause of the large number of MDK users, there are numerous resource tutorials online

Disadvantage

Expensive´╝ÜDue to the high price, many small businesses, independent developers, students can not afford the cost of software

The code editor is terrible´╝ÜMDK was born a long time ago, the code editor is basically the same as the text editor of the system; Code highlighting, word completion, code formatting, and syntax analysis are important editing functions that are almost non-existent in MDK, so writing code is laborious, which leads to poor coding style and habits for many developers.

2. IAR

IAR Systems is the world's leading provider of embedded Systems development tools and services. Founded in 1983, the company has been providing products and services at every stage of the design, development, and testing of embedded systems, including integrated development environments (IDE) with C/C++ compilers and debuggers, real-time operating systems and middleware, development suites, hardware emulators, and state machine modeling tools.

Headquartered in Sweden in northern Europe, the company has branches in the United States, Japan, Britain, Germany, Belgium, Brazil and China.

Its best known product is the C compiler IAR Embedded Workbench, which supports microprocessors from many leading semiconductor companies. Many of the world's leading companies are using IAR SYSTEMS 'development tools to develop their leading edge products, from consumer electronics, industrial control, automotive applications, healthcare, aerospace to mobile application systems ...

Moreover, there are several versions of IAR for different embedded development requirements, such as: IAR For ARM´╝îIAR For STM8´╝îIAR For AVR´╝îIAR For 8051 ...

Download IAR: https://www.iar.com/iar-embedded-workbench/

Advantage

Stable and reliable´╝ÜThe IAR has been focused on developing tools for decades and is widely recognized by the market, so it is extremely reliable

Compilation optimization is excellent´╝ÜThe IAR focuses on the development of compiler tools, which compile very quickly and produce small, fast programs

Clean software UI´╝ÜCompared to MDK, IAR's software UI looks much better

Disadvantage

Expensive´╝ÜDue to the high price, many small businesses, independent developers, students can not afford the cost of software

The code editor is terrible´╝ÜLike MDK, the IAR's code editor is terrible, with some basic functionality missing

3. RT-Thread Studio

RT-Thread Studio is a one-stop RT-Thread development tool created by The RT-Thread IDE team. It makes the development of Internet of Things simple and efficient through an easy-to-use graphical configuration system and rich software package and component resources.

The functions of RT-Thread Studio mainly include project creation and management, code editing, SDK management, RT-Thread configuration, construction configuration, debugging configuration, program download and debugging, etc. And the combination of graphical configuration system, software package and component resources can reduce duplication of work and improve development efficiency.

Rt-thread Studio is developed by the Eclipse platform, and its UI design and style are inherited from Eclipse, which is a huge benefit for developers used to Eclipse.

Meanwhile, RT-Thread Studio simplifies the complex configuration of Eclipse and simplifies the configuration mode of users as much as possible. It only needs to operate the graphical interface to add components and source code package to the project, which is extremely friendly to developers unfamiliar with Eclipse.

Download RT-Thread Studio: https://realthread-ide.rt-thread.org/Global/RT-Thread-Studio-setup-x86_64-latest.exe

Advantage

Free´╝ÜThe RT-Thread Studio community version is free forever

SDK management´╝ÜThe SDK manager for RT-Thread Studio allows you to download and update the latest RT-Thread source package online, as well as numerous SDK packages.

Get started quickly´╝ÜIt has simple project creation wizard, you can create a project framework by wizard.

Multiple project frameworks´╝ÜRT-Thread Studio supports a variety of development frameworks for users to choose from

What you see is what you get´╝ÜA new graphical configuration system with support for both architecture and tree diagram configurations

Rich package support´╝ÜThe software package market provides a wealth of available software package resources to facilitate users to add to their own projects

Disadvantage

Not very stable´╝ÜRT-Thread Studio has just been released and is currently under rapid development with frequent updates, so sometimes it has some bugs.

4. Eclipse IDE

Eclipse is as a cross-platform free integrated development environment (IDE). It was initially used primarily for Java language development, and different computer languages can be supported by installing different plug-ins for Eclipse.

Eclipse itself is only a framework platform, and the support of many plug-ins makes it easy for Eclipse to have the flexibility that other relatively fixed IDEs doesn't have. So many software developers use Eclipse as a framework to developing their own ides.

The Eclipse embedded CDT plug-in allows you to create, build, debug, and manage ARM/RISC-V projects (executables and static/shared libraries, 32-bit and 64-bit versions) using the Eclipse IDE.

Download Eclipse Embedded CDT: https://projects.eclipse.org/projects/iot.embed-cdt

Advantage

Free´╝ÜEclipse is open source software, so you don't have to pay for it

Cross-platform´╝ÜEclipse is developed by Java, so it can run on different operating systems

More modern UI´╝ÜCompared to MDK and IAR, Eclipse has a better UI and supports a variety of topics, making the UI less boring

Disadvantage

Complex project creation process´╝ÜThe Eclipse IDE has fewer built-in templates, and many settings to configure if you create projects manually

Complex configurations´╝ÜEclipse has many configurations, is very complex, and has many features that you wouldn't normally use

5. VSCode

VSCode, full name Visual Studio Code, is a lightweight code editor produced by Microsoft, free, open source and powerful. It supports syntax highlighting, smart code completion, custom hotkeys, parenthesis matching, code snippets, code contrast diff, git, and plug-in extensions. The software supports Windows, Mac and Linux across platforms.

VSCode also has many plug-ins that can be used for embedded development, such as PlatformIO, CMake ...

Download Vscode: https://code.visualstudio.com/

Advantage

Free´╝ÜVSCode is open source software, so you don't have to pay for it

Cross-platform´╝ÜVSCode runs on NodeJS, which is cross-platform and therefore can run on different operating systems

Powerful editing function´╝ÜVSCode built-in mainstream programming language syntax highlighting, word-based code completion, code fragments ... By installing the appropriate plug-in, you can get stronger code analysis and prompt capabilities.

Disadvantage

Configuration is various´╝ÜVSCode and plug-ins have a lot of configuration, and the configuration is represented in Json text, and if you have too many plug-ins, the configuration becomes cumbersome

Speed is affected by plug-ins´╝ÜToo many plug-ins will cause vscode to start and run slower, as well as consume a lot of memory

Not every plug-in is great´╝ÜBecause many plug-ins are developed by individual developers, the functionality and reliability of plug-ins are not guaranteed

Also published on Reddit.

Author profile picture

@peter909098rt-thread

Read my stories

RT-Thread was born in 2006, it is an open source, neutral, and community-based real-time operating system (RTOS).

Tags

Join Hacker Noon

Create your free account to unlock your custom reading experience.