【BLEを使う】開発環境メモ:Keil v5でNordicサンプルプログラムを開くと毎回エラーが出る場合の対応
Has anyone tried Keil 5.11? I get a parsing error when installing/repairing SDK when it imports the device pack into Keil. 5.10 works great.
Keil 5.11 Device pack parsing error - Nordic Q&A - Nordic DevZone - Nordic DevZoneより引用
Keil v5でNordicから提供されているnRF51のサンプルプログラムを起動時に、毎回「Error loading software packs...」というエラーメッセージが出る問題の解決方法を以下に示します。
Error loading software packs
C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_DeviceFamilyPack\1.0.3\NordicSemiconductor.nRF_DeviceFamilyPack.pdsc(60,49):
Error parsing node '#text' :no declaration found for element 'swdconfig' C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_DeviceFamilyPack\1.0.3\NordicSemiconductor.nRF_DeviceFamilyPack.pdsc(60,49):
Error parsing node '#text' :attribute 'default' is not declared for element 'swdconfig' C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_DeviceFamilyPack\1.0.3\NordicSemiconductor.nRF_DeviceFamilyPack.pdsc(60,49):
Error parsing node '#text' :attribute 'clock' is not declared for element 'swdconfig' C:\Keil_v5\ARM\PACK\NordicSemiconductor\nRF_DeviceFamilyPack\1.0.3\NordicSemiconductor.nRF_DeviceFamilyPack.pdsc(117,18):
Error parsing node '#text' :element 'swdconfig' is not allowed for content model '((((processor,debugconfig),(compile|memory|algorithm|book|description|feature|environment|debugport|debug|trace|debugvars)|sequences)),device),subFamily)'
このエラーに対する対応はNORDIC DEVELOPER ZONEにありました。
Keil 5.11 Device pack parsing error - Nordic Q&A - Nordic DevZone - Nordic DevZone
swdconfigは現在のCMSIS-Packでは削除されているのに、それを使う指示が残っていることが問題の原因のようです。
http://www.keil.com/pack/doc/CMSIS/Pack/html/_pack_format.html
そのため以下の場所にあるNordicSemiconductor.nRF_DeviceFamilyPack.pdscのswadconfigをコメントアウトしてからkeilを再スタートすることで問題は解決します。
C:\Keil_v5\ARM\Pack\NordicSemiconductor\nRF_DeviceFamilyPack\1.0.3 NordicSemiconductor.nRF_DeviceFamilyPack.pdsc
60行目 修正前
<swdconfig default="1" clock="2000000"/>
60行目 修正後
<!--<swdconfig default="1" clock="2000000"/>-->
Jlink SWD clockパラメータはSegger device用に自動的に照会されるので、このコメントアウトが悪さをすることはないそうです。
先に引用した質問サイトの回答者によると、コメントアウトしてからも、動作で特に問題は起きていないとのことです。
また、私の環境でも動作に問題は起きていません。