Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CY_ISR(Wdt_ISR){
- uint32 intSource = CySysWdtGetInterruptSource();
- if((intSource & CY_SYS_WDT_COUNTER0_INT) == CY_SYS_WDT_COUNTER0_INT)
- {
- if(wdtIsrCount == 0)
- {
- CySysWdtClearInterrupt(CY_SYS_WDT_COUNTER0_INT);
- }
- else
- {
- Wdt_ISR_Stop();
- GLED_Write(1u);
- }
- wdtIsrCount++;
- }
- }
- void ClearWdt(void){
- wdtIsrCount = 0;
- CySysWdtUnlock();
- CySysWdtResetCounters(CY_SYS_WDT_COUNTER0_RESET);
- CyDelayUs(150);
- CySysWdtLock();
- }
- void StartWdt(uint16 time){
- Wdt_ISR_StartEx(Wdt_ISR);
- CySysWdtUnlock();
- CyDelayUs(10);
- sec = ( uint16 ) (time * (65535.0/2000.0));
- CySysWdtSetMatch(CY_SYS_WDT_COUNTER0,sec);
- CySysWdtSetMode(CY_SYS_WDT_COUNTER0, CY_SYS_WDT_MODE_RESET); //CY_SYS_WDT_MODE_RESET
- CySysWdtSetClearOnMatch(CY_SYS_WDT_COUNTER0,1u);
- CyDelayUs(10);
- CySysWdtEnable(CY_SYS_WDT_COUNTER0_MASK);
- CyDelayUs(10);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement