禺画像]
前回手に入れたサンプル (
LPC810 CodeBase) をコンパイルして書き込んでみよう。
使う環境はいつもの通り
Keil MDK-ARM V4.53
GCC Sourcery CodeBench Lite 2012.09-63
さっそくプロジェクトを作る。
Output
〓 Create Executable
R Create HEX File
Listing
R Linker Listing
R Memory Map
CC
Define __USE_CMSIS
R Enable APCS (ARM Procedure Call Standard)
R Support Calls between ARM and THUMB Instruction Set
R Compile Thumb Code
IncludePaths .\cmsis;.\src
MiscControls -fmessage-length=0 -fno-builtin -ffunction-sections -fdata-sections
Assembler
Define
R Enable ARM/Thumb Interworking
Include Paths
MiscControls
Linker
R Do not use Standard System Startup Files
R Do not use Standard System Libraries
R Use Math Libraries
linkerScriptFile .\linker\LPC810_rom_gnu.ld
IncludeLibraries
IncludePaths .\linker
MiscControls -nostdlib -Xlinker --gc-sections
Utilities
〓 Use External Tool for Flash Programming
Command fm.exe
Arguments DEVICE($D,$X) ERASEUSED("!H",PROTECTISP) HEXFILE("!H",NOCHECKSUMS,NOFILL,PROTECTISP) COM(1,230400)
ソースをプロジェクトに登録
main.c
system_LPC8xx.c
gpio.c
mrt.c
printf.c
printf-retarget.c
spi.c
uart.c
startup_LPC8xxG++.s
次にソースの修正
system_LPC8xx.c
System PLL Clock Source Select Register (SYSPLLCLKSEL) を System Oscillator から IRC Oscillator に変更(1を0)
コンパイル・・・・・・・・問題ない
書き込み・・・・・・・・・エラーだ!
ERROR: Invalid parameters for DEVICE directive: DEVICE(LPC810M021,12.0)
今回 Flash Magic を新しくしたのでそのせいかも知れない。
ドキュメントを読んでみると、パラメータに flashbank が増えている。
パラメータを追加して書き込み・・・・・・・・またエラーだ。
ERROR: Invalid parameters for DEVICE directive: DEVICE(LPC810M021,12.0,0)
何がいけないんだ。
GUI版では書き込みできるのでGUI版と同じデバイス名(LPC810M021FN8)を使ってみる。
書き込み・・・・・・・・・エラーだ!
ERROR: Invalid parameters for ERASEUSED directive: ERASEUSED(.\outG++\LPC810_CodeBaseS.HEX,PROTECTISP)
今度は異なる部分のパラメータだ。
分からない。
もうだめだ。
GUI版の Flash Magic で書き込むことにする。
書き込んで Reset 。
動いている。
特に問題は無いようだ。
さて、ここで動作 Clock を調べてみよう。system_LPC8xx.c の SYSPLLCTRL_Val が 0x41で SYSAHBCLKDIV_Val が 0x1なので Main CLK が 24MHz 、System clock も 24MHz ということになる。
環境:
LPC800 Mini Kit (LPC810M021FN8)
+ Keil MDK-ARM V4.53
+
LPC800 Support for version 4.60 of Keil MDK-ARM
+ GCC Sourcery CodeBench Lite 2012.09-63
+
LPC810 CodeBase
+
Flash Magic Version 7.50
セコメントをする