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

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

3天内不再提示

嵌入式工程师经常遇到哪些难题

工程师人生 来源:wv 作者:简书网 2019-09-20 15:24 次阅读

目前国内的嵌入式开发主要有两种:

一种偏硬,主要使用语言是C语言汇编,例如做驱动开发,这类的开发对硬件要求比较高,短期内比较难掌握,除非是专业人士,另外,这类开发的就业机会比较少,因为国内的硬件设计力量很弱,稍复杂的硬件都交给***或国外公司设计。

一种偏软,主要基于嵌入式操作系统,例如Symbian、LinuxAndroid等等,开发人员主要从事嵌入式操作系统和应用软件的开发;特点是比较容易上手学习,就业机会多,因为嵌入式设备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的最主要工作。

嵌入式软件发展中面临的问题

随着近几年智能硬件的飞速发展,嵌入式工程师的前景非常广阔,很多硬件、软件工程师纷纷转型加入到嵌入式工程师的行列。

中国嵌入式软件产业的发展面临着良好的发展环境与机遇,这包括政府的重视与扶植、信息产业与传统产业的融合机遇、垄断局面尚未形成、中国制造的良好基础、自由软件运动的兴起等等;同时,不可否认的是长期以来,由于人才、宣传、资金等诸多问题以及嵌入式本身所特有的软硬结合特性,使嵌入式软件人才一直处于供不应求的状态。

尽管这几年嵌入式人才不断增加,但仍然无法满足行业巨大的市场需求,尤其是顶尖的嵌入式开发人才稀缺,据了解,国内领先的智能产品开发外包服务平台快包六月的嵌入式开发需求多达50多个,平均每天天一到两个嵌入式开发需求发布,而且酬金几乎都是一万以上,一个门禁嵌入式开发项目酬金高达十五万。

作为一个汇聚众多嵌入式开发工程师人才资源的平台,帮助工程师在项目开发中解决技术难题是快包义不容辞的使命,嵌入式工程师们如何解决嵌入式开发中的遇到的技术难题?

嵌入式微控制器技术的出现给现代工业控制领域带来了一次新的技术革命,嵌入式微控制器组成的系统,其最明显的优势就是可嵌入到任何微型或小型仪器设备中,嵌入式系统在工控领域的应用已越来越受到重视,其实同英语一样,嵌入式系统开发一定要去在实战中演练,要去用,在实践的过程中解决问题,获得经验,慢慢才能成为一个高手,如果只是学而没有练,永远都只能是纸上谈兵,一遇到实际问题便束手无策。

常见的嵌入式系统开发难点

嵌入式系统开发包括这几个方面:硬件,底层软件,应用软件。在这几个方面里,硬件和底层软件结合比较紧密,底层软件和应用软件又交互影响,所以嵌入式系统的硬件和软件结合比较紧密,根据工程师反馈,嵌入式开发所面临的问题主要表现在以下几个方面。

对目标系统的观察和控制:由于嵌入式硬件系统千差万别,软件模块和系统资源也多种多样,要使系统能正常工作,软件开发者必须要对目标系统具有完全的观察和控制能力,例如硬件的各种寄存器、内存空间,操作系统的信号量、消息队列、任务、堆栈等。

涉及多种CPU及多种OS:嵌入式的CPU或处理器可谓多种多样,这包括了Pentium、MIPS、PPC、ARM,XScale等,而且应用都很广,在其上运行的操作系统也有不少,如VxWorks、Linux、Nuclears、WinCE等等,即使在一个公司之内,也会同时使用好几种处理器,甚至几种嵌入式操作系统,如果需要同时调试多种类型的板子,每个板子上又运行着多个任务或进程,那复杂性是可想而知的。

开发工具种类繁多:不仅各种操作系统有各自的开发工具,在同一系统下开发的不同阶段也有不同的开发工具。如在用户的目标板开发初期,需要硬件仿真器来调试硬件系统和基本的驱动程序,在调试应用程序阶段可以使用交互式的开发环境进行软件调试,在测试阶段需要一些专门的测试工具软件进行功能和性能的测试,在生产阶段需要固化程序及出厂检测等等。一般每一种工具都要从不同的供应商处购买,都要单独去学习和掌握,这无疑增加了整个公司的支出和管理的难度。

嵌入式开发工程师除了遇到以上三个常见的问题之外,还会遇到诸多开发难题,比如在嵌入式开发中软件抗干扰问题,关于这个问题,快包产品总监给大家提供了一个可行性方案,供工程师们参考、讨论。

关于软件抗干扰问题和策略,如果在实际应用中能很好的遵循这些原则,再配合硬件电路的抗干扰措施,基本上可以消除干扰影响。但有时往往因为程序本身的复杂度和芯片资源的限制,再加上编程人员本身的能力限制,不能做到十分完善。所以我们只能给出一些建议,至于具体的实现,就需要各位在平时的项目实践中不断的摸索和积累经验。以下是之前有关软件抗干扰的问题答复,谨供参考。

防止干扰最有效的方法是去除干扰源、隔断干扰路径,但往往很难做到,所以只能看单片机抗干扰能力够不够强了。单片机干扰最常见的现象就是复位;至于程序跑飞,其实也可以用软件陷阱和看门狗将程序拉回到复位状态;所以单片机软件抗干扰最重要的是处理好复位状态。

一般单片机都会有一些标志寄存器,可以用来判断复位原因;另外也可以自己在RAM中埋一些标志。在每次程序复位时,通过判断这些标志,可以判断出不同的复位原因;还可以根据不同的标志直接跳到相应的程序。这样可以使程序运行有连续性,用户在使用时也不会察觉到程序被重新复位过。

此外,嵌入式系统变化更新比较快,对开发时间要求比较紧,尤其是消费类产品更是如此,如果有一套功能强大的嵌入式软件集成开发工具可以满足嵌入式软件开发各个阶段的需求,同时又使用方便,界面友好,那是最理想不过了。

有的嵌入式系统的处理能力和存储能力较弱,不能在它上面安装开发软件;有的嵌入式系统的处理器结构特殊,没有可以在上面运行的开发工具,所以,在开发嵌入式系统时,通常需要采取交叉开发的方式进行,快包平台提供嵌入式软件开发、嵌入式系统开发、嵌入式硬件开发等创意服务,只要您在网站发布任务需求,就能够吸引百万专业服务商给您献上最好的嵌入式开发方案,同时快包方案超市也有现成的嵌入式方案,想用的可以通过平台直接与方案商对接,省时又方便。

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

    关注

    5068

    文章

    19019

    浏览量

    303292
  • 工程师
    +关注

    关注

    59

    文章

    1566

    浏览量

    68441
收藏 人收藏

    评论

    相关推荐

    嵌入式QT常见开发方式有哪些?

    嵌入式QT常见开发方式有哪些? 嵌入式工程师在学习和使用Qt进行开发时,常见的几种开发方式包括: 1.Qt Widgets编程: 通过C++代码直接编写GUI应用程序,利用QtWidgets库
    发表于 08-12 10:05

    嵌入式热门领域有哪些?

    通过物联网连接各种物理设备和传感器,促使它们之间实现信息的交换和数据的共享。从智能家居到智能城市,物联网的应用不断扩展,为嵌入式系统工程师带来了广泛的就业机会和发展前景。 自动驾驶 自动驾驶技术作为
    发表于 07-16 09:23

    找STM32硬件开发兼职工程师

    上海做传感器的公司,找STM32硬件开发兼职工程师,会硬件开发,嵌入式软件开发,可项目外包。有意联系:15900460170
    发表于 06-22 19:12

    嵌入式软件工程师如何提升自己?

    嵌入式软件工程师如何提升自己? 作为一名嵌入式软件工程师,在这个充满机遇和挑战的领域里,如何提升自己显得非常重要,它决定了你未来的发展方向和成就。接下来,我们一起探讨一下。 1.奠定扎
    发表于 06-12 11:20

    从事嵌入式方向,一定要软硬件通吃?

    嵌入式系统开发领域,软件和硬件的界限常常模糊不清。一个常见的问题是,嵌入式软件工程师是否需要了解硬件。本文将探讨这一问题的重要性,并分析嵌入式软件
    的头像 发表于 06-05 08:10 1083次阅读
    从事<b class='flag-5'>嵌入式</b>方向,一定要软硬件通吃?

    嵌入式软件工程师和硬件工程师的区别?

    嵌入式软件工程师和硬件工程师的区别? 嵌入式软件工程师 嵌入式软件
    发表于 05-16 11:00

    一款适合嵌入式工程师使用的在线工具

    一款适合嵌入式工程师使用的在线工具,工具有如下功能,如下图所示: 1. 报文校验功能,如下图所示 2. UDP服务端测试工具:该UDP服务端工具可以理解为 “UDP服务端” 或者 “服务器
    发表于 04-09 22:20

    嵌入式工程师需要掌握哪些技术?

    嵌入式工程师需要掌握哪些技术? 嵌入式系统是当今科技领域中的重要组成部分,它们存在于我们生活的方方面面,从智能手机到汽车控制系统,从家电到医疗设备。因此,对于那些想要进入嵌入式行业的
    发表于 03-04 16:38

    嵌入式人工智能的就业方向有哪些?

    的发展方向有很多,门槛高低不一样。下面给大家列举一些相应岗位所需具备的技能: 一:嵌入式Linux,C语言开发工程师,Linux软件开发工程师 LinuxC语言开发 LinuxC语言开发进阶 Linux
    发表于 02-26 10:17

    职位介绍 之 嵌入式开发工程师

    什么是嵌入式软件开发         嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。         它
    的头像 发表于 01-17 17:23 444次阅读

    一名嵌入式工程师的涨薪经历

    下面是一位嵌入式工程师的涨薪经历,希望可以帮助到你,帮到其他的在校学生。   阶段 1 大一到大三这个阶段我与大多数学生相同:   一、学习本专业知识(电子信息类专业) 二、学习嵌入式软件开发需要
    的头像 发表于 01-05 08:39 416次阅读

    嵌入式软件工程师常用的

    最近我换工作了,看见不同嵌入式软件工程师用的平台都不一样,所以我整理了一下。PlatformIO:多平台支持:PlatformIO支持多种嵌入式平台,包括Arduino、ESP8266、ESP32
    的头像 发表于 12-24 08:00 631次阅读
    <b class='flag-5'>嵌入式</b>软件<b class='flag-5'>工程师</b>常用的

    有没有谁做过DSP、微型逆变器/微逆变/大型工业逆变器、嵌入式软件的软硬件高级工程师

    急需 DSP、微型逆变器/微逆变/大型工业逆变器、嵌入式软件等丰富经验的软件高级工程师、硬件高级工程师,深圳,面议面议,自荐/推荐请联系我。欢迎来询zsrfwk@163.com
    发表于 12-14 17:32

    嵌入式硬件和软件哪个好?

    嵌入式硬件和软件哪个好? 嵌入式软硬件工程师哪个更有前途呢?一起来看看。 嵌入式是分为软硬件工程师的,首先我们先来看看
    发表于 12-05 15:17