GR-SAKURA
GR-KURUMI
GR-COTTON
GR-CITRUS
GR-PEACH
GR-KAEDE
GR-ADZUKI
GR-LYCHEE
GR-ROSE
GR-MANGO(*)
SNShield
Web Compiler
IDE for GR
TOPPERS関連
女子美コラボ
その他
※プロデューサミーティング中
作り方使い方資料
イベント関連
作品記事
体験記事
ライブラリ
ツール
その他・過去ファイル
RTC機能に関して教えてください。Mbedでは、ファイルのタイムスタンプなどにRTCは欠かせない機能だと思いますが、GR-MANGOではRESETすると時刻が1970/1/1 00:00:00に戻ってしまいます。
1)これは不具合としての認識があるのでしょうか?それとも仕様ですか? sample_00_led_rtc_analogin.cppで確認しましたが、他にRESETでも継続できるサンプルがあるのでしょうか?2)32.768KHzのXtalは実装されているのでしょうか? RESETしない限り初期設定すれば時計機能は正確(感覚的には月差10秒程度)な値を継続できるのでしょうか?
このクラスのCPUは、ネットワーク等から正確な時刻を入手することを前提にしているのでしょうか?一番気になるのが、IoT機器としての記録データのファイルスタンプをどうするかでしょう。
間欠動作をさせてデータ収集する上で、ThisThread::sleep_for()関数の呼び出しでは、消費電流を抑えられないことを知りました。そこでRTCとDeeep Standby Modeの組み合わせが、消費電流を抑える有効な手段と判断し、少し勉強してみました。その過程で、med-gr-libs内にDeepStandbyとAlarmTimerがあることがわかり、下記のようなプログラムを作成してチェックし始めました。
// 省略#include "DeepStandby.h"#include "AlarmTimer.h"
if文判定はtrueとなり、Deep Standby Modeに入っている模様です(直ぐにRESETに入らないことで判断)が、時間経過しても戻って来ません。RESETボタン操作で再起動するとRTCの値が初期化されてしまっている模様です。そこで質問があります。1)そもそもこの二つのライブラリは、GR-MANGOでの利用を想定しているのでしょうか?DeepStandbyには、GR-LYCHEEのifdef判断などが見られますが、GR_MANGOは見当たらずRZ/A2M評価ボードのみの対応にも見受けられます。2)詳しくライブラリソースコードをチェックしないままの質問ですが、Deep Standby ModeでRTCへのクロックが停止していないでしょうか?3)Deep Standby ModeからのPOWER on RESETへの復帰条件に、紹介いただいたUser's Manualには、解除用端子がアサインされていると理解(表52.1及び52.2.29DSSR項)しましたが、GR_MANGOでの端子割り当ては、使用できる端子にアサインされるのでしょうか?ユーザーボタンのどちらかに配置されるとベストだと思われますが、いかがでしょうか?
3千ページに及ぶ資料は、簡単には読めませんし、ソースコード理解も出来ない状況での質問ですが、ご教示いただけると幸いです。
Deep Standbyの件は、GR-PEACH,GR-LYCHEEでも上手くいっていないという認識もありますが、GR-MANGOでの暫定対応状況は、ヒアリングしますのでもう少々猶予頂けないでしょうか?ヘルプに関しては、下記を参照頂けると幸いです。
> <>Source code
は、HTML表記で編集出来るものとなります。
サンプルプログラムの公開、ありがとうございます。質問させてください。1)Mbed Studioを利用していますが、mbed-osのリンク先をそのままではライブラリとしてimport出来ません。下記のような画面で、どのバージョンを選択すれば良いか教えてもらえますか?
2)ライブラリの\mbed-gr-libs\DeepStandby\TARGET_RZ_A2XX及び\mbed-gr-libs\AlarmTimer\TARGET_RZ_A2XXに関しては、特に修正無く使用できるということですか?「Deep Standbyの件は、GR-PEACH,GR-LYCHEEでも上手くいっていないという認識もありますが・・・・・」は、杞憂だったということですね?
回答ありがとうございました。
コンパイルでエラーが発生します。対応方法を教えていただけませんか?
はい、全てのサンプルをインポートし直しました。
また、オリジナルを修正せず21を選択しただけです。
お忙しいところ恐縮です。Deep standby動作自体は、評価が出来ますので優先順位を下げていただいて結構です。
少し調べたら、\Mbed_Studio\RZ_A2M_Mbed_samples\BUILD\GR_MANGO\ARMC6内に本来なら、RZ_A2M_Mbed_samples_application.binが生成されるはずですが、RZ_A2M_Mbed_samples_application.binのDirectoryが生成され、内部に拡張子なしのNVとVECTORSのファイルも生成されるので、その後Pythonのプログラムがそれを操作できないため、[ERROR] [Errno 13] Permission denied:のアクセスエラーが発生している模様です。
1) Mbed Studioでエラーなしでbinファイルができること 2) GR-MANGOにてRAM変数が初期化されずに継続して変化すること を確認出来ました。お手数おかけしました。 .bss内に初期化されない変数を格納するのは違和感を感じますが、ARMコンパイラの仕様では仕方ありません。 このプログラムを試す方は、注意が必要です。 DAPLinkにて書き込みを行いましたが、Deep Standby Mode中の書き込みでFAIL.TXTが作られて書き込みが上手く出来ない時がありますので、注意願います。 私は試していませんが、Custom bootloaderもPC側のUSBの認識が中断するので難しいのではないでしょうか? Deep Standby Modeでの消費電流の低下は、思ったより少なくなりませんでしたが、これは別途詳しく調査したいと思います。