当前位置:网站首页>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 .

边栏推荐
- 为什么OpenCV计算的帧率是错误的?
- Apache - about Apache
- Apache——阿帕奇簡介
- 多快好省,低门槛AI部署工具FastDeploy测试版来了!
- Why are so many people keen on big factories because of the great pressure and competition?
- 项目实战!手把手教你 Jmeter 性能测试
- [games] Parkour
- 2022 safety officer-c certificate examination question bank simulated examination platform operation
- 【iptables&icmp】iptables默认策略中关于icmp协议的说明
- What are the technologies to be mastered in the test? Database design for software testing
猜你喜欢

元宇宙标准论坛成立

Review the submission of small papers for 2022 spring semester courses

Thesis reading: General advantageous transformers

剑指 Offer 53 - I. 在排序数组中查找数字 I(改进二分)

Writing based on stm32

2022年R1快開門式壓力容器操作特種作業證考試題庫及答案

分布式事务解决方案Seata-Golang浅析

collections.defaultdict()的使用
![[kotlin] basic introduction and understanding of its syntax in Android official documents](/img/44/ec59383ddfa2624a1616d13deda4a4.png)
[kotlin] basic introduction and understanding of its syntax in Android official documents
![[postgraduate] bit by bit](/img/76/b804ff215b8f52f1fe603a9a34a352.jpg)
[postgraduate] bit by bit
随机推荐
RichView TRVStyle
s32ds跳转到DefaultISR
剑指 Offer 49. 丑数(三指针法)
[games] Parkour
【小游戏】跑酷
Is it reliable to invest in the inter-bank certificate of deposit fund? Is the inter-bank certificate of deposit fund safe
Usage details of staticlayout
Object类,以及__new__,__init__,__setattr__,__dict__
Apache, IIS6 and ii7 independent IP hosts screen and intercept spider crawling (applicable to VPS virtual machine servers)
[issue 21] face to face experience of golang engineer recruited by Zhihu Society
The first in the industry! MOS sub evaluation model for subjective video quality experience that can run on mobile devices!
读书,使人内心宁静
Opencv -- geometric space transformation (affine transformation and projection transformation)
Arduino esp8266 web LED control
Apache, IIS6, ii7 independent IP host shielding restricts IP access
一位博士在华为的22年(干货满满)
【PaddleDetection】ModuleNotFoundError: No module named ‘paddle‘
Severe Tire Damage:世界上第一个在互联网上直播的摇滚乐队
导致系统性能失败的十个原因
Severe Tire Damage:世界上第一个在互联网上直播的摇滚乐队
