nRF はじめてのLチカ

nRF52系のBLE内蔵のSOCを触ってみる。本来は、正規の評価ボードを入手してそれで勉強してとなるが、なかなか個人でこの評価ボードを購入するって気にならない。7000円を超える。

そこで目を付けたのがseeedのXAIO。秋月でも取り扱いしていて入手性が高く安い。同じMPUが載っているので、これを評価ボードの代わりに使って理解を進めようというもの。Arduinoで開発ではなく、Segger embedded studio(SES)でNordicのexampleを理解していきたいという狙い。

【回路図】

https://wiki.seeedstudio.com/XIAO_BLE/

Arduinoで使う訳ではないが、ここに、回路図やデータシートのリンクあり。

XAIOのピン配がスプレッドシートでもおいてある。


【書き込み環境】

XAIOの裏面にある端子に、直接半田付けしてひっぱり出しJ-LINKに接続。


SESとSDKのインストールについてはネットに任せる。

自分の場合は、ダウンロードしたSDKを下のようなフォルダにインストールした。

D:\Nordic\SDK\nRF5_SDK_17.1.0_ddde560



.....\examplesというフォルダを探す。
その下に、myprojectsとでも自分専用のフォルダを作る。

.....\examples\peripheral\blinkyをこの作った自分用のフォルダにコピーする。


そのコピーしたフォルダの下の\pca10056\blank\ses\blinky_pca10056.emProject

をダブルクリックしてSESを立ち上げる




ビルトしてみる。

プロが作ったコードでエラーが出る。
flash_placement.xml
をSESにドラックして開く

size"0x4"の部分を2か所削除する。

Build and RunをしてみるとエラーなくJ LINK越しに書き込みされる。
が・・何も起きない。
そりゃそうで、純正の評価ボード用にかかれたソースだから。

ボードのピンのアサインは?

・・・・SDK\nRF5_SDK_17.1.0_ddde560\components\boards
のフォルダ


Projectを右クリックしてOptionsを選択
新しいウィンドウが開いてくるのでDugugになっている所をCommonにプルダウンで選択。

Processerを選択して、Processer Definitionsをクリックするとさらに窓が開いてくる。
ここに記載されているBOARD__PCA10056をBOARD_CUSTOMに変更してやる。
pca10056.hをコピーして、XAIOnRF52840.hなどの名前で保存。



このヘッダーファイルをboards.hのBOARD CUSTOMの下のヘッダーファイルの名前にしてやる。




ここまで編集をやったら、ビルトしてRUNしてみる。
上手くできていると3色のLEDを点滅させる事ができる。


Lチカができた訳だが、ソースコードを眺めても階層が結構深くて他のボードのように理解が進まない・・・・そのうち理解できるようになるんだろうと。


Board support package (BSP)


【参考URL】

https://shizuk.sakura.ne.jp/bluetooth/nrf52/overview.html

https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.nrf52%2Fdita%2Fnrf52%2Fnrf52_series.html

nRF Connect SDKhttps://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/working_with_nrf/nrf52/gs.html










コメント

このブログの人気の投稿

Attiny85とAQM0802A(LCD)のI2C接続

ILI9341 240X320 Arduino

Attiny85 FuseRest