3 * Toyohashi Open Platform for Embedded Real-Time Systems/
4 * Advanced Standard Profile Kernel
6 * Copyright (C) 2000-2003 by Embedded and Real-Time Systems Laboratory
7 * Toyohashi Univ. of Technology, JAPAN
8 * Copyright (C) 2005-2007 by Embedded and Real-Time Systems Laboratory
9 * Graduate School of Information Science, Nagoya Univ., JAPAN
10 * Copyright (C) 2010 by TOPPERS/ASP for LPC project
11 * http://sourceforge.jp/projects/toppersasp4lpc/
13 * 上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
14 * ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
15 * 変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
16 * (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
17 * 権表示,この利用条件および下記の無保証規定が,そのままの形でソー
19 * (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
20 * 用できる形で再配布する場合には,再配布に伴うドキュメント(利用
21 * 者マニュアルなど)に,上記の著作権表示,この利用条件および下記
23 * (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
24 * 用できない形で再配布する場合には,次のいずれかの条件を満たすこ
26 * (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
27 * 作権表示,この利用条件および下記の無保証規定を掲載すること.
28 * (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
30 * (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
31 * 害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
32 * また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
33 * 由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
36 * 本ソフトウェアは,無保証で提供されているものである.上記著作権者お
37 * よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
38 * に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
39 * アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
44 #ifndef TOPPERS_CHIP_CONFIG_H
45 #define TOPPERS_CHIP_CONFIG_H
47 * \addtogroup TOPPERS_CHIP
53 * \brief カーネル実装のチップ依存部モジュール(NXP LPC18XX用汎用)
55 * カーネルのターゲット依存部のインクルードファイル.kernel_impl.hのター
67 #ifdef TOPPERS_ENABLE_TRACE
68 #include "logtrace/trace_config.h"
69 #endif /* TOPPERS_ENABLE_TRACE */
75 * \brief 非タスクコンテキスト用スタックポインタの初期値を格納する変数
77 * porting.txtは、*_kernel_istkptを変数として使い、そこに非タスクコンテキスト用
78 * スタックポインタの初期値を格納することを要請している。LPC1800の場合、*_kernel_istkptの
79 * 値は、SRAM実行とROM実行で異なる。これに対応するため、LDスクリプトで例外ベクトルの先頭を
80 * 指す値、_vector_start_lmaを作り、_kernel_istkptとして使用している。
82 #define _kernel_istkpt _vector_start_lma
84 #ifndef DEFAULT_ISTKSZ
86 * \brief デフォルトの非タスクコンテキスト用のスタック領域の定義
88 * 割り込み用のスタックのサイズを指定する。8の倍数として指定すること。このマクロは
89 * ターゲット依存部で指定していない場合にのみ使用される。
91 #define DEFAULT_ISTKSZ (2048)
96 #ifndef TOPPERS_MACRO_ONLY
99 * @brief PLLのクロックソース。 initPLL0に渡して使う。
101 typedef enum { eIrc, eMainOsc, eRtcOsc} pllClockSource_type;
104 * @param Hz PLLの出力周波数。Hz単位。4の倍数が許される。
106 * PLL1の周波数を設定する。クロックソースとなる発振器はIRC(12Mhz)で、それを元に
107 * PLL1を設定する。周波数は任意のものを与えてよいが、設定されるのは4MHzの倍数である。
109 extern void initPLL1(
118 * この館数はtarget_initializeから呼ぶことを前提としている。
120 extern void chip_initialize(void);
125 * システムを終了する時に使う.この関数はtarget_exit()から
126 * 呼ぶことを前提としており、prc_terminate()を呼び、処理が終了すると制御を戻す。
128 extern void chip_exit(void);
131 * \brief システムログの低レベル出力のための文字出力
136 extern void chip_fput_log(char_t c);
139 #endif /* TOPPERS_MACRO_ONLY */
142 * プロセッサ依存モジュール(ARM-M用)
144 #include "arm_m_gcc/common/core_config.h"
146 #endif /* TOPPERS_CHIP_CONFIG_H */