LPC1114FN28を使ってみよう‼ 以前の記事「ARシューティングゲーム」 で敵機の制御用マイコンとして、LPC1114というものを紹介しました。これはmbed という非常に使いやすいマイコンと同様に使えます。私は今まで5000円ぐらいするmbedを使っていたのですが、こちらのLPC1114は秋葉原にある千石電商 で180円程で購入でき、かつ電子工作ぐらいであれば十分な機能を使用できます。 書き込みの方法を勉強する際にこちらのページ を参考にさせていただいたのですが、その際にいくつか調べたこととか、つまづいたことを書いていきます。
書き込み用回路 先ほどのページ に以下のような画像があります。
書き込み用の回路はこの写真と同じものを組めば大丈夫です。ちなみにタクトスイッチの下のほうにある抵抗は10kΩ、dp24に接続してある抵抗は330Ωです。シリアルピン周り以外の回路は、タクトスイッチを押したときにマイコンをリセットするための回路です。写真の右下にあるLEDとそれにつながる抵抗は、LEDを点滅させるサンプルプログラムを実行するためについているだけなので、書き込みの際に特につける必要はありません。写真の左側にそそり立っているものは、USB-Serial変換モジュールです。私は千石電商から1400円ほどで購入しました。パソコン側からのプログラムはここから書き込みます。変換モジュールのTXをマイコンのRXに、変換モジュールのRXをマイコンのTXに繋ぎましょう。また、変換モジュールのVCCはブレッドボードの電源ラインに、変換モジュールのGNDはブレッドボードのGNDラインに繋ぎましょう。
書き込みに必要なもの こちらのページ を参考に、書き込みに必要なソフトウェアを集めました。以下にもそれを載せます。
Flash Magic PCからマイコンにプログラムを書き込む際に必要になります。 arm-none-eabi-objcopy.exe こちらのページ からダウンロードできる、Sourcery CodeBench for ARM Lite Editionの中に含まれています。多分展開したファイル内に入っている時は、「objcopy.exe」という名前だと思います。 arm-2013.05\arm-none-eabi\bin らへんのフォルダに入っているかと。 Flash Magicから書き込む際にはソースコードをインテルHEXフォーマットの.hexファイルにコンパイルしたものが必要なのですが、mbedのブラウザ上の開発環境でコンパイルすると、2進数形式でコンパイルされた.binファイルしかダウンロードできません。そのbinファイルをhexファイルに変換するために使います。 bin2hexを使えば出来るという記事もありますが、bin2hexは64bitのWindowsだと使えないようで、代替案として採用しました。 書き込み補助ツール 上のarm-none-eabi-objcopy.exeはコマンドラインから呼び出さなければいけないのですが、リンク先 のページの著者様が作成した書き込み補助ツールを使えば、簡単にbinからhexファイルに変換できます。 使い方は下の画像のような感じです。(クリックして拡大) 書き込み手順 前節までの説明と、リンク先の各サイトを回れば、書き込みに必要な回路とソフトウェアが手に入ったと思います。本節では、それらをどのような手順で使っていけば、180円mbedに書き込めるか書きます。
mbedコンパイラー(ブラウザ上)からソースコードをコンパイル&ダウンロード。 objcopy.exeの設定をした書き込み補助ツールを用いて、binファイルをhexファイルに変換する。 マイコンを書き込み用回路に繋ぐ。 シリアルーUSB変換モジュールのⅤcc、GND、TX、RXを繫ぐ。 dp24とGNDを330Ωの抵抗で繋ぐ。 FlashMagicを使用して書き込む。 下の画像(クリックして拡大)を参考にして設定してください。 Step1では書き込みターゲットをLPC1114/102としてください。(マイコンの表面に同じ型番が書いてあると思います。) COMポートはUSB-シリアル変換モジュールが認識されているCOMポート番号にしてください。ポート番号はWindowsのデバイスマネージャとかで確認できます。 ボーレートは9600にしてください。インターフェースはISP、オシレータは12MHzにしてください。 Step2ではErase all 何とかって方にチェック入れとけばいいと思い ます。 Step3では書き込みたいhexファイルを選んでください。 Step4のチェックボックスは特にチェックしなくても書き込めます。 Step5でスタート押して書き込んでください。 書き込み用回路(ブレッドボード)のタクトスイッチを押して、マイコンをリセットしてください。 dp24に繋いだ330Ωの抵抗を外してください。 この時点でプログラムが書き込んだプログラムが動いていなかったら、もう一度リセットボタンを押してみてください。 以上で書き込みができると思います。うまくいかないときは、きちんとマイコンがつながっているか確認してください。
追記です。
たまにFlashMagicでの書き込みが、"autobaud error"で接続できませんというようなエラーで出来ないときがあります。
このような時は私はFlashMagicを再起動することで書き込めました。
スポンサーサイト
テーマ:電子工作 - ジャンル:コンピュータ