mirror of
https://github.com/OpenEPaperLink/OpenEPaperLink.git
synced 2026-03-21 00:04:28 +01:00
59 lines
792 B
C
59 lines
792 B
C
#include "cpu.h"
|
|
#include "wdt.h"
|
|
|
|
void wdtOn(void)
|
|
{
|
|
uint8_t cfgPageBck;
|
|
|
|
cfgPageBck = CFGPAGE;
|
|
CFGPAGE = 4;
|
|
WDTCONF |= 0x80;
|
|
WDTENA = 1;
|
|
CFGPAGE = cfgPageBck;
|
|
}
|
|
|
|
void wdtOff(void)
|
|
{
|
|
uint8_t cfgPageBck;
|
|
|
|
cfgPageBck = CFGPAGE;
|
|
CFGPAGE = 4;
|
|
WDTENA = 0;
|
|
WDTCONF &=~ 0x80;
|
|
CFGPAGE = cfgPageBck;
|
|
}
|
|
|
|
void wdtPet(void)
|
|
{
|
|
uint8_t cfgPageBck;
|
|
|
|
cfgPageBck = CFGPAGE;
|
|
CFGPAGE = 4;
|
|
WDTPET = 0;
|
|
CFGPAGE = cfgPageBck;
|
|
}
|
|
|
|
void wdtSetResetVal(uint32_t val) //also pets it
|
|
{
|
|
uint8_t cfgPageBck;
|
|
|
|
cfgPageBck = CFGPAGE;
|
|
CFGPAGE = 4;
|
|
WDTPET = 0;
|
|
WDTRSTVALH = val >> 16;
|
|
WDTRSTVALM = val >> 8;
|
|
WDTRSTVALL = val;
|
|
|
|
CFGPAGE = cfgPageBck;
|
|
}
|
|
|
|
void wdtDeviceReset(void)
|
|
{
|
|
CFGPAGE = 4;
|
|
WDTCONF = 0x80;
|
|
WDTENA = 1;
|
|
WDTRSTVALH = 0xff;
|
|
WDTRSTVALM = 0xff;
|
|
WDTRSTVALL = 0xff;
|
|
while(1);
|
|
} |