Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
Any Major difference between the two....and also If I am to program my device for the last time is it the release version which has to be programmed??? What if there comes a problem later and need to debug my device then does my relese code support debugging??
The relese built is usually programmed into devices that are shipped to production -> customer. Any reverse engeneering as reading the code, debugging and other things are unwanted to protect your design from beeing copied etc.
So there are some features for us designers built into the PSoCs to help us. If you do not need protections like that, do not use them.
Compiler's optimizing of code may disturb debugging. While the value of a variable is hold within a register to save code space and MIPs, any changes to its value will not be displayed during debugging until the register is written back to memory.
Complete lines of code may be taken out of a loop when the optimizer decides to do so (we can trust to the rightfulness of such deep intrusion, it will work correctly) but the debugging will look awfull and when not prepared for it may look like an error in code but it isn't.
So usually the debug settings allow just for a minimal optimization, while the release settings are much stronger and even may prevent any debugging at all.