当前位置:网站首页>Necessary software tools in embedded software development
Necessary software tools in embedded software development
2022-06-28 03:20:00 【u012804784】
High quality resource sharing
| Learning route guidance ( Click unlock ) | Knowledge orientation | Crowd positioning |
|---|---|---|
| 🧡 Python Actual wechat ordering applet 🧡 | Progressive class | This course is python flask+ Perfect combination of wechat applet , From the deployment of Tencent to the launch of the project , Create a full stack ordering system . |
| Python Quantitative trading practice | beginner | Take you hand in hand to create an easy to expand 、 More secure 、 More efficient quantitative trading system |
1、 Preface
As a software developer , In addition to procedural ability and literacy , You should also skillfully use all kinds of commonly used auxiliary tools , So-called “ A good workman does his work well , You must sharpen your tools first ”; Through these tools, you can improve your professional quality , And choosing appropriate tools in work can get twice the result with half the effort .
1.1、 Purpose
What this article writes is to introduce various commonly used software , We can choose appropriate tools to improve our work efficiency .
2、 Common software
2.1、IDE
SCM software development often uses IDE( Embedded integrated development environment ), because IDE The software integrates editing 、 compile 、 download 、 Debugging and other functions , Very convenient in development , Because there are many kinds of single chip computers , Used therefore IDE There are many kinds of software , Here are some common IDE And SCM , Such as :
- KEIL4:51 MCU and so on
- MDK(KEIL5):STM32 etc. ARM Series of microcontrollers
- IAR(for stm8/arm):STM8、STM32 etc. ARM Series of microcontrollers 、K60 Wait for Freescale
- SPC5 Studio:ST The company's new SPC560/SPC570 And so on
- CodeWarrior:M(S)PC5604 etc. NXP( Freescale ) Series MCU
- other
For the used IDE Further familiarity with the software , Be proficient in using related IDE Many things can be solved in software development and hardware and software debugging , I won't go into that .
2.2、 Version control tools
Version control software provides complete version management function , Used to store 、 Tracking Directory ( Folder ) And file modification history , It is a necessary tool for software developers , It's the infrastructure of a software company . The highest goal of version control software , It supports the configuration management activities of software companies , Track development and maintenance activities for multiple releases , Timely release of software .
Generally speaking , In the actual software development process , You will often encounter when you implement a certain function or want to optimize software code , Will back up the entire project replica , Avoid problems after software modification , But because I don't know what has changed, I can't restore the previous software code .
So in the process of software development , There are often many copies of the project , But more than one copy , I don't know what the corresponding state of each replica is , Maybe some people have considered , Therefore, when renaming a copy, there will be some simple descriptions to record the status of the current project copy .
Why use a version control tool ?
Backup of the current state of the software , Version management ( Version fallback is possible )
Help us record and track the changes in the contents of various documents in the project ( You can operate under the same project directory )
Improve code quality ; Because there are some changes in the code without any comments , Through the version record, you can find , You can also delete useless code
Collaborative development ; When multiple people develop at the same time , If you copy it to others in the form of a copy for collaborative development , There will be many problems , Because I don't know whose version is the latest
It can reduce the occupation of the project ( The size here refers to the hard disk size occupied by the software and its copy , Through version control tools , It can reduce the occupied hard disk size )
What are the version control tools ?
- Git
- Git It is the most advanced distributed version control system in the world , Use Git and Gitlab Building a version control environment is the most popular version control method for Internet companies ( One of the most famous is Github, The largest open source code base ;Gitee, Open source China Code cloud )
- Git Is a free open source distributed version control system , Designed to handle everything from small to large projects quickly and efficiently
- Git Easy to learn , It takes up little memory , Lightning fast performance
- The operation is relatively complicated ( The form of the command line ), But by using Git Gui Tools , You can get started quickly , But it comes with it Gui Tools are not easy to use , Third party developed can be used , Such as SourceTree( I often use , Because there are also extremely convenient gitflow Branch management function , It is recommended to use for the first time Git You don't need branch management , Because it is difficult to understand the words just used , Easy to give up ), relevant GUI For comparison of tools, please refer to Several Git GUI Client tools
Here's the picture , This is for me Git GUI Software SourceTree Managed code , Which used gitflow Branch management , If not , One master Branch is OK , That is, there is only one blue line in the map , Represents each version ( It can be understood as a copy ) Related records of , You can see two stable versions in the figure ( label V0.1.0 and V1.0.0) The file is obviously different
Tutorial reference :Git course
- SVN
- TortoiseSVN Is a very easy to use cross platform version control / version control / Source code control software
- SVN Is a free centralized version control system
- There are also available GUI Tools , Such as TortoiseSVN etc. , May refer to SVN Client tools
- Tutorial reference :SVN course
- other
- Such as VSS、CVS etc. , Because I didn't touch , So I don't know , Interested in Baidu
2.3、 Document comparison tool
We often encounter some files that need to be compared , Especially some code 、 Text 、 Between pages or folders , We really need a tool that can clearly analyze all the differences between them , It is convenient for modification or reference , Although it can pass Git And other version management tools can also see the difference , But it is more convenient to use a professional file comparison tool , The available software is Code comparison software .
I recommend using Beyond Compare Software , It's more convenient to use , And it's powerful , But this software is charged ( Official standard edition +Win/Mac/Linux ¥259 permanent ), But it has 30 The evaluation period of days is free ( It can be reset when the evaluation period expires , There are tutorial methods on the Internet ).

2.4、 Code reading artifact
Source Insight Is a program editor and code browser , Code editor classic .SourceInsight It provides the fastest navigation to the source code and the source information of any program editor , As a mature IDE Software ,Source Insight It is obviously not used for development and debugging IDE convenient , But in terms of reading the source code , It can be said that it is better than .
When you use source Insight After looking at the code or analyzing the code , Make sure you don't want to see code with other code editors anymore , It's better than any other code reader , Powerful , It has a built-in pair C/C++, C# and Java And so on , Support for almost all languages , Such as C、C++、ASM、PAS、ASP、HTML Such as common . Of course , except Source Insight Outside , also VS code Software ( free ) etc. , But I haven't used it yet VS code , No introduction , It is also very good to use , Personal choice .

2.5、 Text editor
The computer comes with a text editor , As a developer , Not very suitable. , So you need a professional text editor , Such as UltraEdit( charge )、Notepad++ Support multiple syntax highlighting and other functions , Select available for reference Several easy-to-use text editors
UltraEdit Is a powerful text editor , You can edit the text 、 Hexadecimal 、ASCII code , Instead of Notepad ( If the computer configuration is powerful enough ), Built in English word check 、C++ And VB Instructions highlight , Multiple files can be edited at the same time , And even if you open a large file, it won't be slow .
Notepad++ Is a very distinctive editor , The software is small and efficient , Support 27 Programming languages , Take all C,C++ ,Java ,C#, XML, HTML, PHP,JS etc. . Open source software , Free to use , It also supports various popular computer programming languages .

2.6、 Search tools
Everything The search tool locates files and directory installation files in real time based on their names 、 Simple and easy to use interface 、 Quick file index 、 Fast file search 、 Very low resource footprint 、 Easily share file indexes and track updates in real time .
Its interface is simple , It's easy to operate , Don't set anything , It can be used immediately after startup , Search syntax is also supported , Regular expressions and command line arguments ;

2.7、 Serial debugging assistant
Easy to use serial port debugging tools are SSCOM,MyDockligh,AccessPort and XCOM ;XCOM Is a good serial port debugging software .

2.8、 Source formatting tool
Prior to Programming specification for embedded software development ( Four ) in , Be able to write code according to this rule when developing by yourself , But there is no guarantee that others will follow this , If you need to read someone else's source code , When the source code style is very bad , It's killing , Although you can adjust the code style yourself , But it took a long time , Also very tired ;
Astyle Is an open source formatting tool software , Integrated in the IDE Or text editor software , As a script auto format words code style , It is very convenient . Here's the picture , Just open a bad code file , Through integrated Astyle Tools automatically format code styles (IAR、KEIL And other software can also be configured Astyle Custom tools , Can own Baidu , Format the code according to your favorite style , The command line option I use most often is “ --style=allman -t -xV -C -f -p -H -k3 -y -xb -j -U %f”).

2.9、 Annotation file generation tool
Doxygen Is a program file generation tool , Notes in a specific format in a program can be converted into a description file , stay Programming specification for embedded software development ( Four ) The annotation style of the code is mentioned in , Conform to this format to generate html Documents or chm file .

边栏推荐
- 元宇宙标准论坛成立
- Ten reasons for system performance failure
- R语言惩罚逻辑回归、线性判别分析LDA、广义加性模型GAM、多元自适应回归样条MARS、KNN、二次判别分析QDA、决策树、随机森林、支持向量机SVM分类优质劣质葡萄酒十折交叉验证和ROC可视化
- How fiddle uses agents
- Writing based on stm32
- 如何获取GC(垃圾回收器)的STW(暂停)时间?
- ETCD数据库源码分析——集群间网络层服务端RaftHandler
- js清空对象和对象的值:
- Redis搭建集群【简单】
- 2022年R1快開門式壓力容器操作特種作業證考試題庫及答案
猜你喜欢

多快好省,低门槛AI部署工具FastDeploy测试版来了!

2022 operation of simulated examination platform of special operation certificate examination question bank for safety management personnel of hazardous chemical business units

Opencv -- geometric space transformation (affine transformation and projection transformation)

The first in the industry! MOS sub evaluation model for subjective video quality experience that can run on mobile devices!

3年功能测试拿8K,被刚来的测试员反超,其实你在假装努力

Why are so many people keen on big factories because of the great pressure and competition?

Object类,以及__new__,__init__,__setattr__,__dict__

Simple file transfer protocol TFTP

Mixed programming of C language and assembly language in stm32

2022危险化学品经营单位安全管理人员特种作业证考试题库模拟考试平台操作
随机推荐
Thesis reading: General advantageous transformers
nn.Parameter和torch.nn.init系列函数给模型参数初始化
Relative path writing of files
音视频技术开发周刊 | 251
如何编写简洁代码?(上)
What are the good practices of cloud cost optimization?
导致系统性能失败的十个原因
Artifact for converting pcap to JSON file: joy (installation)
买股票应该下载什么软件最好最安全?
2022电工(初级)复训题库及在线模拟考试
Usage details of staticlayout
Dataloader参数collate_fn的使用
js清空对象和对象的值:
Gateway微服務路由使微服務靜態資源加載失敗
Why are so many people keen on big factories because of the great pressure and competition?
一位博士在华为的22年(干货满满)
RichView TRVStyle TextStyles
Heartless sword English Chinese bilingual poem 004 Meditation
Yes, it's about water
腾讯游戏发布40多款产品与项目 其中12款为新游戏
