Toyomasa Watarai
/
Watchdog-test-lpc824
Windowed Watchdog Timer (WWDT) example code for the LPC824
main.cpp
- Committer:
- MACRUM
- Date:
- 2015-08-05
- Revision:
- 0:3d3dd1e8cfd0
File content as of revision 0:3d3dd1e8cfd0:
/* Windowed Watchdog Timer (WWDT) example code for the LPC824 */ #include "mbed.h" Serial pc(USBTX, USBRX); void kick(float s); void feed(); void kick(float s) { LPC_SYSCON->WDTOSCCTRL = (0xA << 5); // wdt_osc_clk = Fclkana/2, Fclkana = 3.5MHz LPC_SYSCON->SYSAHBCLKCTRL |= (1 << 17); // Enable Clock WWDT LPC_SYSCON->PDRUNCFG &= ~(1 << 6); // Enable Power WDTOSC_PD uint32_t clk = ((3500000/2)/4); // COUNT = wdt_osc_clk/4 LPC_WWDT->TC = s * (float)clk; LPC_WWDT->MOD = 0x3; // Enabled and Reset feed(); } void feed() { LPC_WWDT->FEED = 0xAA; LPC_WWDT->FEED = 0x55; } int main() { pc.printf("\nProgram start.\n"); kick(2.5); int count = 0; while(1) { wait(0.2); if (count < 10) { feed(); pc.printf("*"); } count++; } }