nRF52-DKボードをJ-Linkデバッガとして使ってBL652をデバッグする方法をメモ。
BL652の線を引き出す
BL652モジュールの端子は0.75mmピッチの端面スルーホールである。
まずはなんらかの方法で線を引き出す。
UEW(ウレタン線)で引き出す
やり方はChaNさんのページに詳しい。端面スルーホールは見にくいので実体顕微鏡があると吉。2万円くらいの安いやつでも十分役に立つ。
ブレークアウトボードを使う
残念ながら市販のものは見つからないが、shrhdkさんがGitHubでブレークアウトボードのガーバデータを公開されている。これをFusionPCBやEleclowなどに発注すれば、UEWよりはラクできれいにハンダ付けできる。ただし、お金と時間はかかる。
nRF52-DKで外部基板をデバッグする方法
Nordicのオンラインドキュメントによると、nRF52-DKボードは外部基板のプログラム/デバッグをサポートしている。nRF52-DKボードのオンボードJ-Linkで外部基板をデバッグするには、debug outコネクタ(P19)に外部基板を接続する。
外部基板が給電されると、nRF52-DKボード上のデバッガチップはそれを検知して、オンボードのnRF52832の代わりに外部基板をプログラム/デバッグする。P19は一般的な10ピンのCortexデバッグコネクタであるが、狭ピッチなP19の代わりに、2.54mmピンヘッダのP20を使うこともできる。もしP19とP20の両方の給電を検知したら、P19のターゲットをプログラム/デバッグする。
P19とP20の位置は下図の通り。(上記オンラインドキュメントより)
要するに、外部基板の給電を検知して、勝手にターゲットが切り替わるということである。基板上のジャンパで設定したり、ソフトウェア側で設定したりという必要はない。
原文は、オンラインドキュメントの nRF52 Series > nRF52832 > nRF52 Development Kit (for nRF52832) > Development Kit content and key features v1.1.0 > Hardware description > Debug output を参照。
結線
ここではP20の2.54mmピンヘッダからの結線について説明する。
最低限必要なのは以下の4本
- GND DETECT → ターゲットのGNDに接続
- VTG → ターゲットの電源電圧(VDD_nRF)に接続
- SWD CLK → ターゲットのSWDCLKに接続
- SWD IO → ターゲットのSWDIOに接続
加えて、nRF52-DKボードから外部基板に給電する場合には以下の2本を結線
- GND → ターゲットのGNDに接続
- VDD → ターゲットの電源電圧(VDD_nRF)に接続
注意すべきは、GND DETECT とは別にGNDの結線が必要だという点。GND DETECTをBL652のGNDにつないだだけでは動かなかった。
BL652のピン配置は下図の通り。(BL652データシートより)