M
M
MWX Library
検索…
v0.1.9
The MWX Library
改版履歴
MWXライブラリについて
インストール・ビルド
サンプルアクト
act0 .. 4
Scratch
Slp_Wk_and_Tx
Parent_MONOSTICK
PingPong
BRD_APPTWELITE
BRD_ARIA
PAL_AMB
PAL_AMB-usenap
PAL_AMB-bhv
PAL_MAG
PAL_MOT-single
PAL_MOT-fifo
PulseCounter
WirelessUART
Unit_???
API
ボード (BRD)
センサー・デバイス (SNS)
ネットワーク (NWK)
設定 (STG) - インタラクティブモード
GitBook
上で動作しています
PulseCounter
パルスカウンター
を用いたアクト例です。
パルスカウンターは、マイコンを介在せず信号の立ち上がりまたは立ち下りの回数を計数するものです。不定期のパルスを計数し一定回数までカウントが進んだ時点で無線パケットで回数を送信するといった使用方法が考えられます。
アクトの機能
子機側のDIO8に接続したパルスを計数し、一定時間経過後または一定数のカウントを検出した時点で無線送信する。
子機側はスリープしながら動作する。
アクトの使い方
必要なTWELITE
役割
例
親機
MONOSTICK BLUEまたはRED
アクト
Parent_MONOSTICK
を動作させる。
子機
1.
TWELITE DIP
2.
BLUE PAL または RED PAL
+
環境センサーパル AMBIENT SENSE PAL
アクトの解説
setup()
1
// Pulse Counter setup
2
PulseCounter
.
setup
();
Copied!
パルスカウンターの初期化を行います。
begin()
1
void
begin
()
{
2
// start the pulse counter capturing
3
PulseCounter
.
begin
(
4
100
// 100 count to wakeup
5
,
PIN_INT_MODE
::
FALLING
// falling edge
6
);
7
8
sleepNow
();
9
}
Copied!
パルスカウンターの動作を開始し、初回スリープを実行します。
PulseCounter.begin()
の最初のパラメータは、起床割り込みを発生させるためのカウント数
100
で、2番目は立ち下がり検出
PIN_INT_MODE::FALLING
を指定しています。
wakeup()
1
void
wakeup
()
{
2
Serial
<<
mwx
::
crlf
3
<<
"--- Pulse Counter:"
<<
FOURCHARS
<<
" wake up ---"
4
<<
mwx
::
crlf
;
5
6
if
(
!
PulseCounter
.
available
())
{
7
Serial
<<
"..pulse counter does not reach the reference value."
<<
mwx
::
crlf
;
8
sleepNow
();
9
}
10
}
Copied!
起床時に
PulseCounter.available()
を確認しています。availableつまり
true
になっていると、指定したカウント数以上のカウントになっていることを示します。ここでは
false
の場合再スリープしています。
カウント数が指定以上の場合は
loop()
で送信処理と送信完了待ちを行います。
loop()
1
uint16_t
u16ct
=
PulseCounter
.
read
();
Copied!
パルスカウント値の読み出しを行います。読み出した後カウンタはリセットされます。
前
PAL_MOT-fifo
次
WirelessUART
最終更新
6mo ago
PDFに出力
リンクのコピー
目次
アクトの機能
アクトの使い方
必要なTWELITE
アクトの解説
setup()
begin()
wakeup()
loop()