当前位置:网站首页>嵌入式开发:嵌入式基础知识——正确启动固件项目的 10 条建议
嵌入式开发:嵌入式基础知识——正确启动固件项目的 10 条建议
2022-07-30 14:35:00 【粤嵌教育】
对开发人员提出的快速获得结果的要求可能会导致在固件实施的开始阶段跳过一些关键步骤。为了节省调试阶段的时间,嵌入式开发人员在编写任何应用程序代码之前,请将这十条建议作为起点。
1)建立一个目录结构,包括但不限于
–应用
–BSP
–建造
–库
–图书馆
–MCU驱动器
2)添加文件和搜索路径时,使用工作区和项目的相对路径。
3)使用构建文件夹来使用具有相同代码库的多个工具链。
4)在所有工具链中设置空白和制表符间距,以便代码在任何工具中都保持可读。
5)在开始时设置静态分析工具。设置分析仪以监控固件错误,并检查是否符合编码标准。
6)在项目实施的早期设置UART和printf,以便获得调试信息。
7)一旦printf启动并运行,不要忘记设置断言宏!
8)使用git或svn建立基线代码库。
9)设置Doxygen自动生成软件手册
10)使用设计模式和代码模板快速开发底层代码

嵌入式开发人员在项目实施的开始就实施其中的一些建议可以提高效率,甚至可以在开发的早期发现错误。
边栏推荐
- Kubernetes应用管理深度剖析
- ECCV 2022 | Towards Data Efficient Transformer Object Detectors
- MySQL客户端工具的使用与MySQL SQL语句
- Meta首份元宇宙白皮书9大看点,瞄准80万亿美元市场
- The evolution of content products has three axes: traffic, technology, and product form
- ECCV 2022 | 通往数据高效的Transformer目标检测器
- Flink本地UI运行
- Could not acquire management access for administration
- Understand the Chisel language. 29. Chisel advanced communication state machine (1) - communication state machine: take the flash as an example
- Smart Contract Security - Private Data Access
猜你喜欢

The evolution of content products has three axes: traffic, technology, and product form

Flink real-time data warehouse completed

canal scrape data

ECCV 2022 | 通往数据高效的Transformer目标检测器

ToDesk版本更新,引入RTC传输技术,是否早以替代向日葵远程控制?

基于FPGA的DDS任意波形输出

浅析显卡市场的未来走向:现在可以抄底了吗?

打破原则引入SQL,MongoDB到底想要干啥?

Distributed pre-course: MySQL implements distributed locks

【回归预测-CNN预测】基于卷积神经网络CNN实现数据回归预测附matlab代码
随机推荐
MySQL客户端工具的使用与MySQL SQL语句
元宇宙邮局AI航天主题系列数字藏品 将于7月30日10:00点上线“元邮数藏”
闭包和装饰器
机器学习在竞赛和工业界应用区别
Lock wait timeout exceeded解决方案
Fink异步IO的实战(关联维表)
ECCV 2022 | 通往数据高效的Transformer目标检测器
What is Ts?
华为无线设备Mesh配置命令
Container sorting case
What should I do if the sql server installation fails (what should I do if the sql server cannot be installed)
MaxWell抓取数据
A simple change for problem, knapsack problem sets of shell
Normal and escaped strings for postgresql
容器排序案例
如何写一份高可读性的软件工程设计文档
那些破釜沉舟入局Web3.0的互联网精英都怎么样了?
Our company has used gateway services for 6 years, dynamic routing, authentication, current limiting, etc., a stable batch!
深入浅出零钱兑换问题——背包问题的套壳
关于MySQL主从复制的数据同步延迟问题