C. watchdog timer configuration, Appendix 70, Mb945 user’s manual – IBASE MB945 User Manual

Page 74

Advertising
background image

APPENDIX

70

MB945 User’s Manual

C. Watchdog Timer Configuration


The WDT is used to generate a variety of output signals after a user
programmable count. The WDT is suitable for use in the prevention of
system lock-up, such as when software becomes trapped in a deadlock.
Under these sorts of circumstances, the timer will count to zero and the
selected outputs will be driven. Under normal circumstance, the user
will restart the WDT at regular intervals before the timer counts to zero.

SAMPLE CODE:


//---------------------------------------------------------------------------
//
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
// PURPOSE.
//
//---------------------------------------------------------------------------
#include <dos.h>
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
#include "W627DHG.H"
//---------------------------------------------------------------------------
int main (void);

void WDTInitial(void);
void WDTEnable(unsigned char);
void WDTDisable(void);

//---------------------------------------------------------------------------
int main (void)
{
char

SIO;


SIO = Init_W627DHG();

if (SIO == 0)

{

printf("Can not detect Winbond 83627DHG, program

abort.\n");
return(1);
}

WDTInitial();

WDTEnable(10);

WDTDisable();

return

0;

}
//---------------------------------------------------------------------------
void WDTInitial(void)
{

unsigned char bBuf;


bBuf = Get_W627DHG_Reg(0x2D);

bBuf &= (~0x01);

Set_W627DHG_Reg(0x2D, bBuf);

//Enable WDTO

}
//---------------------------------------------------------------------------
void WDTEnable(unsigned char NewInterval)
{

unsigned char bBuf;

Advertising