网易首页 > 网易号 > 正文 申请入驻

嵌入式开发:调试嵌入式软件的技巧

0
分享至

  调试是每个开发人员都想避免的任务,但不幸的是,它是软件开发中不可避免的罪恶。到了卷起袖子开始调试的时候,每个开发人员都应该记住7个技巧。

  技巧 1——采取可控的步骤

  当一个bug爬进嵌入式软件时,开发人员的第一反应是跳入代码并开始修改。它们通常是随意的,几乎是随机的,而不是以一种受控制和受指导的方式做出改变。嵌入式软件开发不是蛮荒的西部。即使是最简单的bug的解决也应该包括检查可用的数据,评估它,假设最可能的原因,更新然后测试。如果改变不能解决问题,新的数据应该出现,然后帮助过程重复。

  技巧2——增加断言密度

  ASSERT宏是一个很好的工具,开发人员可以用它来验证代码中的假设。令人惊讶的是,许多开发人员没有花时间将它们放入他们的代码中。代码库的断言密度通常是漫长而痛苦的调试会话之间的差异,或者是失败假设发生时的陷阱。ASSERT可以帮助开发人员立即发现错误或假设失败。

  技巧3——使用数据记录器

  关于软件如何运行的信息是嵌入式软件工程师调试时最有用的工具。拥有诸如任务何时开始和完成、它们是否被抢占等性能信息以及其他细节可能是至关重要的。使用日志是开发人员深入了解软件的一个很好的方式。日志可以像RAM缓冲区、写入外部闪存的文件一样简单,也可以像传输到远程位置的编码数据一样复杂。在任何情况下,日志文件都是收集调试和系统分析信息的好方法。

  技巧4——使用高级断点

  开发人员熟悉使用标准断点,只需双击一行代码的左边就可以打开标准断点。许多IDE具有更高级的断点功能,但很少被利用。高级断点的一个例子是设置一条线,当变量达到某个值时断开。使用高级断点可以大大减少调试时间,并使难以捕捉的错误更容易发现。

  技巧5——再次查看数据手册

  调试外设可能特别困难。现代微控制器可以有10个寄存器来设置一个外设。外设设置并不总是显而易见或有据可查的。更糟糕的是,正确设置的细节通常不在单个数据手册中。只看一个是不够的。当硬件运行不正常时,请反复查看数据表。

  技巧6——监控调用堆栈

  开发人员有时会质疑他们最初是如何找到特定的代码行的。IDE包含一个调用堆栈窗口,可以准确地显示这些信息。调用堆栈显示了调用了哪些函数以及调用的顺序,揭示了对跟踪bug非常有用的信息。

  结论

  不管你花很多时间调试还是很少时间,事实是作为嵌入式开发人员这是不可能避免的。使用本文中的技巧有助于使调试变得更容易接受。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
遭吊车侵入的上海地铁11号线恢复运营迎早高峰!乘客发声

遭吊车侵入的上海地铁11号线恢复运营迎早高峰!乘客发声

南方都市报
2024-12-23 10:20:06
LV三公子带Lisa去买包,Lisa戴了96万的手表,她大方的晒腰间玫瑰

LV三公子带Lisa去买包,Lisa戴了96万的手表,她大方的晒腰间玫瑰

鑫鑫说说
2024-12-23 09:31:14
28岁女子相亲美得冒泡,小伙约她出去玩,女孩害羞:家教有点严

28岁女子相亲美得冒泡,小伙约她出去玩,女孩害羞:家教有点严

梅子的小情绪
2024-12-22 20:08:37
闹大了!球迷向古德温砸水瓶,张宁回应卸胳膊动作:控制情绪没用

闹大了!球迷向古德温砸水瓶,张宁回应卸胳膊动作:控制情绪没用

后仰大风车
2024-12-23 00:15:11
另有任用的冀铁军,新职明确

另有任用的冀铁军,新职明确

鲁中晨报
2024-12-23 11:38:03
谁也别想得分!维金斯11中3拿到9分3断2帽 锁防华子&兰德尔

谁也别想得分!维金斯11中3拿到9分3断2帽 锁防华子&兰德尔

直播吧
2024-12-22 12:13:40
最“抠门”爸爸给女儿取名,姓+名一共3笔,连老师都惊叹:没有一笔是弯的!!!

最“抠门”爸爸给女儿取名,姓+名一共3笔,连老师都惊叹:没有一笔是弯的!!!

财经三分钟pro
2024-12-20 20:08:36
李宜雪事件迎来大结局?专家认定人格障碍再次送诊!医院官网炸了

李宜雪事件迎来大结局?专家认定人格障碍再次送诊!医院官网炸了

风语励志情
2024-12-22 21:29:57
一语成谶的“谶”是什么意思?它不读chuō,也不读jiān

一语成谶的“谶”是什么意思?它不读chuō,也不读jiān

清风游史
2024-12-21 14:09:54
业绩拖累薪酬 星巴克大罢工

业绩拖累薪酬 星巴克大罢工

北京商报
2024-12-23 02:36:04
难以下咽别演吃戏!《清明上河图密码》播出,让多少假吃演员脸红

难以下咽别演吃戏!《清明上河图密码》播出,让多少假吃演员脸红

娱乐圈十三太保
2024-12-21 16:43:46
张兰太心疼 小玥儿到汪小菲家 喝四碗排骨汤 小霖霖变内向吃的少

张兰太心疼 小玥儿到汪小菲家 喝四碗排骨汤 小霖霖变内向吃的少

鑫鑫说说
2024-12-23 11:21:38
2025年汽车补贴政策继续实行!首次购车补贴或达4万?

2025年汽车补贴政策继续实行!首次购车补贴或达4万?

沙雕小琳琳
2024-12-23 09:28:20
特朗普突然下狠手,就凭这一招,能将全球第三大经济体折磨半死

特朗普突然下狠手,就凭这一招,能将全球第三大经济体折磨半死

梦史
2024-12-22 09:45:28
韦东奕“接班人”现身?清华姚班大三男生走红,气质堪比昔日韦神

韦东奕“接班人”现身?清华姚班大三男生走红,气质堪比昔日韦神

妍妍教育日记
2024-12-22 16:20:02
世俱杯赛后出现两大争议画面,媒体挑衅式提问,中国球迷内讧

世俱杯赛后出现两大争议画面,媒体挑衅式提问,中国球迷内讧

极度说球
2024-12-23 08:40:30
吉利“帕拉梅拉”火了!比保时捷漂亮,销量突破25万台,还买啥比亚迪汉?

吉利“帕拉梅拉”火了!比保时捷漂亮,销量突破25万台,还买啥比亚迪汉?

隔壁说车老王
2024-12-22 17:25:59
因需求过高,ASML 取消非员工订购的 High-NA EUV 光刻机乐高模型

因需求过高,ASML 取消非员工订购的 High-NA EUV 光刻机乐高模型

IT之家
2024-12-23 08:24:36
案例:四川淫父李文忠被执死刑,女儿生前曾求救:疼!妈妈救我

案例:四川淫父李文忠被执死刑,女儿生前曾求救:疼!妈妈救我

红豆讲堂
2024-12-01 10:01:20
岛国最强腿精!绝命黑丝长腿,真的太惊艳了!

岛国最强腿精!绝命黑丝长腿,真的太惊艳了!

云端书馆
2024-12-22 09:20:01
2024-12-23 13:40:49
粤嵌教育培训
粤嵌教育培训
粤嵌教育,IT人才孵化中心!
1622文章数 64关注度
往期回顾 全部

科技要闻

造车十年,李斌对蔚来现状“不那么满意”

头条要闻

90后小伙从湖北徒步3000公里去西藏:被认成70岁大爷

头条要闻

90后小伙从湖北徒步3000公里去西藏:被认成70岁大爷

体育要闻

逆潮流而行!灰熊已成NBA最另类球队

娱乐要闻

韦唯回应消失!出车祸脊柱折断,险些终身残疾

财经要闻

起底黑色产业链:信息黑洞出卖个人隐私

汽车要闻

柴油才对味 大通星际X 2.5T舒适得不像皮卡

态度原创

家居
手机
旅游
本地
公开课

家居要闻

现代简约 注重精神空间

手机要闻

苹果iPhone 16系列年底降价 标准版4999元入手

旅游要闻

上海突然涌入大量韩国人!这些地方大排长龙

本地新闻

好吃潮州|潮州腐乳饼,咸甜党都沦陷了

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版