Edited at

mbed LPC1768のプログラムをMDK-ARMでコンパイル

More than 3 years have passed since last update.

mbedオンラインコンパイラ上のmbed LPC1768向けプログラムを、オフラインコンパイラMDK-ARM v5.17でコンパイルしてみました。


前提

使うデバイスは、mbed LPC1768。

MDK-ARMは、v5.17。

オフラインコンパイラ Keil uVision4 を使ってみる(その1)を参考にしました。


MDK-ARM v5.17をインストール

MDK-ARM評価版ソフトウェア32KBコードサイズ限定版(期間無制限)をダウンロードして、インストールします。

20160116A.PNG


プログラム作成

mbedオンラインコンパイラにプログラムを作ります。なんでも良いので、mbed_blinkyで。

20160116B.PNG20160116C.PNG


プログラムをエクスポート

mbed_blinlyプログラムを右クリックして、プログラムのエクスポートを選択します。

20160116D.PNG

Export Toolchainは、Keil uVision4を選んで、Exportします。(MDK-ARM v5.17はuVision5ですが、選択肢に無いのでuVision4を選択。)

20160116E.PNG

zipファイルがダウンロードされるので、適当なフォルダに解凍します。

20160116F.PNG


uVision5でプログラムを開く

Keil uVision5を起動してFile -> Openを実行し、さきほど解凍したフォルダ内の、mbed_blinky.uvprojを開きます。

uVision4だよ!というダイアログが表示されるので、Migrate to Device Packをクリックします。


2016/1/17追記

MDK v4 Legacy Support for Cortex-M Devicesがインストールされていればダイアログ出ないようです。

Install Legacy Supportの方が正解だったかも。


20160116H.PNG20160116I.PNG


コンパイルオプションを設定変更

mbed NXP LPC1768を右クリックして、Options for Target...を選択します。

20160116K.PNG

C/C++タブの、OptimizationとOptimize for Time, Plain Char is Signedを変更します。

20160116L.PNG


uVision5でコンパイル

mbed NXP LPC1768を右クリックして、Build Targetを選択します。

20160116J.PNG


BuildOutput

*** Using Compiler 'V5.06 update 1 (build 61)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'

Build target 'mbed NXP LPC1768'
compiling main.cpp...
linking...
Program Size: Code=16160 RO-data=1536 RW-data=52 ZI-data=592
After Build - User command #1: fromelf --bin -o build\mbed_blinky_LPC1768.bin build\mbed_blinky.axf
".\build\mbed_blinky.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed: 00:00:01


コンパイル結果をデバイスに書き込む

buildフォルダ配下にあるmbed_blinky_LPC1768.binをmbedドライブへコピペします。