Common Software Tools in Embedded Development

Follow+Star Public Account Number, don’t miss out on exciting content

Common Software Tools in Embedded Development

Author | strongerHuang

WeChat Public Account | Embedded Column

Previously, someone requested a compilation of commonly used development tools software, so today I took some time to organize a few, hoping to be helpful to everyone.

Embedded Column

1

Integrated Development Environment (IDE)Embedded software engineers generally come into contact with several integrated development environments (IDE), of course, many engineers also set up their own editors, compilers, and debugging environments. Below are some commonly used IDEs.1.KeilKeil mainly targets most MCUs on the market, from 8-bit to 32-bit, and can refer to my article “Introduction to Keil“.Website:

http://www.keil.com

(The public account does not support external links, please copy the link to open in a browser)

Keil has categorized tools for different manufacturers and types of MCUs, currently offering four tools: Keil C51, C166, C251, and MDK-ARM.You can follow the public account ‘strongerHuang’ and reply with the keyword “Keil Series Tutorial” to see more content.2.IARSimilar to Keil, IAR also targets most MCUs on the market, with many features that are essentially the same, making it a commonly used tool for embedded software engineers.Website:

http://www.iar.com

IAR also has many tools, such as: EWxxx, for example: EWARM, EW430, etc. (different IDE tools).Of course, there are many names, another type is: IAR for xxx. For example: IAR for ARM, IAR for STM8, etc.You can follow the public account ‘strongerHuang’ and reply with the keyword “IAR Series Tutorial” to see more content.3.VSVS: Microsoft Visual Studio, abbreviated, is a series of development toolkits from Microsoft.Website:

https://visualstudio.microsoft.com

Many readers should know and have learned about VC++6.0, which was a well-known tool in the past. VS has developed from it.VS is a complete development toolset that includes most of the tools needed throughout the software lifecycle.4.eclipseEclipse is an open-source, Java-based extensible development platform. In itself, it is just a framework and a set of services for building development environments through plugin components. Fortunately, Eclipse comes with a standard set of plugins, including Java Development Tools (JDK).Website:https://www.eclipse.org

Currently, many development tools are modified based on Eclipse, for example, many friends developing STM32 know the STM32CubeIDE tool, and you will find that many features are similar to Eclipse.

Including the popular Android development a few years ago, it was also developed based on Eclipse.

The above are some commonly used, general integrated development tools. If you haven’t learned about them, you can take a look.

Embedded Column

2

Software Version Control Software

Generally, larger companies will use some version control software to manage the company’s code.

Below are two common tools recommended.

1.Git

Git is a free and open-source distributed version control system designed to handle everything from small to large projects quickly and efficiently.

Website:https://git-scm.com

Git is easy to learn, occupies little space, and has lightning-fast performance. It has features such as local branches, convenient staging areas, and multiple workflows, similar to SCM tools like Subversion, CVS, Perforce, and ClearCase.

Git is currently one of the most widely used tools. My previous company also used Git to set up servers for code management, and the operation is quite simple.

2.SVN

SVN stands for Subversion, an open-source version control system that efficiently manages projects through a branching management system, allowing multiple people to collaboratively develop the same project, sharing resources, and achieving centralized management.

Website:

https://tortoisesvn.net

Before Git, SVN was the most popular code management tool, and many companies still use this tool. There are many learning tutorials online, and it is also worth learning and understanding.

Embedded Column

3

Code Reading and Editing

A good code reading and editing tool helps improve development efficiency.

1.Source InsightSource Insight is a project-oriented program editor and code browser that has built-in analysis for C/C++, C#, and Java programs. It can analyze source code and dynamically maintain its own symbol database while working, automatically displaying useful contextual information.

Website:

https://www.sourceinsight.com

(The public account does not support external links, please copy the link to open in a browser)

Most embedded engineers should know this tool, and it is not difficult to use, with many tutorials available online. However, the downside is that it is paid software and cannot be used openly.2.VS CodeVS Code: Visual Studio Code, is a truly cross-platform editor from Microsoft.Website:

https://code.visualstudio.com

Compared to Source Insight, VS Code is a latecomer, released in 2015.It has gained favor among many software engineers. Indeed, time has proven that VS Code is not only powerful but also free.3.Notepad++Notepad++ is a text editor for the Windows operating system, with a complete Chinese interface and support for multiple languages (UTF8 technology).Website:

https://notepad-plus-plus.org

This tool should be owned by many engineers as a text editor. Recently, there was some news about it, but it seems to have calmed down now.

Embedded Column

4

File (Code) Comparison ToolsAs software developers, we mainly need to compare code, for example, comparing which codes have been modified after changes.1.Beyond CompareBeyond Compare is a file comparison tool launched by Scooter Software. Its main purpose is to compare two folders or files and highlight differences with colors. The comparison scope includes directories, document contents, etc.Website:

http://www.scootersoftware.com

This tool is a relatively good tool from abroad, with the only downside being that it is paid software, and there are agents in China.There is a free trial period, and if you want to use it for free, you need to find a way.

Embedded Column

5

Project Progress ManagementGenerally, project managers or project leaders need to master some project management tools.1.Microsoft ProjectMicrosoft Project (or MSP) is a project management software program developed and sold by Microsoft. The software is designed to assist project managers in developing plans, allocating resources for tasks, tracking progress, managing budgets, and analyzing workloads.Website:

https://products.office.com/zh-cn/previous-versions/microsoft-project-2010

(The public account does not support external links, please copy the link to open in a browser)

This tool is recommended for project managers and product managers to understand and learn.That’s all for now; I will introduce more commonly used tools later when I have the opportunity. Of course, it is not necessary for everyone to spend a lot of time mastering these tools; just have a general understanding and spend time learning when needed.Finally, everyone is welcome to discuss which useful tools and software you have used!

———— END ————

Reply in the background with “Software Tools” to read more related articles.Followthe WeChat public account ‘Embedded Column’ for more content in the bottom menu, reply “Join Group” to join the technical exchange group according to the rules.

Common Software Tools in Embedded Development

Click “Read the Original” to see more shares, and feel free to share, bookmark, like, and view.

Leave a Comment