汽车电子控制器处理芯片及ECU板级抽象技术研究报告 - 图文(3)

2019-04-14 15:30

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

图6 通过SPI接口访问各种板级外设

SPIHandlerDriver允许多个客户端对一个或多个SPI总线的并发访问。为了抽象SPI的特征,SPIHandlerDriver要直接处理微控制器中的片选引脚。这就意味着这些引脚对DIO驱动无效。

SPI总线是一种主从多节点总线系统,主节点设置片选(CS)来选择一个从节点来进行数据通信。SPI有一个4线的同步串行接口。使用片选线来激活数据通信。

SPI模块提供基于通道的对SPI总线上的不同设备的读、写和传输访问。SPI通道代表数据元素(8到16比特)。这些通道可能是顺序组合的,不能够被中断。通道有一个静态配置定义的波特率、片选等等。SPI设备通常由所使用的SPI硬件单元和相关的片选线来标识。这个模块能够作为SPI主节点来使用。

这个软件模块的功能范围应该是可静态配置的,以尽可能多的适应每个ECU的时间需要。那就是说,比如同步的、异步的、或者两者都有的SPI访问都可以存在于ECU。因此,两个SPI驱动可以存在,但仅有一个处理接口。

SPI处理程序/驱动提供了一些服务来对通过SPI总线连接的设备进行读写。它提供了所需的机制来配置片上SPI外设。

单片式的SPI处理程序/驱动包含处理和驱动功能。它的主要目标是充分利用每个微控

8

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

制器的特性,使得依赖于静态配置的实现最优化,以尽可能多的适应ECU的需要。

1.2.1.2 LIN驱动

LIN驱动为上层的LIN 接口模块提供硬件抽象接口,负责对LIN 硬件进行控制,比如初始化。对于属于相同LIN硬件单元LIN驱动模块支持多路通道。只支持LIN2.0主节点。其软件架构如下图:

图7 LIN Driver架构

LIN驱动是最底层的一部分,执行硬件访问和为上层提供硬件无关的API。上层唯一能够访问到LIN驱动的就是LIN接口。

一个LIN驱动能够支持一个以上的通道。LIN驱动能够处理一个或多个属于相同LIN硬件单元的LIN通道。

9

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

1.2.1.3 CAN驱动

CAN驱动为上层的CAN 接口模块提供硬件抽象接口,负责对CAN硬件传输进行初始化,实现事件通知,控制属于相同CAN硬件单元的CAN控制器。

CAN驱动尽可能合理地隐藏了相关CAN控制器的硬件专用性。

CAN驱动是最底层的一部分,为上层执行对硬件的访问和提供硬件无关的API。上层中唯一能够访问CAN驱动的是CAN接口。

如果几个CAN控制器属于相同的CAN硬件单元,那么它们能够由CAN驱动来控制。 一个CAN控制器总是与一个物理通道相关联。它被允许与总线上的物理通道相连接,不管CAN接口是否将相关的CAN控制器分别对待。

1.2.1.4 FlexRay驱动

FlexRay驱动为上层的FlexRay 接口模块提供硬件抽象接口,负责对FlexRay 硬件传输进行初始化,实现事件通知,控制属于相同FlexRay 硬件单元的FlexRay 控制器。

FlexRay驱动模块必须为FlexRay接口模块、API的使用者提供统一接口,以访问许多FlexRay通信控制器,这些控制器通常是相同类型的。FlexRay驱动是一个软件层,它将抽象功能请求映射到CC专用硬件的序列上。CC的硬件实现将从FlexRay接口隐藏。

1.2.2 I/O驱动

1.2.2.1 ICU驱动

ICU输入捕获单元驱动:对周期性输入信号进行频率检测以及占空比测量,计算脉冲,解调脉宽调制信号,捕获非周期输入信号,产生相应的中断或唤醒中断。

ICU驱动提供了下列特性:

· 周期性的、低端的、高端的时间测量 · 边缘检测和通知

10

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

· 边缘计数

· 边缘时间戳,可用于获取非周期的信号 · 唤醒中断

对于信号边缘检测来说,需要使用捕获比较单元的边缘检测器或外部时间的中断控制器。

对于信号测量来说,需要一个捕获计时器以及至少一个捕获寄存器。

ICU调制PWM信号,计算脉冲,测量频率和责任(duty)周期,产生简单的中断以及唤醒中断。

为了保证数据一致性,应该提供可重入的代码。 时间单元节拍

为了从寄存器值中获得时间,需要知道振荡器频率、预定标器等等。因为这些设置是在

MCU模块中或其它模块中产生的,不可能计算这些时间。因此,时间和节拍之间的转换是由上层负责的。

1.2.2.2 PWM驱动

PWM脉宽调制驱动负责对微控制器内部PWM端口进行初始化和控制。

每个PWM通道都连接到一个属于微控制器的硬件PWM上。该驱动提供了初始化和控制微处理器内部的PWM的服务。PWM模块产生有不同脉冲宽度的脉冲。

1.2.2.3 ADC驱动

ADC模数转换驱动:负责对微控制器内部ADC端口进行初始化和控制。

ADC驱动初始化并控制微控制器内部的模数转换单元。该驱动包含一系列的基本功能函数。为了能够在某些特殊的应用中进行信号的频率分析(例如,快速傅立叶变换),就需要加强流式存取的功能。

ADC驱动提供以下服务: · 信号值结果的访问模式

11

北京科银京成技术有限公司 汽车电子控制器处理芯片及ECU板级抽象技术研究报告

· 流式访问。

通常,ADC通道的变换请求通过ADC通道组来进行控制。通道组可以运行于持续的变

换模式或者单触发变换模式。 变换处理和交互作用:

在同一时刻,ADC驱动要管理一个以上的被配置成不同变换模式的组。

转换过程:

通常,ADC通道的转换请求通过ADC通道组来进行控制。一个组可以运行于持续的转

换模式或者单触发转换模式。单触发转换模式的触发条件也要被配置和控制。

如果通道运行于不同的模式(例如,在普通操作时采用持续的转换模式,在特定时间点

的特殊转换时使用单触发或者按照命令的转换方式),通道必须被分配给拥有不同操作模式的多个组。

为了改变组间共享的通道的操作模式,应用程序必须停止任何对包含指定通道的组的当

前转换,然后启动包含指定通道的新组的转换。

为了让应用程序能够在任何时候执行立即转换,就要定义一个按照命令的转换方式。它

必须挂起组转换,然后在按照命令的转换活动完成后重新激活它。

1.2.2.4 DIO驱动

DIO数字化I/O驱动负责对DIO通道的管脚和组以及端口进行读写。

DIO驱动提供基于端口和通道的、对内部通用I/O断点的读和写访问。这里的读和写并不被缓冲。这个驱动的基本行为是同步的。

DIO驱动提供了用于对下列设施进行读、写的服务: · DIO通道(引脚) · DIO端口 · DIO通道组

这些服务的行为是同步的。该模块工作于引脚和端口上,由PORT驱动来对它进行配置。因此,在DIO驱动里面就没有对该端口结构进行配置和初始化。

12


汽车电子控制器处理芯片及ECU板级抽象技术研究报告 - 图文(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:护理学基础名词解释及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: