NEWS
    新闻中心
    AUTOSAR MCAL概述
    发布时间:2023-12-20 浏览数:1277

    在AUTOSAR分层架构模型中,,,最重要且最复杂的是基础软件层 (Basic Software Layer,,BSW) ,,,将基础软件层进一步细化后,,,又分为微控制器抽象层(Microcontroller Abstraction Layer,,,MCAL)、、、ECU抽象层(ECU Abstraction Layer)、、、、服务层(Services Layer)和复杂驱动(Complex Drivers)。。。。其中,,微控制器抽象层(Microcontroller Abstraction Layer,,,,MCAL)位于AUTOSAR分层模型中BSW的最底层。。


    微控制器抽象层(Microcontroller Abstraction Layer,,,MCAL)又可分为:




    微控制器驱动(Microcontroller Drivers)



    存储器驱动(Memory Drivers)



    通信驱动(Communication Drivers)



    I/O驱动(I/O Drivers)


    各个部分又由具体的与微控制器硬件对应的驱动模块组成。。。。




    下面是MCAL模块的详细介绍:


    1、、微控制器驱动

    (Microcontroller Drivers)




    通用定时器驱动(General Purpose Driver,,,GPT Driver)

    该模块使用通用定时器单元的硬件定时器通道,,为操作系统或者其他基础软件模块提供计时功能。。。以达到启动和停止硬件定时器、、、、得到定时器数值、、、、控制时间触发的中断、、控制时间触发的中断唤醒的作用。。

    看门狗驱动(Watchdog Driver,,,,WDG Driver)
    该模块主要功能是初始化和触发看门狗,,包括内部WDG Driver 和外部WDG Driver。。。。

    微控制器单元驱动(Microcontroller Unit Driver,,,,MCU Driver)
    该模块可以直接访问微控制器硬件,,主要功能是初始化、、、、休眠、、、、复位微控制器以及提供其他MCAL软件模块所需的与微控制器相关的特殊功能。。。

    内核测试(Core Test)
    该模块包含周期性测试和启动测试,,,,可以对CPU的所有寄存器进行测试,,,提供中断控制和异常检测。。



    2、、、、存储器驱动

    (Memory Drivers)




    内部EEPROM驱动

    可提供对内部EEPROM进⾏初始化和读、、、、写、、、擦除的服务。。。 

    内部Flash驱动
    为初始化和读、、写、、擦除内部Flash内存提供服务。。

    RAM测试
    通过软件对RAM存储进行测试,,包含后台测试和前台测试。。

    Flash测试
    提供算法来测试诸如数据/程序闪存、、程序SRAM等非易失性存储器。。。。



    3、、、、通信驱动

    (Communication Drivers)




    以太网(Ethernet)驱动

    为以太网提供统一的接口,,,对所使用的以太网控制器的硬件特性进行抽象。。

    FlexRay驱动
    用来抽象不同的FlexRay通信控制器及其硬件相关的特性。。。。FlexRay控制器的所有⽀持特性都封装在FlexRay驱动模块中,,,,并且只能通过这个统⼀的接⼝访问。。

    CAN驱动
    针对微控制器内部的CAN控制器,,,可以实现对CAN控制器进行初始化、、发送和接收报文、、、对报文的数据和功能进行通知(对接收报文的指示、、、对发送报文的确认)、、、溢出和错误处理及唤醒检测功能。。

    LIN驱动
    微控制器抽象层(MCAL)的⼀部分,,,可执⾏硬件访问,,,并向上层提供与硬件⽆关的API,,,,唯⼀能访问LIN驱动程序的上层是LIN接⼝。。

    SPI驱动
    提供了对通过SPI总线连接的设备进⾏读写的服务、、对多个用户(如EEPROM、、、、Watchdog)的SPI通信访问和配置⽚SPI外围设备所需的机制。。。 




    4、、I/O驱动

    (I/O Drivers)




    PORT驱动

    对微控制器的整个PORT模块进行初始化配置,,,许多端⼝和端⼝引脚可以分配到各种功能,,如通用I/0(General Purpose I/O)、、、模数转换(ADC)、、、、脉宽调制(PWM)等功能。。

    DIO驱动
    通过DIO通道(DI channel)、、、、DIO端口(DIO port)以及DIO通道组(DIO channel)提供读写服务。。

    ADC驱动
    该模块初始化和控制微控制器内部的模拟数字转换器单元,,,提供启动和停⽌转换的服务,,,,以启⽤和禁⽤转换的触发器源。。

    PWM驱动
    为微控制器PWM模块提供初始化和控制服务,,可生成周期和占空比都可变的脉冲。。。。

    ICU驱动
    控制微控制器的输入捕获单元(Input Capture Unit),,,可提供信号边沿检测及通知、、、中断唤醒、、、周期性信号时间的测量、、、边沿时间戳捕获、、、、边沿/脉冲计数服务。。 

    OCU驱动
    对输出⽐较单元(Output Compare Unit)进⾏配置,,,,为微控制器内部OCU外设的初始化和控制提供服务。。


    服务热线:

    0551-65691812

    地址:合肥高新区安徽工业技术创新研究院A座
    邮箱:gk.anghui@outlook.com

    Copyright © 2001-2025 安徽国科尊龙时凯科技有限公司 - All Rights Reserved.
    皖ICP备2024030710号-1  
    站点地图