Mbed Studio + Lpc11u35(デバッガ) + Lpc1114(ターゲット) + Daplinkでビルド~デバッグをする
DapLinkについて
DapLinkはCMSIS DAPの上位互換的なデバッガ兼ライタ。
Mbed Studioは標準でDapLinkとやり取りする機能が備わっているので、コイツが動くボードを安価で用意できると非常に開発が楽になる。
このDapLinkにはスイッチサイエンスのLPC1114ボード向けのビルドが存在し、DapLink公式で1114と入力すると出てくるファーム「0254_lpc11u35_ssci1114_0x0000.bin(現時点)」が相当する。
マイコンについて
11u35と1114は秋月でどちらも手に入る。昔は1114のDIP版が120円とかで買える時代があり、今手元にあるのはその時買い溜めたものだが、SSOP28版でもピンアサインは同じ。
ただしお値段がDIP化基板無しで300円する。
https://akizukidenshi.com/catalog/g/gI-10224/
11u35は何度か取り上げているが、発振子とレギュレータ搭載済みのものが850円で買える。マイコン単体でも売ってるが、乗ってるものを自前で揃えたら850円じゃ済まないのでこっちの方が良い。
https://akizukidenshi.com/catalog/g/gK-12144/
もちろん「トラ技ARMライタ」でも良い。秋月ボードとピンのレイアウトは異なるが、ポートに付けられた名前は互換している。
11u35へのファーム書き込みはいつものようにISP押しながらRSTでOK。
実践
この2つを下記のように配線する。
LPC11u35 | LPC1114 | せつめい |
---|---|---|
P0_8 | SWDIO | SWDIO |
P0_7 | SWCLK | SWCLK |
P0_19 | dp15 | Serial_MtoS |
P0_18 | dp16 | Serial_StoM |
p0_2 | dp23 | nRst |
もちろんGNDとVout -> Vinも忘れずに。
MbedStudioからROMの書き込みやデバッグができれば成功。
一度できれば同じ11u35を使いまわして、1114をプログラミングできるのでお安く済むという算段である。
別にマイコンとかそんな使う予定無いけど…って人は11u35一個買って終わりなんだけど。
補足
で、このピン設定やら何やらは一体どこから来たんだという話。
DapLinkのGithubを見るとコードが入っているんだが、デバッガが11u35の場合のポーティングは「DAPLink/source/hic_hal/nxp/lpc11u35/」
に存在する。
この下のIOConfig.hにピンの設定が書かれており、1114では使用していないJTAG関係のポートも設定されている。
ちなみにプログラムの書き込みはシリアル通信で行われるが、SWDを用いた書き込みではFlash Argorythmと呼ばれる仕組みで書き込みを行うのでISPピンは設定しなくても良い。
具体的にはSWDでターゲットのRAM領域に直接ISPっぽい事をするプログラムを送信(このプログラムがFlash Argorythm)、続いてシリアルでファームを送るという手順を踏んでいる。