This is the web edition of the original ⮫ AC500-S safety user manual, version 1.3.2. This web edition is provided for quick reference only. The original safety user manual must be used to meet functional safety application requirements. |
We recommend to follow the guidelines to prevent the risk of getting invalid CRC values or unwanted SAFE STOP of the safety CPU.
Preparation guideline
-
Analyze the safety communication protocol specification you want to realize. Define the configuration values which are needed to configure your CRC functionality. It affects all input values of SF_CRC_INIT function.
Implementation guideline
-
Make sure that you call SF_CRC_INIT only once and with a polynomial unequal to 0.
Only if SF_CRC_INIT returns TRUE, allow subsequent calls of SF_CRC_INPUT and SF_CRC_FINSH.
-
Make sure that you call SF_CRC_INPUT/SF_CRC_FINISH with correct CRC_SLOT input.
-
Make sure that you call SF_CRC_INPUT within the allowed safety application memory space, e.g., by using ADR and SIZEOF functions.
-
Make sure that you call SF_CRC_FINISH exactly one time after completion of the CRC calculation for the given user data block, and before the next CRC calculation cycle.
-
Make sure that you always exclude the received CRC value from the CRC calculation, and validate the received CRC value against the calculated CRC value from SF_CRC_FINISH output. In the case of mismatch, reject the received data. Only accept data with successful CRC validation.