セクションの複数ページをまとめています。 印刷またはPDF形式で保存...

もとのページに戻る

2025-08-08 現在

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でコンパイルするデバッグ時はこの処理は実行されません。