LPC1114の動作確認まで
巷で噂(だった)の低価格mbedであるLPC1114への書き込み確認までを記録した。
LPC1114とは?
いつも使っているatmega328pが¥250であることを考えるとLPC1114は¥140であり、性能から考えると爆安である。arduino一派であるが、乗り換えちゃいそう。arduinoの領域を食いにかかっている風に見えるがそのパッケージはいかがなものか。
しかし少し調べてみると書き込みが煩雑であるため放置していたのであった。二年も。 というわけで本日はLチカまでの軌跡を記録しておく。
※以下全部MacOSでやってます。
全体の流れ
binファイル▶︎bin2hex(後述)▶︎hexファイル▶︎Flash Magic(後述)▶︎usb-serial▶︎LPC1114
となる。赤字のところが謎多き部分である。
binファイルの入手
入手というよりコンパイルしてもらうのだが、mbed compilerの使用経験がある前提で話を進める。今回はblink.binという一秒おきにLED2を点滅させるプログラムをコンパイルしてダウンロードしておいた。
bin2hexを使う
bin2hexは.pkgのようにインストールするものではないため実行形式のファイルとしてコンパイルしてあげないといけない。bin2hexを解凍し、そのディレクトリ内に移動する。
$ make
をターミナルで実行するとbin2hexという実行ファイルができる。準備完了。 先ほどのblink.binをbin2hexと同じディレクトリ内に移動し、ターミナルで
$ ./bin2hex blink.bin > blink.hex
と実行してあげるとhexファイルが生成される。
書き込み器について
書き込みに必要な端子は非常に少なく、RX,TXとVcc,GNDがあれば書き込みができる。今回は3.3Vの電源が欲しかったので、マルツのusb-serial変換器(MPL2303SA)を使用した。配線図は他所に詳細があるのでここでは割愛。
・実体配線(生)をのせておきますね。
要はLPC1114のRX,TXとMPL2303SAのTX,RXを接続してあげればよい。このとき、dp24とGNDのあいだに抵抗を挟むことでISP通信を有効化する(画面左上の抵抗)。mbedはチップにプログラムを焼いて一度リセットしないと動作しないが、リセットの際にこの抵抗を外さないと書き込んだプログラムが起動しないので注意。
FlashMagicを使う
準備ができたところで書き込みに入る。FlashMagicのインストールについては特に問題がないので割愛。肝は設定のほうである。
成功時の設定(特にCOMポートは変わります)
設定について…
[Select]ではLPC1114/102に書き込む。( 複数のバンクがあるようで)
書き込みはCOM9でうまくいったが、様々なusb機器をつなげたりすると割当が変わる気がするので各自で調べるべし。
baudrateは9600でInterfaceはISPで変更しなくてよい。
先ほどのblink.hexを読み込んで[Start]をおしてしばし待つ。
書き込みが終わったら、dp24につけておいたプルアップ抵抗を外し、リセットスイッチを押す。するとプログラムが動き出す。
以上Lチカまでの顛末
次はI2Cか何かを。