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

もとのページに戻る

2024-11-14 現在

<PAL_MAG>

開閉センサーパル用
    開閉センサーパル OPEN-CLOSE SENSE PAL のボードビヘイビアです。
    void setup() {
      auto&& brd = the_twelite.board.use<PAL_MAG>();
    }

    開閉センサーパルのセンサーは磁気センサーで、2本の信号線の割り込みの入力のみです。

    const uint8_t PAL_MAG::PIN_SNS_NORTH = 16;
    const uint8_t PAL_MAG::PIN_SNS_OUT1 = 16;
    const uint8_t PAL_MAG::PIN_SNS_SOUTH = 17;
    const uint8_t PAL_MAG::PIN_SNS_OUT2 = 17;

    PAL_MAG::PIN_SNS_NORTHはセンサーがN極を検出したとき、PAL_MAG::PIN_SNS_SOUTHはセンサーがN極を検出したときに割り込みが入ります。

    スリープ前に以下の設定をしておきます。

    pinMode(PAL_MAG::PIN_SNS_OUT1, PIN_MODE::WAKE_FALLING);
    pinMode(PAL_MAG::PIN_SNS_OUT2, PIN_MODE::WAKE_FALLING);

    起床時に起床要因のIOを確認します。

    uint8_t b_north =
      the_twelite.is_wokeup_by_dio(PAL_MAG::PIN_SNS_NORTH);
    uint8_t b_south =
      the_twelite.is_wokeup_by_dio(PAL_MAG::PIN_SNS_SOUTH);