谈谈汽车嵌入式软件

汽车ECU开发 2023-06-04 09:33
什么是嵌入式软件?

嵌入式软件就是嵌入在硬件中的操作系统和开发工具软件,它在产业中的关联关系体现为:芯片设计制造→嵌入式系统软件→嵌入式电子设备开发、制造。

嵌入式软件最基本的理解是软件+硬件结合,来对产品做出定义,而非嵌入式软件又或是纯互联网行业则是单纯的对软件做出定义,其兼容性差,软件移植性差。

传统行业上对嵌入式的应用较为广阔,即便现在互联网行业如此发达,但是不得不承认,传统行业在社会发展中有不可替代的地位。传统行业与互联网的结和的嵌入式开发应用更是具有光明前景的。

嵌入式系统一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序4个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式软件就是基于嵌入式系统设计的软件,它也是计算机软件的一种,同样由程序及其文档组成,是嵌入式系统的重要组成部分。

嵌入式中硬件和软件也不再是截然分开的两个概念,而是紧密结合、相互影响的。因而出现了软硬件协同(codesign)设计方法,即使用统一的方法和工具对软硬件,协同设计软硬件体系结构,以最大限度地挖掘系统软硬件能力,避免由于独立设计软硬件体系结构而带来的种种弊病,得到高性能低代价的优化设计方案。

嵌入式软件的特点:

  • 独特的实用性
嵌入式软件要求它与外部硬件和设备联系紧密,嵌入式系统以应用为中心,嵌入式软件是应用系统,根据应用需求定向开发,面向产业、需要特定的行业经验。每种嵌入式软件都有自己独特的应用环境和实用价值。

  • 灵活的适用性
嵌入式软件通常可以认为是一种模块化软件,它应该能非常方便灵活地运用到各种嵌入式系统中,而不能破坏或更改原有的系统特性和功能。嵌入式软件要使用灵活,应尽量优化配置,减小对系统的整体继承性,升级更换灵活方便。

  • 程序代码精简
由于嵌入式系统本身的应用有小体积、小存储空间、低成本、低功耗等要求,嵌入式软件和大型机上的软件相比,具有代码精简、执行效率高等特点。

  • 可靠性、稳定性高
嵌入式系统应用要求一般较为苛刻,特别是在涉及安全相关的领域,如汽车电子(下面会具体说明汽车软件嵌入式的相关内容)、还有工业控制、航空航天等,这些领域的嵌入式系统不仅要求硬件可靠,还对嵌入式软件提出了更高的要求。嵌入式软件需要运行可靠、稳定,具有错误处理及故障恢复等功能。

嵌入式软件分类:

按照通常的分类方法,嵌入式软件可以分为系统软件、应用软件和支撑软件三大类:

  • 系统软件
系统软件控制和管理嵌入式系统资源,为嵌入式应用提供支持的各种软件,如设备驱动程序、嵌入式操作系统、嵌入式中间件等。

  • 应用软件
应用软件是嵌入式系统中的上层软件,它定义了嵌入式设备的主要功能和用途,并负责与用户进行交互。应用软件是嵌入式系统功能的体现,如飞行控制软件、手机软件、MP3播放软件、电子地图软件等,一般面向特定的应用领域。

  • 支撑软件
支撑软件是指辅助软件开发的工具软件,如在线仿真工具、交叉编译器源程序模拟器和配置管理工具等。

在嵌入式系统当中,系统软件和应用软件运行在目标平台上(即嵌入式设备上),而对于各种软件开发工具来说,它们大部分都运行在开发平台(PC机)上,运行Windows或 Linux操作系统。

嵌入式软件和非嵌入式软件的区别

嵌入式:在已有的硬件上移植(需要修改操作系统源码,安装不需要)操作系统解决软硬件耦合导致的问题。

嵌入式软件和非嵌入式软件的区别(即传统开发和嵌入式开发的优缺点):

传统开发的缺点:

  • 软硬件耦合度高导致软件移植性差
  • 软件开发人员必须懂硬件
  • 软件功能性差

优点:简单,开发成本低

嵌入式开发的优点:

  • 解决传统开发软硬件耦合度导致的问题
  • 多任务机制
  • 提供了丰富的网络协议栈
  • 提供了丰富的开源软件和工具

缺点:硬件成本高

汽车嵌入式软件方向

嵌入式软件部分分为软件架构、软件刷写、底层软件、应用层软件和故障诊断等几个部分。

软件架构:

(1)Boot-loader;
(2)软件平台层;
(3)策略应用层。

Boot-loader作为一个单独的工程开发,生成一个独立的二进制文件。

下图为基于UDS协议的Boot-loader架构:


下图为软件架构:


软件刷写:控制器复位后,将根据外部硬件配置选择boot-to-flash模式,跳转到Boot-loader,执行RAM自检。若自检成功并且检测到有效的应用软件,将跳转到应用软件,否则,进入boot-loader模式,等待刷新有效的应用软件。下图是Boot-loader软件逻辑。


硬件依赖层(底层驱动):包括复杂驱动、看门狗、基础服务(系统调度所需定时器、中断管理和一些通用处理函数,如PLL驱动、Flash驱动、内存管理驱动、定时器驱动)、IO、CAN等其他驱动。

硬件抽象层:对IO口、PWM、CAN、SPI等功能模块进行抽象定义,使得应用程序实现不同底层平台的移植。


软件集成:软件集成就是将应用层软件与底层软件集成为一个可刷写到硬件中的软件,软件集成的变量映射关系详见下图:


底层会根据硬线或者CAN线输入,生成一系列的接口变量(函数),应用层直接调用底层上传的接口变量(函数)。硬件抽象层(HAL)将完成对底层信号到全局变量的映射。为实现硬件更改及平台移植,底层软件平台采用宏和脚本来完成全局变量和API(应用程序接口,例如函数)的自动生成。

VCU整车控制策略:

按功能模块划分有如下功能模块:输入信号处理、输出信号处理、转矩控制、上下电控制、档位模式、系统能力估算、故障诊断处理、附件管理等。


从上图可以看出,整车控制器分为三个层次:最上层为应用层,也称为控制策略层;中间一层为底层,也成为基础平台软件层,它的作用类似电脑中的操作系统,最下面一层为硬件层,就是电脑中的电路板。

版权声明:本文为CSDN博主「819号宇航员」的原创文章
点击阅读原文,关注作者博客,阅读更多!
来源:焉知汽车

分享不易,恳请点个【👍】和【在看】

汽车ECU开发 专注于汽车电子ECU软件开发,技术分享。
评论 (0)
  • BL0910物联网计量,BL0937B单相,内置振荡器,有功电能,有效值,电能计量,BL0939 内置时钟免校准计量芯片 ...
    ,BL0937B是一颗宽量程单相多功能电能计量芯片,适用于单相插座表、 单相插排、 智能家电控制电路等应用,具有较高的性价比。BL0939免校准、用电安全监测、双路、可多路级联。十相交/直流电能计量芯片BL0910
  • 2023版全新高质量商业级小程序全栈项目实战(完结22章)
    2023版全新高质量商业级小程序全栈项目实战,前端小程序开发主要有原生开发、第三方框架开发、H5网页封装三种,从性能及体验上来看,原生开发 > 第三方框架 > H5封装。H5封装也就是把H5网页封装在小程序内,开发成本低,但是体验不太好、性能也不太好,大部分小程序功能无法使用;第三方框架开发小程序都主要目的是为了一次编写多端运行,然而实际上,使用第三方框架开发小程序会有很多兼容性需要去做处理,很多坑需要去踩,有时候开发成本反而比原生开发更高;原生开发实际上就是按照小程序官方文档中的描述去开发小程序,体验和性能是最好的。

    2023版全新高质量商业级小程序全栈项目实战(完结22章),开发小程序需要用到哪些技术:
    1、前端技术
    小程序的界面和交互都是通过前端技术实现的,包括HTML、CSS、JavaScript等。你需要熟练掌握这些技术,特别是JavaScript,因为小程序使用的是一种叫做“微信小程序框架”的JavaScript框架。

    2、后端技术
    小程序需要与后端服务器进行数据交互,所以需要熟悉后端技术,如Node.js、PHP、Python等。

    3、数据库技术
    小程序需要使用数据库存储数据,如MySQL、MongoDB等。

    4、微信小程序开发工具
    微信提供了一款小程序开发工具,它可以提供代码编辑、调试、预览和发布等功能。

  • [11章]SpringBoot3.0 + RocketMq 构建企业级数据中台教程
    SpringBoot3.0 + RocketMq 构建企业级数据中台,所谓数据中台,即实现数据的分层与水平解耦,沉淀公共的数据能力,笔者认为可分为三层,数据模型、数据服务与数据开发,通过数据建模实现跨域数据整合和知识沉淀,通过数据服务实现对于数据的封装和开放,快速、灵活满足上层应用的要求,通过数据开发工具满足个性化数据和应用的需要。

    过去三十年,企业数据管理都以传统的IT架构为基础。每当技术部门为业务部门解决问题时,需要从业务需求的探查、技术壁垒的打通等从上到下各个方面来建设新系统。每个系统的建成都自成一体,各自满足业务部门的需求。这种情况不仅耗费各部门大量的精力也使得各个系统难以打通管理,无法形成更强大的数据能力。

    SpringBoot3.0 + RocketMq 构建企业级数据中台,数据中台是能力共享平台。如今,很多产品应用研发初始都在强调功能性,各个功能存在或多或少的重复性。然而企业对这些产品功能的定义并不相同。当客户产生某些需求时,由于定义的不同,产品功能和功能间的数据很难打通,也无法实现能力共享。
    在数据中台基础上的应用开发并不强调功能性,更注重能力的共享。这种能力就像水电煤一样可以直接向外输出使用,从而满足业务部门和用户的不同需求。

    数据中台如何建设?
    SpringBoot3.0 + RocketMq 构建企业级数据中台,数据中台的建设包括三个阶段,分别是基础架构、技术体系和应用系统。
    基础架构主要由数据标准、数据质量、元数据等组成。在建设过程中,需要根据企业的实际情况进行合理布局。技术体系是数据中台的技术支撑,主要包括业务应用系统、 ETL工具等。通过建立技术体系,可以提升企业在大数据处理上的效率和质量,同时也可以降低企业在大数据平台搭建过程中的成本。应用系统主要包含数据资产管理系统、数据运营管理系统、智能分析系统等。通过建立应用系统,可以有效地提高数据分析的效率。通过建立应用系统,企业可以对各种数据进行统计和分析,进而对业务起到指导作用。
    以上三个阶段是基础架构阶段,是建设数据中台的重要组成部分。通过基础架构阶段,企业可以更好地了解自身的业务情况以及现有的数据情况,在此基础上进行技术体系建设和应用系统建设。
  • 17、谷景0510色环电感封装尺寸及电流升级应用案例分享
    17、谷景0510色环电感封装尺寸及电流升级应用案例分享
  • 16、谷景电子常规0608工字电感性能升级应用案例分享
    16、谷景电子常规0608工字电感性能升级应用案例分享
  • 13、你知道电感感量突变是什么原因造成的吗
    13、你知道电感感量突变是什么原因造成的吗
  • Python多领域场景实战课 快速成为多面手[完结22章]
    [完结22章]Python多领域场景实战课 快速成为多面手,Python在各个编程语言中比较适合新手学习,Python解释器易于扩展,可以使用C、C++或其他可以通过C调用的语言扩展新的功能和数据类型。Python也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。

    python的主要用途有:1、web开发;2、网络爬虫;3、数据科学;4、自动化运维;5、数据库编程;6、网络编程;7、图形处理、数学处理、文本处理;8、多媒体应用。Python是一种广泛使用的高级编程语言,具有易读性、扩展性和多用途性。特别是在数据分析领域,Python提供了如Pandas、NumPy等多种库,这些工具不仅方便了数据清洗和预处理,还能进行高级数据分析和可视化。

    那开发网站需要用到哪些知识呢?
    1、python基础,因为用python开发的,所以python指定要会,最起码你也得会条件判断,循环,函数,类这些知识;
    2、html、css的基础知识,因为要开发网站,网页都html和css写的,最起码这些知识你得会,就算不会写前端,开发不出来特别漂亮的页面,网站,最起码要能看懂html标签是;
    3、数据库基础知识,因为开发一个网站的话,数据存在哪里,就是在数据库里,那你最起码要会数据库的增删改查吧,要不然怎么存数据,取数据呢
      上面这些知识会的话,开发一个简单的小站就没有问题了,如果想开发比较大型的网站,业务逻辑比较复杂的,那就得用到其他的知识了,比如说redis、MQ等等。

    Python语言优点介绍
    (1)语法简洁而清晰,代码的可读性高。Python 的语法要求强制缩进,用这种强制缩进来体现语句间的逻辑关系,显著提高了程序的可读性。
    (2)开发效率高。由于它简单明确,所以它也是开发效率比较高的一种编程语言。
    (3)跨平台特性。Python 可以真正做到跨平台,比如我们开发的程序可以运行在Windows、Linux、MacOS系统下。这是它的可移植性优势。
    (4)大量丰富的库或扩展。Python 常常被昵称为胶水语言,它能够很轻松地把用其他语言编写的各种模块(尤其是 C/C++)轻松地联结在一起。
    (5)代码量少,一定程度上提高了软件质量。由于使用 Python 语言编写的代码量相比别的语言来说小很多,所以说,它出错的概率也要小很多,这在一定程度上也提高了编写的软件的质量。
  • 基于51单片机的智能台灯洞洞板设计技术手册
    基于51单片机的智能台灯洞洞板设计技术手册
  • 基于CH340N的USB转TTL模块-MINI-A技术手册
    基于CH340N的USB转TTL模块-MINI-A技术手册
  • 电动车充电器电路图大全120套
    很全的电动车充电器图纸大全,总共120套,入门提高的必备资料!
  • 设备的唯一编号或者设备的无线MAC地址可以通过不同的方法获取。对于无线MAC地址,可以在许多操作系统中通过特定的命令获取。例如在Linux或macOS中,可以在终端中输入以下命令:bash复制代码ifconfig或者bash复制代码ipconfig/all在Windows中,可以进入命令提示符然后输入:bash复制代码ipconfig /all在上述命令的输出中,可以找到对应无线网卡的物理地址(MAC 地址)。如果你使用的是lvgl,你可以在lvgl的回调函数中获取到硬件的信息,比如无线MAC地
    丙丁先生 2023-09-29 07:57 84浏览
  • 导语:CINNO Research统计数据表明,1H'23中国大陆半导体设备厂商市场规模前十大公司合计超160亿元,同比增长39%,环比下降9%。目前整体半导体市场仍处于下行周期,下游厂商纷纷调整产能及扩产进程以应对市场低谷期,中国大陆半导体设备厂商市场规模短期稍有回落,长期呈稳定增长。CINNO Research统计数据表明,1H'23中国大陆半导体设备厂商市场规模Top10营收合计约162亿元,同比增长39%,环比下降9%。入围1H'23中国大陆半导体设备厂商市场规模Top10与2022年相
    CINNOResearch 2023-09-28 14:00 147浏览
  • 《商业计划书》伟大的梦想促进人类的进步人类的进步孕育出新的人类商业计划是梦想远航的风帆旧人类用交换堆砌梦想能量首先成立公司储备物联网、AIGC、区块链、虚拟货币、核能推进器、等离子风、磁场对核变、基因培养、克隆人培养方面的知识和人才第二步 秘密研发大胆进行商业运作吸纳赞助和运营资金注入研发中第三步 从微型化模型做起从原理、模型、试验、实验、复现、模型放大、规模规划、合理规模,第四步 宇航与宇宙新生儿,机器人与新生儿合体,新人类创造新文明和宇宙新秩序第五步 人类落幕 新地球诞生第六步 新宇宙诞生第
    丙丁先生 2023-09-29 08:34 88浏览
  • 第二十一步 通关失败 全宇宙瞬间毁灭 通关成功就多亮一颗星 照亮地球  ,大家抬头看看 有多少盏星是恐龙点亮的?有哪些是猴子点亮的?有哪些是人类点亮的?哪些是机器人点亮的?第二十二步 新人类和机器人合体,会点亮更多的星星,在规定时间不交作业,宇宙老师会地震欧!总结:站乱会丢失地球能量,会被扣分,接着就是瘟疫,冥界能成为生灵的人是有限的,能吃的生灵的数量级也屈指可数,不要战争了,看看诸葛亮的将星是不是灭了?那周瑜的将星也灭了,一将功成万骨枯,那么多少星星灭了?点亮主星会带亮群星,祝我好运
    丙丁先生 2023-09-29 08:47 104浏览
  • 这款 Pi 5从英国树莓派总部跨洋而来,作为树莓派的官方代理商,上海晶珩EDATEC荣幸地在首发时刻,率先揭开了 Pi 5 的神秘面纱:Raspberry Pi 5:瞩目新生!超越了 Raspberry Pi 4 的巅峰,这是 Raspberry Pi 系列计算机的最新力作。新一代 CPU 性能提升 2-3 倍,GPU 大幅升级,摄像头、显示屏和 USB 接口都得到了全面改进。而这一次的接口革新得益于 Raspberry Pi 自家研发的 RP1 I/O 控制芯片,这是首次在旗舰产品上采用 Ra
    树莓派开发者 2023-09-28 17:41 82浏览
  • ESP-IOT是指Espressif Systems的物联网解决方案。它基于ESP8266和ESP32这两款低功耗、高性能的WiFi芯片,为物联网应用提供了完整的硬件和软件解决方案。ESP-IOT具有以下特点:低功耗:ESP-IOT设备在运行时可以保持低功耗状态,从而长时间运行而不需要频繁更换电池。高速WiFi连接:ESP-IOT设备支持高速WiFi连接,可以快速传输数据,适用于各种需要高速传输的应用场景。完整的开发环境:Espressif Systems提供了完整的开发环境和工具链,可以方便地
    丙丁先生 2023-09-29 07:41 63浏览
  • 您可以在LVGL官方网站上找到LVGL的Win32模拟器下载链接。在网站的主页或下载页面中,您可以找到“下载”或“软件下载”等选项,然后选择Win32模拟器的版本进行下载。在下载页面中,您需要选择适合您电脑系统的Win32模拟器版本,并按照网站上的指示进行下载和安装。通常,下载的文件是一个压缩包,您需要解压缩并按照其中的说明进行安装。请注意,Win32模拟器只是LVGL的一个组件,用于在电脑上仿真LVGL,以便您可以在开发前期专注于LVGL逻辑层面的开发,而不是实际硬件的测试。因此,使用Win3
    丙丁先生 2023-09-29 07:53 80浏览
  • 集睿致远/ASL推出的CS5211是一款可将eDP输入转换为LVDS信号的桥接芯片,CS5211内置LVDS发射机配备灵活的OpenLDI/SPWG位映射,能够驱动单端口或双端口(18/24位)LVDS面板。CS5211的LVDS输出可以配置为支持高达1920x1200分辨率,刷新率为60赫兹。此外,CS5211还具有背光逆变器控制、亮度调节、图像抖动算法和EMI抑制机制等增强显示功能,有利于系统制造商。CS5211特性支持18位单端口、18位双端口、24位单端口和24位双端口LVDS输出支持L
    Mr_李13699759787 2023-09-28 16:52 185浏览
  • 2SJ168规格书2SJ168参数: Pchannel,-60V,-0.5A,RDS(ON),3000mΩ@10V,3680mΩ@4.5V,20Vgs(±V);-1.87Vth(V);SOT232SJ168是一款P沟道MOSFET产品,采用SOT23-3封装。其特性包括额定电压为-60V,额定电流为-0.5A,RDS(ON)参数为3000mΩ(在10V下)和3680mΩ(在4.5V下),以及20Vgs(±V)的电压限制和-1.87Vth的阈值电压。2SJ168适用于多个应用领域。在电源管理、功率
    VBsemi 2023-09-28 17:50 88浏览
  • 《人人都是提示工程师》是一本关于如何设计和优化提示以提升AI模型性能和用户体验的书。这本书由陈明明和李腾龙所著,由人民邮电出版社于2023年出版。 深入的背景介绍让人由浅入深,随着人工智能技术的不断发展,提示工程技术的重要性逐渐凸显。提示工程是指通过设计提示,使AI模型能够更好地理解和回答用户提出的问题或需求。好的提示能够帮助模型更好地理解用户的意图,并生成准确的回答;相反,不好的提示可能导致模型误解用户的问题或产生不准确的回答,从而影响用户体验。因此,如何设计和优化提示成为了一个亟待解决的问
    无言的朝圣 2023-09-29 15:22 30浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦