メモリの値が変化したらデータを残します
定周期でリングバッファを編集用のリングバッファにコピーします
コピーしたリングバッファに溜まっているデータをWriteBufにデータを整列させてます
整列したWriteBufは定期的または一杯になったら構造体をまるごとFileWriteVarでSDメモリに書き込みます
FileWriteVar命令はメモリの状態をそのままSDメモリに書き込むためバイナリファイルになります
ファイルを開くためには上位側でアプリケーションが必要です

リングバッファのファンクションを使います




プライマリタスク

定周期タスク


プライマリタスクでは監視しているメモリの値が変化したときにRingFilePutで時刻と変数と値をバッファに追加します
値の変化はビット情報ではXOR命令で前回値と比較してOFF→ON、ON→OFFを監視します
数値では前回値から今回の値を引いて変化の範囲(rangeDInt)を超ているかを監視します
定周期タスクでは10秒間隔もしくはデータが5000個溜まったらリングバッファを編集用のリングバッファ(EventLogRingBufferCopy)にコピーします
コピーしたリングバッファに溜まっているデータを書込み用バッファ(EventLogWriteBuffer)に追加していきます
時刻を監視して分の単位が変化するか、書込み用バッファのカウントが55000個を超えるとFileWiteVar命令でEventLogWriteBuffer構造体を丸ごとSDカードに書き込みます
ダウンロードされたときは利用規約に同意したものとみなします