欢迎关注公众号:Kevin的学习站,博主建立了一个车规级开发交流群,
感兴趣的朋友可以关注公众号,加个人WX:_kevin0123456789,备注:车载。
目录
4、AUTOSAR MCAL
入门-实战:微控制器驱动组
AUTOSAR MCAL专辑目录:
1、AUTOSAR EB tresos下载及安装
2、AUTOSAR-EB tresos Studio使用说明
3、MCLA简介及分组
在第三节中有介绍AUTOSAR
把MCAL
抽象分为4个驱动组,分别为:微控制器驱动组,存储器驱动组,通信驱动组、输入/输出驱动组。这一节将具体介绍MCAL
微控制器驱动组的内容。
4.1、微控制器驱动组
微控制器驱动组主要功能是:完成MCU
内核及外设的配置,包括:MCU驱动(MCU)
、看门狗驱动(WDG)
、通用定时器驱动(GPT)
。
4.1.1、MCU
驱动
MCU驱动
提供微控制器初始化、断电、重启等功能,及MCAL
其他驱动模块所需的特殊函数。
4.1.1.1、MCU驱动
特性:
①、初始化
MCU时钟
、PLL
、分频器、时钟树分配
;②、初始化
RAM
;③、设置
MCU
低功耗模块;④、设置
MCU
重启模式;⑤、提供硬件复位源查询。
4.1.1.2、MCU驱动
模块API
使用方法
如下表,MCU驱动模块
提供了如下API
给上层软件组件调用:
①、Mcu_Init();
功能:初始化
MCU
驱动模块(如 掉电配置、时钟配置、RAM
配置等);参数:
const Mcu_ConfigType *
;返回值:
void
。
②、Mcu_InitClock()
功能:初始化
PLL
时钟和其他相关时钟;参数:
Mcu_ClockType
;返回值:
Std_ReturnType
。成功:E_OK
。不成功:E_NOT_OK
。
③、Mcu_GetPllStatus()
功能:查询
PLL
锁相状态;参数:
void
;返回值:
Mcu_PllStatusType
。有如下3种情况:MCU_PLL_STATUS_UNDEFINED表示
PLL状态未知;
MCU_PLL_LOCKED表示锁相环配置已经成功;
MCU_PLL_UNLOCKED`表示锁相环配置还未成功。
④、Mcu_DistributePllClock()
功能:使能
PLL
时钟;参数:
void
;返回值:
void
。
⑤、Mcu_InitRamSection()
功能:初始化
RAM
,将RAM
填充预设值;参数:
Mcu_RamSectionType
;返回值:
Std_ReturnType
。成功:E_OK
。不成功:E_NOT_OK
。
注:
在
MCU 驱动
模块初始化过程中,API
调用顺序依赖于实际应用,但Mcu_Iint
函数必须在上电后首先执行,调用Mcu_GetPllStatus
查询PLL
锁相状态。
上电后 MCU 驱动
模块初始化 API
调用流程如下:
4.1.2、WDG
驱动
WDG驱动
控制MCU
内部看门狗定时器,提供触发功能和模式选择服务。AUTOSAR
定义了3种模式: Fast Mode
(快速模式)、Slow Mode
(慢速模式)、OFF Mode
(关闭模式)。
4.1.3、GPT
驱动
GPT
驱动初始化、控制MCU
内部的通用定时器,用来产生一次性或者连续性的定时通知。GPT
驱动通常常为操作系统提供定时服务,或者 OS Alarm
负担过重时为 BSW
其他模块提供定时服务。
4.1.3.1、GPT
具有如下功能:
①、启动、停止硬件计时器;
②、获取硬件计时器的值;
③、控制实践触发的中断通知;
④、控制时间触发的唤醒中断(须硬件支持)。
GPT
通道可以设置为连续模式(CONTINUOUS
)或单次模式(ONESHOT
)。
连续模式:定时器到达目标时间会自动清零并继续运行。
单次模式:定时器到达目标时间,即计数值达到设定值时,定时器会自动停止,保持计数值不变,且通道状态从“运行”变为“超时”。
4.1.3.2、GPT
模块常用接口函数
①、Gpt_Init()
功能:初始化
GPT
驱动模块;参数:
const Gpt_ConfigType *
;返回值:
void
。
②、Gpt_EnableNotification()
功能:使能事件通知;
参数:
Gpt_ChannelType
;返回值:
void
。
③、Gpt_StartTimer()
功能:打开
GPT
通道;参数:
Gpt_ChannelType、Gpt_ValueType
,后者需要填入计数值,即GptChannelTickValue
;返回值:
void
。
欢迎关注公众号:Kevin的学习站,博主建立了一个车规级开发交流群,
感兴趣的朋友可以关注公众号,加个人WX:_kevin0123456789,备注:车载。
AUTOSAR MCAL专辑目录:
1、AUTOSAR EB tresos下载及安装
2、AUTOSAR-EB tresos Studio使用说明
3、MCLA简介及分组