tags: AUTOSAR
AUTOSAR COM plays a connecting role in the entire COM STACK COMPOENT, and is mainly responsible for sending and receiving data interactively with APPLICATION and IF. The specific content will be analyzed later

It consists of Signal/Signal Group/PDU and other information, whether it is LIN/CAN/FR application messages will eventually be mapped to COM Layer, that is to say, there is only the concept of Signal/Signal Group/PDU in COM Layer, and it will not pay attention to its By what method is it transmitted (LIN/CAN/FR)

Send a SIGNAL via Com_SendSignal request
Com_SendSignal just updates the value to COM Buffer, and Com_MainFunctionTx will actually start the process of sending data to CAN BUS, so the call cycle of Com_MainFunctionTx determines the sending delay of TX message
CAN Write Process

Signal GroupThe role of is to be able to have a strong associationsignalassigned to aGroupmiddle, in aSignal Group ofSIGNAL no matter sendor receive as a whole
Com_SendSignal (GroupSignal1, &SigBuffer1);
Com_SendSignal (GroupSignal2, &SigBuffer2);
Com_SendSignalGroup (SignalGroupA); 、
For Signal Group, when Com_SendSignal is called, Value will be temporarily put into shadow Buffer, and when Com_SendSignalGroup is called, the content stored in shadow Buffer will be updated to COM Buffer together, thus achieving the effect of synchronous update
Com_TxConfirmation is triggered by Can_MainFunction_Write
Com_TxConfirmation is triggered by Com_MainFunctionTx, because the period of Can_MainFunction_Write is often shorter than that of Com_TxConfirmation, so it can be considered that the delay of DEFERRED is greater than that of IMMEDIATE. If the period of the two is the same, there will be no change
Com Layer provides a Transmission Timeout mechanism to monitor whether the transmitted message is received within the specified time
The calculation method is from sending the COM trigger (Com_SendSignal / Com_TriggerIPduSend /cyclic triggers) to receiving the corresponding Confirmation
A scheduled Timeout Callback is executed when the timeout expires

Divided into ComTxModeTrue and ComTxModeFalse two Modes
Each transmission mode includes two types of message transmission, namely Cycle and Event. When the result of transmission mode arbitration Rule is TRUE, the transmission mode will enter TRUE Mode, and report according to the message transmission type defined under TRUE Mode. Otherwise, it will enter FALSE Mode, and send messages according to the message sending type defined under FALSE Mode
For the Event message sending type, it should be emphasized that only the Triggered or Triggered On Change attribute is included in the ComTransferProperty configuration, the Event message sending will be triggered

For messages containing Event sending types (MIXED, DIRECT), it should be emphasized that only when the ComTransferProperty configuration contains the Triggered or Triggered On Change attribute, the sending of Event messages will be triggered
It can be set separately for signal Group or signal, mainly divided into the following 4 attributes.
Pending
Triggered
Triggered on Change
None
Signal Group Transfer Property

Signal Transfer Property

At the Signal Level, the following expressions can be defined for each Signal. When one of the expressions contained in the PDU is true, then Transmission Mode Switch to True. When all the evaluation results of the signals are False, then Transmission Mode Switch to False
F_Always (TRUE)
F_Never (FALSE)
F_MaskedNewDiffersMaskedOld ((new_value&mask) != (old_value&mask))
F_MaskedNewEqualsX ((new_value&mask) == x)
F_MaskedNewDiffersX ((new_value&mask) != x)
F_MaskedNewIsOutside ((new_value<min) || (max<new_value))
F_MaskedNewIsWithin ((min<=new_value) && (new_value<=max))

You can also perform transmission Mode conversion by calling the Com_SwitchIpduTxMode API displayed
MDT: The shortest time interval before any two frame messages with the same Frame ID

If ComEnableMDTForCyclicTransmission =false, then MDT only considers transmissions of type EVENT

Schedule Table Multiple "trigger points" can be set on a Time Line, and each "trigger point" can trigger multiple Activate/SetEvent Synchronization Strategy Divided into None/Impli...
Event Event is mainly used to provide multiple synchronization points for Extended Task, and each Event can be associated with multiple Tasks Event trigger condition Show calls to SetEvent by Alarm Tr...
Encryption & Validation Flow Encryption Mainly divided into the following steps Transmit Authentic I-PDU Obtain SecOC ID Get Freshness Value get key Build Authentication data Generate MAC Build Se...
AutoSAR Series Explanation-Overview of AutoSAR Standard Documents (Part 1) Overview of AutoSAR Standard Documents (Part 1) 1. Document Download Second, the document structure Overview of AutoSAR Stand...
Symmetric-key algorithms In the symmetric encryption algorithm, the data sender processes the plaintext (original data) and the encryption key together with a special encryption algorithm, turning it ...
Algorithm Hash Algorithm Name Algorithm Input Length Output Length Reversible? MD5 Hash Any 128 bits No SHA -1 Hash Less 2^64 160 bits No SHA-224 Hash Less 2^64 224 bits No SHA-256 Hash Less 2^64 256 ...
Data Type Although it is easier to configure the required type through Davinci, this chapter introduces the content of DATATYPE.ARXML output by VECTOR, which can get rid of the dependence on Davinci t...
Foreword First of all, please know a few small questions, you know: Why does the car electronic ECU need OS, where is its necessity? How does the ECU software operate the task switching? How does the ...
Words written in front: The author is an automotive electronics enthusiast who likes to share some of his study notes. Starting today, the author begins to learn Adaptive Platform AUTOSAR. The author ...
Update bit location In fact, when you start learning, there is not much about the location of Update Bit, thinking that it is nothing more than COM to add a buffer for each signal to save? Until the f...