0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

加速嵌入式固件开发的小技巧

工程师进阶笔记 来源:工程师进阶笔记 2023-08-03 17:26 次阅读

产品投入市场的速度对产品的成功与否至关重要。对于创业团队和小规模企业来说,面对在尽可能短的时间发布嵌入式软件项目的压力也就更大。下面所阐述的5个加速固件开发的小贴士,尽管它们显而易见,但是在实践中很少得到很好的应用。

1指定一个可行的计划

在过去的几年内,我曾遇到很多的这样的项目,从项目的开始阶段,开发人员的进度往往落后于计划数个星期。项目管理者在对功能的复杂性和可能遇到的技术难点预计不足情况下,就为产品设定了一个交付日期,如果产品在设定的时间内没有交付,他们就认为项目是失败的。

造成总是落后于进度的原因在于开发人员常常在压力下工作。在高压力的环境下,人体会分泌肾上腺皮质醇供给给大脑。肾上腺皮质醇将会降低人的推理和判断的能力。为了赶进度,而让团队在高压力下工作,这样往往达不到你所想要的结果。制定一个合理的计划,将有效的缓解压力,让工程师更高效的工作。从而保证项目按照计划完成。

2优先设计架构

当交付的时间很短时,开发人员的第一反应是跳过架构设计阶段,直接开始软件开发。之所以这样想,是因为时间很紧迫,进行软件架构固然好,但是太费时了。

为了更快交付软件,开发人员需要仔细思考软件的设计,并计划好所要做的事项。架构是软件产品的蓝图。没有架构,开发人员是无法交付正确的固件,就如同没有蓝图,建筑工人是无法建造楼房一样。

3不要重复制作自己的调度器

对于嵌入式软件开发者来说,编写一个实时调度器或者实时操作系统(RTOS)是让人兴奋的有益的尝试。问题是从零开始设计一个调度器,要让这个调度器在所有操作条件下都正常工作,需要很大的努力可以做到的。开发人员需要浪费大量的时间用在设计固件组件,而这些组件已经存在于许多市面上的实时操作系统上了。一些实时操作系统,例如 FreeRTOS,是免费的。其他的也就需要很少的费用。利用商业化现成的调度器,而不是自己开发,这样可以缩短开发周期,甚至有可能大大提高系统的质量和稳定性。

4利用现有的中间件和驱动框架

微控制器已经变得极其复杂,其功能已经和90年代中期的通用计算机的处理单元相当。高端的微控制器有板载缓存、DMA和大量的外围设备,并以超出200MHz的时钟频率运行。从新开始设计开发这样复杂的设备将会耗费大把的时间。

应该把时间花在寻找设备供应商或者第三方组件提供者,这样可以把注意力从硬件设计转移到软件实施阶段。利用现有的中间件和驱动程序的框架,可以让开发人员把精力放在产品差异性和特性的开发上,而不是放在研究硬件如何工作上。

5找对人

软件工程师是高智商的人群,他们无所不能。问题是如果工程师是对某个应用领域不熟悉,他们往往会花很多的时间,尽管他们无所不能。

当交付时间很短,不要把没有经验的菜鸟放入项目组中,取而代之的是某个领域的专家。也许大家都知道要用专家,但是由于时间紧迫,许多团队随便调配一些人加入项目组。这样做的结果会使项目失去推动力,造成延迟交付。从短期来看,使用领域专家需要更多的钱,但是从长远看,项目可以按时交付,开发的功能正确,这些远远超出了付出的金钱。

最后一些想法:也许有人会认为这些如何缓解项目时间压力、按时交付项目的贴士说起来很显而易见,做起来难。以上五个贴士看起来都是常识。但是当压力来临,这些常识经常会被抛出九霄云外。只有认真和纪律性强的工程师和团队才能时刻保持警醒,按照这些常识来行事。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5068

    文章

    19014

    浏览量

    303144
  • 操作系统
    +关注

    关注

    37

    文章

    6734

    浏览量

    123186
  • 固件
    +关注

    关注

    10

    文章

    550

    浏览量

    22962
  • RTOS
    +关注

    关注

    21

    文章

    809

    浏览量

    119417

原文标题:分享 5 条实用建议,助你加速嵌入式固件开发。

文章出处:【微信号:工程师进阶笔记,微信公众号:工程师进阶笔记】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    嵌入式MCU固件开发与应用图解

    NXP图说:嵌入式MCU固件开发与应用
    发表于 04-13 11:48

    关于嵌入式固件开发方法的探讨

    嵌入式平台的高级 UEFI 开发环境• Byosoft* 关于嵌入式固件开发方法的探讨• SBS* 关于
    发表于 11-05 06:17

    嵌入式系统固件开发与调试相关资料分享

    嵌入式系统固件开发与调试主要学习• ❖ 嵌入式系统的质量属性(quality attributes)• ❖ 嵌入式系统的设计与
    发表于 12-14 07:26

    基于ARM的嵌入式开发

    基于ARM的嵌入式开发:华清远见/孙天泽基于ARM的嵌入式开发内容有:ARM简介,基于ARM的嵌入式产品,ARM架构,基于ARM的嵌入式开发
    发表于 10-04 08:49 83次下载

    嵌入式LINUX开发基础知识

    嵌入式LINUX简介,嵌入式LINUX开发平台简介,嵌入式LINUX开发流程,建立嵌入式LINU
    发表于 07-31 21:34 261次下载

    嵌入式开发

    嵌入式开发就是指在嵌入式操作系统下进行开发嵌入式Linux是以Linux为基础的嵌入式作业系统。这里提供了
    发表于 12-20 13:21
    <b class='flag-5'>嵌入式开发</b>

    嵌入式开发固件的详细烧录方式

    嵌入式开发固件的详细烧录方式
    发表于 10-30 08:34 14次下载
    <b class='flag-5'>嵌入式开发</b>中<b class='flag-5'>固件</b>的详细烧录方式

    AI开发平台如何帮助嵌入式开发加速应用产品化落地

    本文档的主要内容详细介绍的是AI开发平台如何帮助嵌入式开发加速应用产品化落地包括了:嵌入式AI的发展现状与挑战,Toybrick AI开发
    发表于 07-30 08:00 0次下载
    AI<b class='flag-5'>开发</b>平台如何帮助<b class='flag-5'>嵌入式开发</b>者<b class='flag-5'>加速</b>应用产品化落地

    嵌入式固件烧录方式

    1、固件固件,firmware所谓固件,就是文件,固化在存储介质上的文件,而文件,其实就是数据。嵌入式开发中,尤其是Linux开发,常见的方
    发表于 10-20 15:51 5次下载
    <b class='flag-5'>嵌入式</b>的<b class='flag-5'>固件</b>烧录方式

    嵌入式开发资料免费分享

    嵌入式开发资料免费分享嵌入式工程师经验分享:如何学习嵌入式开发截取文档部分学习嵌入式工程师经验分享的资料分享给大家,文档上从、嵌入式系统的概
    发表于 10-21 11:07 47次下载
    <b class='flag-5'>嵌入式开发</b>资料免费分享

    uefi 嵌入式Linux,面向嵌入式平台的高级UEFI开发环境.PDF

    嵌入式平台的高级 UEFI 开发环境• Byosoft* 关于嵌入式固件开发方法的探讨• SBS* 关于
    发表于 11-02 13:06 14次下载
    uefi <b class='flag-5'>嵌入式</b>Linux,面向<b class='flag-5'>嵌入式</b>平台的高级UEFI<b class='flag-5'>开发</b>环境.PDF

    视频教程-嵌入式Linux开发基础-嵌入式

    嵌入式Linux开发基础 嵌入式工程师、嵌入式讲师、10多年
    发表于 11-02 13:21 30次下载
    视频教程-<b class='flag-5'>嵌入式</b>Linux<b class='flag-5'>开发</b>基础-<b class='flag-5'>嵌入式</b>

    python做嵌入式开发_Python和嵌入式的区别是什么?可以做嵌入式开发吗?

    从概念上来说,嵌入式和Python的区别还是比较明显的,嵌入式是一个开发领域,而Python则是一门编程语言。下面就来和大家说一说嵌入式和Python这两个之间的区别。
    发表于 11-02 20:21 14次下载
    python做<b class='flag-5'>嵌入式开发</b>_Python和<b class='flag-5'>嵌入式</b>的区别是什么?可以做<b class='flag-5'>嵌入式开发</b>吗?

    小型和受限嵌入式系统的固件验证

    今天我们来介绍一下小型和受限嵌入式系统的固件验证。每个嵌入式系统都基于其执行的代码(固件、软件和 RTL 等)运行。
    的头像 发表于 04-18 14:46 1397次阅读

    加速嵌入式固件开发的5条建议

    将产品投入市场的速度对产品的成功与否至关重要。对于创业团队和小规模企业来说,面对在尽可能短的时间发布嵌入式软件项目的压力也就更大。下面所阐述的5个加速固件开发的小贴士,尽管它们显而易见
    发表于 07-17 11:11 197次阅读