- 博客(19)
- 收藏
- 关注
原创 【CP AUTOSAR】CanNm(CANNetworkManagement)分析和使用
本文介绍CP AUTOSAR 架构下的CanNm组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。CanNm组件位于Communication Services层,上层为Nm,下层为CanIf,大多数情况下只与这两个组件交互。CanNm组件基于AUTOSAR标准实现ECU与ECU之间的网络管理。上图为CP AUTOSAR CAN网络架构。CanNm实现了以CAN为通信的AUTOSAR直接式网络协议。
2025-03-26 15:18:31
795
原创 【CP AUTOSAR】CanSM(CANStateManager)分析和使用
本文介绍CP AUTOSAR 架构下的CanSM组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。CanSM组件位于Communication Services层,通常被ComM所调用。CanSM组件负责管理CAN总线的状态。上图为CP AUTOSAR CAN网络架构。
2025-03-07 15:58:49
772
原创 【CP AUTOSAR】CanTrcv(CANTransceiverDriver)分析和使用
本文介绍CP AUTOSAR 架构下的CanTrcv组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。CanTrcv组件位于Communication Hardware Abstraction层,通常被CanIf所调用。CanTrcv组件负责管理ECU上的CAN收发器芯片。上图为CP AUTOSAR CAN网络架构。本文文字描述多点,更像是本人的使用笔记,仅供参考,如有不对地方欢迎指教。
2025-02-14 17:50:51
1010
原创 【CP AUTOSAR】PduR(PDURouter)分析和使用
本文介绍CP AUTOSAR 架构下的PduR组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。PduR组件位于Communication Services层。PduR组件实现I-PDU的路由转发和网关功能,即源模块的数据转发到目的模块。上图为CP AUTOSAR CAN网络架构。本文文字描述多点,更像是本人的使用笔记,仅供参考,如有不对地方欢迎指教。本文也没有描述PduR在多核分区中的功能。
2025-02-09 22:33:01
654
原创 【CP AUTOSAR】CanTp(CANTransportLayer)分析和使用
本文介绍CP AUTOSAR 架构下的CanTp组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。CanTp组件位于Communication Services层,是Can Interface的上层和PDURouter的下层。CanTp组件实现MCU的CAN数据流的拆分、重组、流控制等,即对CAN多帧进行组包拆包然后传给上层。上图为CP AUTOSAR CAN网络架构。
2025-01-17 20:34:40
967
原创 【CP AUTOSAR】Icu(ICUDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Icu组件,基于S32K312芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片输入捕获外设等功能。Icu组件实现MCU的输入捕获功能。Icu组件位于I/O Drivers层里,为上层组件IoHwAb提供接口。Icu组件要实现各种测量模式,需要注意对应的硬件通道支不支持该测量模式,比如周期测量要注意测量的周期是否超过硬件的计数器最大值,超过了那就返回的tick就不准了。
2025-01-17 20:34:14
2179
原创 【CP AUTOSAR】CanIf(CANInterface)分析和使用
本文介绍CP AUTOSAR 架构下的CanIf组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。CanIf组件位于Communication Hardware Abstraction层,是Can Driver的接口层。CanIf组件实现MCU的CAN数据收发、模式控制,被上层CanTp、Dcm、CanNm等调用。上图为CP AUTOSAR CAN网络架构。
2025-01-17 20:34:00
1215
原创 【CP AUTOSAR】Can(CANDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Can组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。Can组件位于Communication Drivers层,是AUTOSAR CAN STACK架构里位于最底层的驱动代码,被上层组件CanIf所调用。Can组件实现MCU的CAN数据收发、模式控制。本文不具体介绍MCU的CAN寄存器和CAN总线技术。上图为CP AUTOSAR CAN网络架构。
2025-01-17 20:33:47
1025
原创 【CP AUTOSAR】MemIf(MemoryAbstractionInterface)分析和使用
本文介绍CP AUTOSAR 架构下的MemIf组件,基于S32K312芯片、Vector提供的CBD包,使用DaVinci Configurator工具进行配置的经验。MemIf组件位于Memory Hardware Abstraction层里,是Fee和Ea的抽象层,NVRAM组件通过MemIf来访问Fee和Ea。上图为CP AUTOSAR存储架构。MemIf给上层组件NVRAM使用,总的来说不复杂,只是在Fee和Ea的接口上再封装一层。
2025-01-17 20:33:37
1031
原创 【CP AUTOSAR】Fee(FlashEEPROMEmulation)分析和使用
本文介绍CP AUTOSAR 架构下的Fee组件,基于S32K312芯片、NXP提供的RTD包,使用EB Tresos工具进行配置的经验。Fee组件实现FLASH的模拟EEPROM功能,即更合理的分配FLASH的资源,通过软件算法更大限度的利用FLASH延长使用寿命。Fee组件位于Memory Hardware Abstraction层里,为上层MemIf提供接口,下层是Fls组件。
2025-01-17 20:33:27
899
原创 【CP AUTOSAR】Fls(FlashDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Fls组件,基于S32K312芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片FLASH、存储外设等功能。Fls组件实现MCU内部FLASH、外部FLASH的读、写、擦除、比较、块检查等功能。Fls组件允许将FLASH驱动加载到RAM里执行操作。Fls组件位于Memory Drivers层里,为上层Fee提供接口,Fls组件本身不关注FLASH的校验、冗余设计等,这些逻辑由Fee组件完成。
2025-01-17 20:33:17
1211
原创 【CP AUTOSAR】Mcu(MCUDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Mcu组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片时钟外设等功能。Mcu组件实现时钟的初始化、RAM初始化、复位原因获取、电源模式设置等功能。Mcu组件位于Microcontroller Drivers层里。Mcu组件复杂点的还是时钟的配置,时钟这块一定要第一个配好,因为有些其他组件会和Mcu组件里配置的时钟有相关联,比如组件参考时钟、外设时钟等。
2025-01-17 20:32:59
2980
原创 【CP AUTOSAR】Pwm(PWMDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Pwm组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片Pwm外设的功能。Pwm组件实现Pwm的驱动,具有设置占空比、周期等功能,为上层组件IoHwAb提供接口。Pwm组件位于I/O Drivers层里。要注意使用的底层外设不能和其他组件有冲突。
2025-01-17 20:32:46
1241
原创 【CP AUTOSAR】Gpt(GPTDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Gpt组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片定时器外设的功能。Gpt组件用来控制芯片上的定时器开关、获取定时器的值、触发定时器中断、触发定时器唤醒事件等,但芯片上不一定所有的定时器都是由Gpt控制,也有可能是Cdd控制。Gpt组件为其他组件提供时基,比如PWM、ICU、OCU。Gpt组件位于Microcontroller Drivers层里。
2025-01-17 20:32:25
1716
原创 【CP AUTOSAR】Adc(ADCDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Adc组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片Adc外设的功能。Adc组件实现Adc的驱动,具有单次转换、连续转换、软件触发、硬件触发等模式,为上层组件IoHwAb提供接口。Adc组件位于I/O Drivers层里。
2025-01-17 20:31:58
2639
原创 【CP AUTOSAR】Spi(SPIHandlerDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Spi组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片SPI外设的功能。Spi组件实现了SPI的传输,可以给外围器件如FLASH、EEPROM提供驱动接口。Spi组件位于Communication Drivers层里。AUTOSAR文档里写了SPI驱动不支持从机模式,但S32K的MCAL设置里还是有支持从机的选项。
2025-01-17 20:31:39
4383
6
原创 【CP AUTOSAR】Port(PortDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Port组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片端口外设的功能。Port组件实现MCU的端口的设置,可以设置端口的方向、初始化电平、端口属性、可以设置端口模式为普通IO、ADC、SPI、SCI、PWM等。Port组件为上层组件IoHwAb提供接口。Port组件位于I/O Drivers层里。
2025-01-17 20:31:24
1328
原创 【CP AUTOSAR】Dio(DIODriver)分析和使用
本文介绍CP AUTOSAR 架构下的Dio组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片GPIO外设的功能。Dio组件实现MCU的普通IO的读写、翻转,为上层组件IoHwAb提供接口。Dio组件位于I/O Drivers层里。使用Dio组件之前,必须先使用Port组件对引脚进行初始化。
2025-01-17 20:31:12
1424
原创 【CP AUTOSAR】Wdg(WatchdogDriver)分析和使用
本文介绍CP AUTOSAR 架构下的Wdg组件,基于S32K144芯片、NXP提供的MCAL包,使用EB Tresos工具进行配置的经验,不具体介绍芯片看门狗外设的功能。Wdg组件实现MCU的内部看门狗驱动,提供给上层组件WdgIf,给予看门狗的开启、关闭、喂狗、喂狗时间设置功能。Wdg组件位于Microcontroller Drivers层里。占用定时器资源,只适合在AUTOSAR架构里使用。
2025-01-17 20:30:52
2790
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人