7大嵌入式开发技巧你知道吗?

2022年10月14日13:49:38 科技 1588

一些学习嵌入式的学员都会觉得嵌入式太难了,要不要放弃了?学习嵌入式有什么技巧吗?等等,对于这些问题大家肯定都很熟悉吧,下面可以一起来了解下嵌入式开发7大技巧哦。

点击获取1V1嵌入式学习规划,现在还送100G精选学习资料。(长按复制搜索链接)

https://s.pdb2.com/l/CMIsoKcnATFIF4M

7大嵌入式开发技巧你知道吗? - 天天要闻

成为一个正式的嵌入式开发工程师——它是一个艰辛的过程,需要开发人员维护和管理系统的每个比特和字节。

从规范完善的开发周期到严格执行和系统检查,开发高可靠性嵌入式系统的技术有许多种。今天给大家介绍7个易操作且可以长久使用的技巧,它们对于确保系统更加可靠地运行并捕获异常行为大有帮助。

No.1用已知值填充ROM

软件开发人员往往都是非常乐观的一群人,只要让他们的代码忠实地长时间地运行就可以了,仅此而已。微控制器跳出应用程序空间并在非预想的代码空间中执行这种情况似乎是相当少有的。然而,这种情况发生的机会并不比缓存溢出或错误指针失去引用少。它确实会发生,发生这种情况后的系统行为将是不确定的,因为默认情况下内存空间都是0xFF,或者由于内存区通常没有写过,其中的值可能只有上帝才知道。

No.2检查应用程序的CRC

嵌入式工程师来说一个很大的好处是,我们的IDE和工具链可以自动产生应用程序或内存空间校验和(Checksum),从而根据这个校验和验证应用程序是否完好。有趣的是,在许多这些案例中,只有在将程序代码加载到设备时,才会用到校验和。

No.3在启动时执行RAM检查

为了建立一个更加可靠和扎实的系统,确保系统硬件正常工作非常重要。毕竟硬件会发生故障。(幸运的是软件永远不会发生故障,软件只会做代码要它做的事,不管是正确的还是错误的)。在启动时验证RAM的内部或外部没有问题,是确保硬件可以如预期般运作的一个好方法。

No.4使用堆栈监视器

对许多的嵌入式开发者而言,堆栈似乎是一股相当神秘的力量。当奇怪的事情开始发生,工程师终于被难倒了,他们开始思考,也许堆栈中发生了什么事。结果是盲目地调整堆栈的大小和位置等等。但该错误往往是与堆栈无关的,但怎能如此确定?毕竟,有多少工程师真的实际执行过最坏情况下的堆栈大小分析?

堆栈大小是在编译时就静态分配好的,但堆栈是以动态的方式使用的。随着代码的执行,应用程序需要的变量、返回的地址和其它信息被不断存储在堆栈中。这种机制导致堆栈在其分配的内存中不断增长。然而,这种增长有时会超出编译时确定的容量极限,导致堆栈破坏相邻内存区域的数据。

No.5使用MPU

在过去,是很难在一个小而廉价的微控制器中找到内存保护单元(MPU)的,但这种情况已经开始改变。现在从高端到低端的微控制器都已经有MPU,而这些 MPU为嵌入式软件开发人员提供了一个可以大幅提高其固件(firmware)鲁棒性(robustness)的机会。

No.6建立一个强大的看门狗系统

你经常会发现的一种总是最受喜爱的看门狗(watchdog)实现是,在看门狗被启用之处(这是一个很好的开始),但也是可以用周期性定时器将该看门狗清零之处;定时器的启用是完全与程序中出现的任何情况隔离的。使用看门狗的目的是协助确保如果出现错误,看门狗不会被清零,即当工作暂停,系统会被迫去执行硬件重设定(hardware reset),以便恢复。使用与系统活动独立的定时器可以让看门狗保持清零,即使系统已失效。

No.7避免易失存储器分配

不习惯在资源有限环境下工作的工程师,可能会试图使用其编程语言的特性,这种语言让他们可以使用易失存储器分配。毕竟,这是一种常在计算器系统中使用的技术,在计算器系统中,只有在有必要时,内存才会被分配。例如,以C开发时,工程师可能倾向于使用malloc来分配在堆(heap)上的空间。有一个操作会执行,一旦完成,可以使用free将被分配的内存返回,以便堆的使用。

以上介绍的就是嵌入式开发的7大技巧了,这些技巧也只是帮助大家更近一点的学习嵌入式而已,不过,教程是可以让开发技术人员获取更好嵌入式系统的办法。

for (i = 0; i < 8; i++)

{

SetData((data >> i) & 0x1);

SetClockHigh();

for (j = 0; j < 5; j++);

SetClockLow();

for (j = 0; j < 5; j++);

}

科技分类资讯推荐

苹果Vision Pro头显新专利:屏幕位置/角度随心调,提升佩戴舒适度 - 天天要闻

苹果Vision Pro头显新专利:屏幕位置/角度随心调,提升佩戴舒适度

【TechWeb】科技媒体PatentlyApple报道称,苹果公司最近获得了一项关于Vision Pro头显的新专利,该专利的目的是为了提升头显的佩戴舒适度。这项专利的核心创新在于允许用户根据个人偏好和需求调整屏幕的位置。专利描述显示,这款头显包含一个显示单元和一个固定带,用户可以通过固定带佩戴头显,让屏幕位于眼睛前方。头显配...
2025西门子Simcenter仿真与试验技术峰会在皖成功举办 - 天天要闻

2025西门子Simcenter仿真与试验技术峰会在皖成功举办

5 月 23 日,为期四天的 2025 西门子大中华区 Simcenter 仿真与试验技术峰会在合肥圆满落幕。大会以“工程创新,智启未来”为主题,汇聚千余位制造业行业精英、技术领袖,及西门子全球专家,聚焦仿真与试验前沿技术的发展与实践,共探人工智能 (AI) 与数字孪生双轮驱动的数智化产业变革趋势。 Simcenter —— 全维度仿真能...
华为鸿蒙折叠电脑预约量达11万 部分版本已显示缺货 - 天天要闻

华为鸿蒙折叠电脑预约量达11万 部分版本已显示缺货

【CNMO科技消息】据CNMO了解,截至5月22日午间,华为旗下售价23999元起的鸿蒙折叠电脑 ——HUAWEI MateBook Fold 非凡大师预约人数达到11万。该款折叠电脑于5月19日在nova 14系列及鸿蒙电脑新品发布会上正式推出。华为首款鸿蒙折叠电脑作为华为首款超薄折叠电脑,它重1.16kg,平展薄度为7.3mm,闭合薄度为14.9mm。其
真我 Neo7 Turbo 手机搭载 7200mAh 电池 + 100W 快充 - 天天要闻

真我 Neo7 Turbo 手机搭载 7200mAh 电池 + 100W 快充

IT之家 5 月 23 日消息,真我 Neo7 Turbo 手机将于 5 月 29 日 14:00 发布,realme 官方今日确认这款新机搭载 7200mAh 泰坦电池,支持 100W 快充。除此之外,这款新机还支持全场景旁路充电,游戏、视频、直播等多种场景边充边玩。IT之家注意到,今年 2 月发布的真我 GT7 Pro 竞速版手机便搭载旁路充电技术,宣称
逆境铸辉煌:美国打压下小米3纳米芯片横空出世 - 天天要闻

逆境铸辉煌:美国打压下小米3纳米芯片横空出世

在全球科技竞争的激烈浪潮中,近年来,美国为了维持自身科技霸权地位,对中国科技企业发起了一轮又一轮的打压,其手段不断升级,通过技术封锁、制裁禁令等一系列不合理举措,妄图遏制中国科技产业的蓬勃发展,阻碍中国科技崛起的步伐。
开源引擎Godot已为visionOS提供基本支持 - 天天要闻

开源引擎Godot已为visionOS提供基本支持

上个月,在开源游戏引擎 Godot 的 GitHub 代码仓库中,发生了一件备受瞩目的事情。visionOS 工程团队里的一位苹果员工,提交了一个规模庞大的拉取请求。这一请求意味着数千行代码被添加到 Godot 中,专门用于实现对 visionOS 平台的支持。与此同时,该员工还正式提交书面申请,希望将这些代码合并到 Godot 的主分支里。这一...
首发密集、消费场景上新……文博会亮点多多气象新 - 天天要闻

首发密集、消费场景上新……文博会亮点多多气象新

第二十一届文博会昨日在深圳开幕,六千多家政府组团、文化机构和企业线上线下参展,比上届增加265家。今天是文博会开幕的第二天,有哪些新品亮相?还有哪些亮点值得期待?总台央视记者 杜思源:在文博会的各个展区,都设有发布专区,每天大约有二十多场新品发布会在这里举行。首发密集打造文化新品超级发布平台除了专区,在...