2015/10/12

[nrf51]J-Linkがつながらなくなった

nRF51822に、nRF51 SDK v9.0のAD変換サンプルを焼いてみようと思った。
Makefileを変更するのは面倒なので、Keilでやる。
チップの選択や、メモリの範囲の設定、デバッガをJ-Linkにするなど、もろもろの変更をした。
が、Downloadを実行しても失敗する。

Error: Flash download failed – Cortex-M0

とうとうチップを壊してしまったか、と不安になったが、eclipseで焼いたことのあるBLEサンプルを焼くと、これは成功する。
ということは、環境の問題だ。


よく見ると、SEGGERが2つインストールされていた。
nRFgo StudioをインストールしたときのV5.0.0と、自分でインストールしたV5.0.0cだ。
この辺がよくないんじゃなかろうかと、両方アンインストールし、nRFgo Studio自体をインストールし直した。

そしたら・・・今度はnRFgo StudioがJ-Linkを認識しなくなった。

JLinkARM.dll is not correctly installed.
Please run the nRF Tools installer to install the newest version.

こんなの。
JLinkARM.dll is not correctly installed. Please run the nRF Tools installer to install the newest version. [closed] - Nordic Developer Zone
こちらを読むと、最新のSEGGERドライバをインストールしてみた?とある。
今のV5.0.0をアンインストールし、V5.0.0fをインストールし直すとエラーが出なくなった。


そして、nRFgo StudioからnRF51822のFLASHを全部消した。
いろいろ考えたのだが、前回SoftDeviceを焼いたときにプロテクトを掛けたためにダウンロードできなくなったんじゃなかろうか、という推測だ。
BLEサンプルはSoftDeviceを使うから書込むアドレスがFLASHの真ん中くらいなのだが、ADCサンプルはFLASHの先頭から使っている。
だから、eclipseの方はうまく焼けてKeilでは失敗する、という結果になった、と。

その推測は当たりだったようだ。
無事に焼けたので、ようやく続きができる。
ロックされているので失敗しました、みたいなエラーだったら気付いたのになぁ。

0 件のコメント:

コメントを投稿

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