2014/11/29

[nrf51]ADCにチップバージョンでの差違あり

Blogs - Nordic Developer Zone - Using the ADC with the S110 SoftDevice

今のところ予定はないが、センサーを扱いたいとなるとAD変換を使うこともあろう。

制約としては、まず以下があるとのこと。

  • ADCの割り込み優先度をLOWにする
  • PPIチャネルで0~7を使う(8~15はSoftDeviceが使っている)
    SoftDeviceの初期化前に自分で直接設定するか、nRF51 SDKのsdppiラッパAPIを使う

 

これだけでなく、nRF51の第2世代と第3世代のハードウェアには制限があるとのこと。
世代は、ドキュメントのPANを見ると、チップの表面に書いてあるとのこと。
しかし、私が持っているのはモジュール製品で、nRF51822はカバーに覆われて見ることができない・・・。

どうも、ドキュメントのPSのバージョンとハードウェアのバージョンが一致しているように見える。
今はnRF51822_PS v3.1が最新なのだけど、それはrevision 3、つまり第3世代のドキュメントのようだ。
最新版が出たからって、前のドキュメントは捨てたらいかんな。

たぶん、時期的に、うちのはrevision 2だろう。
BLEの1パケットでだいたい1msecブロックするらしい。なので、例えば6パケット送信するのであれば6msecブロックするので、

1 / 6msec = 0.1667kHz = 167Hz

ということか(ブログでは、だいたい150Hzって書いてる)。

ここでの表現が「sampling frequency」なんだけど、アプリがADCできる間隔じゃなくて、本当にサンプリング周波数がこうなるってことだろうか?
Nordicのサンプルプロジェクトを見たが、時間に関する設定はなさそうで、100msec間隔でADCする、くらいのことしかないみたいなので、あまり周波数が高くないものだけにするか、速くしたいんだったら外部に任せるかになりそうだ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。