从零开始建立AUTOSAR架构下的Boot loader工程(3)——Main函数

本文详细探讨了AUTOSAR架构下Bootloader的Main函数,包括Mcal_Init()初始化MCAL模块,如MCU、PORT和DIO驱动;其他初始化如UDS和看门狗设置;开启定时器;以及进入无限循环执行UDS服务和CAN功能,并判断是否跳转到应用程序。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本篇我们探究 Bootloader里Main函数都做了些什么?首先,在没有看到参考之前,简单地想一想:

  • 本系列第一篇所言,在跳转至Main函数之前,英飞凌的启动文件对core进行了初始化和配置,接下来应该是要初始化MCAL的,不然没法让MCAL的驱动正常工作;
  • 第二个是进行一些判断逻辑,从而决定是留在BOOT还是跳转至APP;
  • 如果是留在BOOT,则持续进行循环,等待UDS诊断请求;
  • 如果是跳转至APP,需要检查一下APP代码的有效性和完整性,无误则跳转。

Step 1:Mcal_Init( )

MCU
MCU模块是MCAL中最重要也是最核心的模块,负责:SCU, GTM, CCU6, GPT12 and STM 外设的配置。主要功能:
• Configuration of Clock, Reset and static low power mode functionalities as specified by AUTOSAR
• Configuration of Trap functionality
• Configuration of global features of GTM, CCU6 and GPT12 required by the BASIC drivers
• Provide library support for other driv

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值