Fork of mbed-src file paths change. LPC1114FN28 use only.

Fork of mbed-src by mbed official

Information

この情報は2013/10/28時点での解決方法です。
現在はmbed-src、標準ライブラリで問題なくコンパイルが可能です。

・使う物
LPC1114FN28
mbed SDK

LPC1114FN28でmbed-SDKのLibraryを使うとCompile出来ない。(2013/10/28) /media/uploads/minicube/mbed_lpc1114_sdk.png

パスが通ってないだけのようなのでファイルを以下に移動する。

mbed-src\targets\cmsis\TARGET_NXP\TARGET_LPC11XX_11CXX\
mbed-src\targets\cmsis\TARGET_NXP\TARGET_LPC11XX_11CXX\TARGET_LPC11XX\

にあるファイルをすべて

mbed-src\targets\cmsis\TARGET_NXP\

へ移動

mbed-src\targets\cmsis\TARGET_NXP\TARGET_LPC11XX_11CXX\にある

TOOLCHAIN_ARM_MICRO

をフォルダごと

mbed-src\targets\cmsis\TARGET_NXP\

へ移動

mbed-src\targets\hal\TARGET_NXP\TARGET_LPC11XX_11CXX\
mbed-src\targets\hal\TARGET_NXP\TARGET_LPC11XX_11CXX\TARGET_LPC11XX\

にあるファイルをすべて

mbed-src\targets\hal\TARGET_NXP\

へ移動

移動後は以下のような構成になると思います。
※不要なファイルは削除してあります。

/media/uploads/minicube/mbed_lpc1114_sdk_tree.png


ファイルの移動が面倒なので以下に本家からフォークしたライブラリを置いておきます。

Import librarymbed-src-LPC1114FN28

Fork of mbed-src file paths change. LPC1114FN28 use only.


エラーが出力される場合

"TOOLCHAIN_ARM_MICRO"が無いとエラーになる。

Error: Undefined symbol _initial_sp (referred from entry2.o).
Error: Undefined symbol _heap_base (referred from malloc.o).
Error: Undefined symbol _heap_limit (referred from malloc.o).

LPC1114FN28はMicrolibを使ってCompileされるため上記のエラーになるようです。

Committer:
minicube
Date:
Sun Oct 27 20:12:31 2013 +0000
Revision:
43:b3acfef78949
Parent:
targets/cmsis/TARGET_NXP/TARGET_LPC13XX/cmsis_nvic.h@15:4892fe388435
mbed SDK; LPC1114FN28 use only

Who changed what in which revision?

UserRevisionLine numberNew contents of line
emilmont 10:3bc89ef62ce7 1 /* mbed Microcontroller Library - cmsis_nvic
emilmont 10:3bc89ef62ce7 2 * Copyright (c) 2009-2011 ARM Limited. All rights reserved.
emilmont 10:3bc89ef62ce7 3 *
emilmont 10:3bc89ef62ce7 4 * CMSIS-style functionality to support dynamic vectors
emilmont 10:3bc89ef62ce7 5 */
emilmont 10:3bc89ef62ce7 6
emilmont 10:3bc89ef62ce7 7 #ifndef MBED_CMSIS_NVIC_H
emilmont 10:3bc89ef62ce7 8 #define MBED_CMSIS_NVIC_H
emilmont 10:3bc89ef62ce7 9
emilmont 10:3bc89ef62ce7 10 #include "cmsis.h"
emilmont 10:3bc89ef62ce7 11
bogdanm 15:4892fe388435 12 #define NVIC_NUM_VECTORS (16 + 32) // CORE + MCU Peripherals
bogdanm 15:4892fe388435 13 #define NVIC_USER_IRQ_OFFSET 16
bogdanm 15:4892fe388435 14
emilmont 10:3bc89ef62ce7 15 #ifdef __cplusplus
emilmont 10:3bc89ef62ce7 16 extern "C" {
emilmont 10:3bc89ef62ce7 17 #endif
emilmont 10:3bc89ef62ce7 18
emilmont 10:3bc89ef62ce7 19 void NVIC_SetVector(IRQn_Type IRQn, uint32_t vector);
emilmont 10:3bc89ef62ce7 20 uint32_t NVIC_GetVector(IRQn_Type IRQn);
emilmont 10:3bc89ef62ce7 21
emilmont 10:3bc89ef62ce7 22 #ifdef __cplusplus
emilmont 10:3bc89ef62ce7 23 }
emilmont 10:3bc89ef62ce7 24 #endif
emilmont 10:3bc89ef62ce7 25
emilmont 10:3bc89ef62ce7 26 #endif