NXP LPC824のフラッシュメモリへの書き込みを行う場合、
LPCXPressoのデバッガを介して
LPC-Link 2で書き込むか、標準で内蔵されているブートローダを使用してシリアルポートから書き込む(ISP)方法がある。
前者は統合環境が必要、後者はUSARTの端子が決め打ちされいる、といった感じでどちらもお気楽感がない。
分身を沢山あつらえたいとなると、ライセンスやら操作手順やらが野暮ったい事も多い。そこで白羽の矢が立ったのが
CooCoxの
CoFlashである。
CoIDEは色々なデバイスに対応しているのとフリーの統合環境という事も合って結構使われている方も多いがと思うが、CoFlashもフリーかつシンプルな書き込みツールで対応するICEも結構多い。
今回はデフォルトではCoFlashがサポートしていないLPC824を、LPC-Link 2を使って書き込めるようにしてみた。その手法が
開示されているのと、LPC11xxシリーズと互換性があるので、そのままソースを流用すれば結構さくっとイケる。
詳しくは修正したソースを
ここに置いておくのでそれを見てもらえればと思うが、違いはセクタサイズやページサイズ程度である。ついでにページ書き込みのルーチンの中で書き込み後にコンペアを行った上で応答を返しているので、ツール上でベリファイを指定しなくても良い筈。
同梱のファイルをCooFlashをインストールしたフォルダにt適宜コピーすればDeviceツリーのNXPにLPC822とLPC824が追加される。後はSWDからガシガシ書き込むだけである。
なお、
LPC-Link 2に
CMSIS-DAPのファームを書き込んだ物を使用する事。
技術