【RTE里Rte_DRead函数和Rte_Read函数在代码里的区别】

前言

使用RTE时,常会使用到Rte_DRead和Rte_Read函数,今天以代码视角看看二者的区别。

应用层

在应用层调用Rte_DRead接口函数读取CAN 信号值。


read_isSignalA = Rte_DRead_Isignal_isSignalA_Isignal_isSignalA();

在应用层调用Rte_Read接口函数读取CAN 信号值。


Rte_Read_ISigGrp_igAAA_020ms_PDU15_ISigGrp_igAAA_020ms_PDU15(&read_AAA_020ms_PDU15);

区别:Rte_DRead接口函数读取单个CAN信号。Rte_DRead接口函数按PDU整体读取信号。

RTE

Rte_ModuleName.h

Rte_DRead函数是在Rte_ModuleName.h做函数宏替换

// Rte_ModuleName.h

#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_RE_Input)
#define Rte_DRead_Isignal_isSignalA_Isignal_isSignalA() (Rte_DRead_Input_Isignal_isSignalA_Isignal_isSignalA())
#endif

Rte_Read函数是在Rte_ModuleName.h做函数宏替换

// Rte_Modu
FUNC (void, Sws_Bmm_CODE) RE_SWC_BMM_5MS_func/* return value & FctID */ ( void ) { ComM_RequestComMode(1,2); if(0 == Rte_Rx_000146_DE_bcm_pepsPowerMode_Uint8_status) { if(2 == Rte_Rx_000146_DE_bcm_pepsPowerMode_Uint8) { pepsPowMode = 1; } } else if(64 == Rte_Rx_000146_DE_bcm_pepsPowerMode_Uint8_status) { pepsPowMode = 0; Rte_Rx_000146_DE_bcm_pepsPowerMode_Uint8=0; } if((0 == Rte_DRead_RPSR_MCUSLEEP_REQ_Uint8_DE_MCUSLEEP_REQ_Uint8())&&((1 == Rte_Rx_000162_DE_KL15_Uint8)||(1 == pepsPowMode))) { Rte_Call_ComM_UserRequest_RequestComMode(COMM_FULL_COMMUNICATION); Rte_Write_App_RunRequest_DE_RunRequest(RTE_MODE_BswM_MDGP_RunRequest_REQUESTED); } else if(1 == Rte_DRead_RPSR_MCUSLEEP_REQ_Uint8_DE_MCUSLEEP_REQ_Uint8()) //else { Rte_Call_ComM_UserRequest_RequestComMode(COMM_NO_COMMUNICATION); Rte_Write_App_RunRequest_DE_RunRequest(RTE_MODE_BswM_MDGP_RunRequest_RELEASED); } else { Rte_Call_ComM_UserRequest_RequestComMode(COMM_SILENT_COMMUNICATION); } Dcm_GetSesCtrlType(&Dcm_section); Nm_state = CanNm_RamData_s[0].State_en; if(MDSM_VbMDSM_PwrDownReq_flg && (Dcm_section ==1) && (Nm_state == 4)) { time_cnt ++; if(time_cnt>60000) { time_cnt = 0; Wdg_27_INT_SetMode(WDGIF_OFF_MODE); Mcu_PerformReset(); } } else { time_cnt = 0; } /* Handle UnderVol trigger NVM store */ if(TRUE == Rte_IsUpdated_SR_UnderVol_Flag_Uint8_DE_UderVol_Flag()) { Rte_Read_SR_UnderVol_Flag_Uint8_DE_UderVol_Flag(&Vol_UnderFlag); } if(Vol_UnderFlag == 1) //abnoraml { Rte_Write_App_UnderVolReq_DE_UnderVolReq(RTE_MODE_BswM_MDGP_UnderVolRequest_UnderVol_Req); Vol_UnderFlag = 0; } else if(Vol_UnderFlag == 2) //normal { Rte_Write_App_UnderVolReq_DE_UnderVolReq(RTE_MODE_BswM_MDGP_UnderVolRequest_UnderVol_Rel); Vol_UnderFlag = 0; } /* transfomer app cur mode to App */ Rte_Write_PPSR_MCU_CURMODE_Uint8_DE_MCU_CURMODE_Uint8(Rte_Mode_RPMD_RteBswMMode_MDGP_RteBswmMode());}
最新发布
10-11
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值