This is usually the case when you forgot to declare a global variable as "volatile" that gets changed in an interrupt handler. This is just a guess. To tell more, can you post your complete project, so that we all can have a look at all of your settings? To do so, use Creator->File->Create Workspace Bundle (minimal) and attach the resulting file.
The interesting thing about PSoCs is not the M3 CPU, but the tremendous amount of configurable hardware within the chip that you can freely use and wire to your requirements. What other chips allow you to place some FFs, gates, and other stuff, connect them as you want and get a circuit that exactly does what you wired. FPGAs can do that, but they are pretty large (and expensive) and by far not as easy to handle as PSoCs.