may be a big problem
hope the engineer see that
The CRC usermodule calculates the CRC value of the input bit stream as long as the UM is enabled and clock pulses are supplied. Conventionally, the input bit stream also comprises of thr CRC bits as well, so that the receiver can verify the calculated CRC with the received one. In the case of the usermodule, you can do this compare by allowing the CRC usermodule to read in all the data (including CRC bits), and then reading the calculated value using CRC16_ReadCRC function. If the values match, it should return a "0" value. (the final 16 CRC bits received) XORed with (the calculated value) = 0 if matched}
The same technique can be applied to other UMs that use shift registers. (PRS16_wReadPRS for PRS usermodule)
If you are looking at making a specific fuinction, please look into the Digital Communication Block (DCB) architecture from the PSoC 1 technical reference manual. It should help you understand the scope of the hardware.