|
J1939 Documentation
Version 4.16.00
|
Address configuration is the method by which a particular CA determines the source address it will use for Address Claim. For the purposes of the Address Claim process, there are two capabilities: Single Address Capable and Arbitrary Address Capable. These are distinguished by the value in the Arbitrary Address Capable field at the high-order position in the CA’s NAME.
Include dependency graph for j1939_nmt.h:Data Structures | |
| struct | J1939_Name_s |
Enumerations | |
| enum | J1939_Name_e { eJ1939_NAME_SMALLER = 1 , eJ1939_NAME_EQUAL , eJ1939_NAME_GREATER } |
Functions | |
| void | J1939_NmtEventClaimAddess (uint8_t ubNetV, uint8_t ubSrcAddrV, uint8_t *pubDataV) |
| J1939_Name_ts * | J1939_NmtGetApplicationName (uint8_t ubNetV) |
| uint32_t | J1939_NmtGetIdentityNumber (uint8_t ubNetV) |
| uint8_t | J1939_NmtGetNewAddress (uint8_t ubNetV, uint8_t ubCurrentAddressV) |
| void | J1939_NmtSetName (uint8_t ubNetV, J1939_Name_ts *ptsNameV) |
| enum J1939_Name_e |
| void J1939_NmtEventClaimAddess | ( | uint8_t | ubNetV, |
| uint8_t | ubSrcAddrV, | ||
| uint8_t * | pubDataV ) |
| [in] | ubNetV | - J1939 Network channel |
| [in] | ubSrcAddrV | - Source address of claim message |
| [in] | pubDataV | - Pointer to 8 bytes of NAME |
This function is called be the J1939 stack upon reception of an address claiming message that has a different source address.
| J1939_Name_ts * J1939_NmtGetApplicationName | ( | uint8_t | ubNetV | ) |
| [in] | ubNetV | - J1939 Network channel |
The function is called by the protocol upon initialization in order to allow modification of the NAME field. It can be used to overwrite the pre-defined values defined inside the j1939_conf.h file. In case a NULL pointer is returned the pre-defined values are used.
A sample implementation of he function is located inside the j1939_user.c file.
| uint32_t J1939_NmtGetIdentityNumber | ( | uint8_t | ubNetV | ) |
| [in] | ubNetV | - J1939 Network channel |
The function returns the Identity number, which is required for the NAME function. The function is located inside the j1939_user.c file.
| uint8_t J1939_NmtGetNewAddress | ( | uint8_t | ubNetV, |
| uint8_t | ubCurrentAddressV ) |
| [in] | ubNetV | - J1939 Network channel |
| [in] | ubCurrentAddressV | - Current ECU address |
This function is called by the stack when the symbol J1939_ADDRESS_SELF is set to 1 and the device fails to claim its address. The application can then return a new address here to the J1939 protocol stack. The function is located inside the j1939_user.c file.
| void J1939_NmtSetName | ( | uint8_t | ubNetV, |
| J1939_Name_ts * | ptsNameV ) |
| [in] | ubNetV | - J1939 Network channel |
| [in] | ptsNameV | - Pointer to J1939 NAME structure |
The function sets a new NAME for the ECU. The fields are defined by the structure J1939_Name_ts. The function can be used to overwrite the pre-defined values defined inside the j1939_conf.h file.