linInvertMultipleHeaderBits
Valid for: CANoe DEFunction Syntax
dword linInvertMultipleHeaderBits(dword byteIndices[],dword bitIndices[],dword numberOfDisturbedBits[],dword levels[],dword arrSize); // form 1dword linInvertMultipleHeaderBits(dword byteIndices[],dword bitIndices[],dword numberOfDisturbedBits[],dword levels[],dword arrSize, dword numberOfExecutions); // form 2dword linInvertMultipleHeaderBits(dword byteIndices[],dword bitIndices[],dword numberOfDisturbedBits[],dword levels[],dword arrSize, dword numberOfExecutions, long disturbAfterHeaderID, dword waitForHeaders); // form 3
Description
Inverts the multiple bits in specified locations in the next LIN header. Note: Some driver versions only support inverting multiple (consecutive) bits in one position (arrSize == 1).Parameters
-
byteIndices: An array of the index of the bytes.
-1: Sync Break0: Sync Byte1: ProtectedId Byte
- bitIndices: The index of the bit to be manipulated. An index in the range 0-7 will manipulate a data bit, while the index 8 will manipulate the stop bit. Higher index values will cause the interbyte-space after the data byte to be manipulated. In this case, the user should make sure that the interbyte-space is large enough. Value range: 0..255
- numberOfDisturbedBits: An array specifying how many consecutive bits shall be inverted at the specified locations.
-
level: An array of the levels of the disturbance
0: Dominant (inverts recessive bit)1: Recessive (inverts dominant bit – requires mag-Cab/Piggyback and external power supply)
- arrSize: The number of elements in the above arrays. This value should not be greater than the size of the smallest array.
- numberOfExecutions: The number of consecutive headers in which the bit inversion will be executed. Default: 1 (single shot). The largest possible value is 255. If a larger value is given, 255 will be used.
-
disturbAfterHeaderID: With this parameter and the next one it is possible to define exactly which header will be disturbed. The LIN hardware will first wait for a header with ID =
disturbAfterHeaderIDbefore additionally awaiting the number of headers defined bywaitForHeaders. The next header following these headers will then be disturbed. -
waitForHeaders: See explanation for
disturbAfterHeaderID.