/      English

WatchDog(WDT)関連のAHI関数と解説

TWENETライブラリ、WatchDog(WDT)関連のAHI関数と解説
TWENETライブラリ、WatchDog(WDT)関連のAHI関数と解説です。

WatchDog(WDT)

vAHI_WatchdogStart()

void vAHI_WatchdogStart(uint8 u8Prescale);

ウォッチドッグタイマーを利用開始します。

  • タイムアウト時間はおおよその値を設定している。具体的にはタイムアウトはu8Prescale == 0の場合8ms, それ以外は((1UL<<(u8Prescale-1)) + 1) * 8msとしてthe_wwdt->init()を呼び出している。
  • 値域外の値 u8Presacale > 12を指定した場合は、u8Prescale = 10(約4秒) とする。
  • -DDEBUGでコンパイルするデバッグ時はこの処理は実行されず、WDTは停止したままとします。

vAHI_WatchdogStop()

void vAHI_WatchdogStop();

TWELITE GOLD では、いったん稼働したウォッチドッグの停止を行うことが出来ません。本関数は、ウォッチドッグタイマーのタイムアウトを変更する際に以下のように呼び出します。

...
vAHI_WatchdogStop(); // 一旦停止API(実際は停止しない)を呼び出す
vAHI_WatchdogStart(12); // 約16秒に再設定する

vAHI_WatchdogRestart()

void   vAHI_WatchdogRestart();

ウォッチドッグタイマーのタイムアウトまでに呼び出します。

  • -DDEBUGでコンパイルするデバッグ時はこの処理は実行されません。