LPC-1768-SK のアンロック
テクニカル・ノート 79394
アーキテクチャ:
ARM
コンポーネント:
general
更新日:
2018/08/26 3:35
はじめに
本テクニカルノートは、コード読み取り保護(CRP)を使用するNXP SemiconductorsのLPC1768向けのIAR KickStart Kitおよび他の類似のボードに適用されます。
解説
コード読み取り保護(CRP)を選択すると、JTAGがブロックされ、JTAGでダウンロードやデバッグを行えなくなります。さらに、JTAGでデバイスのロックを解除できなくなります。
C-SPYに以下のようなメッセージが表示されます。
Fatal error: Failed to read CPUID [...]
解決方法(CRP1の場合)
CRP1のロックを解除するには、Flash Magicをダウンロードして、コード読み取り保護のデータを含めてフラッシュを消去します。
ボードとFlash Magicを設定する
ボードのISPとRSTのジャンパーをセットします。ボードのUART0にRS232ケーブルを接続し、J-Linkまたは外部電源を使用してボードに電源を供給します。
Flash Magicを起動する
Options > Advanced Options... > Hardware Configを選択します。
Advanced Optionsダイアログで、Use DTR and RTS to control RST and ISP pinチェックボックスを選択します。
ボードの電源をオフ/オンし、ボードをISPモードにします。
「ステップ1 - 通信」のオプションを選択します。
例:
Device : LPC1768
COM Port : COM1
Baud Rate : 9600
Interface : None (ISP)
通信をチェックする
ISP > Read Device Signature...を選択します。
Device Signatureダイアログが開き、デバイスID、ブートローダーのバージョン、シリアル番号が表示されます。
ISP > Read Security...を選択します。
Securityダイアログが開き、'CRP is at level 1'という行が表示されます。
フラッシュ/CRPを消去する
ISP > Erase Flash...を選択します。
Erase Flashダイアログで、Erase all Flash+Code Rd Protチェックボックスを選択し、消去を実行します。
ISP > Read Security...を選択します。
Securityダイアログが開き、'CRP is disabled'という行が表示されます。
これで、JTAGが再度機能するようになるはずです。
注
CRP1: 本テクニカルノートに記載された解決方法は、CRP1でテストされています。
CRP2: この解決方法は、CRP2ではテストされていません。
CRP3: この解決方法は、CRP3ではうまくいきません。
全ての製品名は、それぞれの所有者の商標または登録商標です。