2014/10/25

[nrf51]nRF51初期化のまとめ方

advertising_init()で、デバイス名があるだのないだの、あるならshortだのcompleteだの、ということを書いた。

しかし、だ。
そのデバイス名の設定は、gap_params_init()で行っているのだ。

    leds_init();
    timers_init();
    gpiote_init();
    buttons_init();
    scheduler_init();
    ble_stack_init();
    gap_params_init();
    services_init();
    advertising_init();
    conn_params_init();
    sec_params_init();

遠すぎやしないかい?

また、advertising_init()ではサービスのUUID設定も行っている。
SCANのRESPONSEにいるんだけど、なんかそうなるとservices_init()が寂しく感じる。

この辺の初期化は、ble_stack_init()でまとめてしまっても良いのではないだろうか。
まとめた方がというか、まとめないと訳がわからなくなってしまいそうな感じがする。
あんまり1関数のステップ数が多くなると見通しが悪くなるのはわかるけど、わかりやすくなるんだったら1万行あっても1関数にまとめてしまっていいんじゃないの、って思ってる。

 

nRF51822は、Cortex-M0が搭載されたチップ、というだけの目的で使うこともできる。
が、BLEを使う前提でないとこのチップは使わないだろう。
ならば、BLEを使うように書いた方がよいのだと思う。
そして、それを自分で行うために、時間をかけてソースを眺めているのである。

0 件のコメント:

コメントを投稿

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