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)
Configuration of Watchdog Timer Interrupt in PSoC 4 Devices - KBA222373
Note: This article applies to the following product families:
PSoC 4100 BLE
PSoC 4200 BLE
How do I resolve the following PSoC® Creator™ clock error when the Global Signal Reference Component is configured as a Watchdog Timer Interrupt (WDTInt)?
Figure 1. WDT Interrupt Clock Error
There are two options to configure the WDT interrupt handler in these product families: auto-generated and user-provided selected per Design Wide Resource settings. This error occurs when you configure the Watchdog Timer Interrupt to ‘isr_1’ interrupt handler in the top schematic using the Global Signal Reference Component. On the other hand, Design Wide Resource settings select ‘Timer (WDT) ISR’ as auto-generated.
Figure 2: Configuration of Global Signal Reference Component for WDTInt
If you select the auto-generated option, the CySysWdtIsr() function is registered as the WDT interrupt handler. You can use the CySysWdtGetInterruptCallback() and CySysWdtSetInterruptCallback() functions to get and set callbacks for each particular counter and use the CySysWdtEnableCounterIsr() and CySysWdtDisableCounterIsr() functions to enable and disable servicing of the registered callbacks for each particular counter.
Thus, you need to either remove the Global Signal Reference Component or change the interrupt generation option to user-provided. The latter can be done at the Clocks tab of the Design Wide Resources (cydwr) window. Click on the Edit Clock button; in the Configure System Clocks window, click on the Low Frequency Clocks tab as shown in Figure 3.
Figure 3: Configuration of User-Provided Timer (WDT) ISR
Once the user provided option is selected, the CySysWdtIsr() function is not registered as the WDT interrupt handler. You can register either a custom handler or the CyWdtIsr() function by using the CyIntSetVector() API. For more information on low-frequency clock and WDT configuration, refer to the LFCLK Component datasheet from the System Reference Guide (accessed from the Help menu of PSoC Creator).