OSDN Git Service

チケット #25227 「PORTID != 1の場合に対応する」への部分対応
[toppersasp4lpc/asp.git] / asp / target / lpcxpresso1768_gcc / target_syssvc.h
1 /*
2  *  TOPPERS/ASP Kernel
3  *      Toyohashi Open Platform for Embedded Real-Time Systems/
4  *      Advanced Standard Profile Kernel
5  * 
6  *  Copyright (C) 2007 by Embedded and Real-Time Systems Laboratory
7  *              Graduate School of Information Science, Nagoya Univ., JAPAN
8  *  Copyright (C) 2010 by TOPPERS/ASP for LPC project
9  *              http://sourceforge.jp/projects/toppersasp4lpc/
10  *
11  * 
12  *  上記著作権者は,以下の(1)〜(4)の条件を満たす場合に限り,本ソフトウェ
13  *  ア(本ソフトウェアを改変したものを含む.以下同じ)を使用・複製・改
14  *  変・再配布(以下,利用と呼ぶ)することを無償で許諾する.
15  *  (1) 本ソフトウェアをソースコードの形で利用する場合には,上記の著作
16  *      権表示,この利用条件および下記の無保証規定が,そのままの形でソー
17  *      スコード中に含まれていること.
18  *  (2) 本ソフトウェアを,ライブラリ形式など,他のソフトウェア開発に使
19  *      用できる形で再配布する場合には,再配布に伴うドキュメント(利用
20  *      者マニュアルなど)に,上記の著作権表示,この利用条件および下記
21  *      の無保証規定を掲載すること.
22  *  (3) 本ソフトウェアを,機器に組み込むなど,他のソフトウェア開発に使
23  *      用できない形で再配布する場合には,次のいずれかの条件を満たすこ
24  *      と.
25  *    (a) 再配布に伴うドキュメント(利用者マニュアルなど)に,上記の著
26  *        作権表示,この利用条件および下記の無保証規定を掲載すること.
27  *    (b) 再配布の形態を,別に定める方法によって,TOPPERSプロジェクトに
28  *        報告すること.
29  *  (4) 本ソフトウェアの利用により直接的または間接的に生じるいかなる損
30  *      害からも,上記著作権者およびTOPPERSプロジェクトを免責すること.
31  *      また,本ソフトウェアのユーザまたはエンドユーザからのいかなる理
32  *      由に基づく請求からも,上記著作権者およびTOPPERSプロジェクトを
33  *      免責すること.
34  * 
35  *  本ソフトウェアは,無保証で提供されているものである.上記著作権者お
36  *  よびTOPPERSプロジェクトは,本ソフトウェアに関して,特定の使用目的
37  *  に対する適合性も含めて,いかなる保証も行わない.また,本ソフトウェ
38  *  アの利用により直接的または間接的に生じたいかなる損害に関しても,そ
39  *  の責任を負わない.
40  * 
41  */
42 /**
43  * \addtogroup TOPPERS_TARGET
44  * \{
45  */
46
47 /**
48  * \file target_syssvc.h
49  * \brief システムサービスのターゲット依存部(LPC1768用)
50  * \details
51  * porting.txt8章で示される、システムサービスのターゲット依存部。
52  *
53  *  システムサービスのターゲット依存部のインクルードファイル.このファ
54  *  イルの内容は,コンポーネント記述ファイルに記述され,このファイルは
55  *  無くなる見込み.
56  */
57
58 #ifndef TOPPERS_TARGET_SYSSVC_H
59 #define TOPPERS_TARGET_SYSSVC_H
60
61
62 /*
63  *  ターゲットシステムのハードウェア資源の定義
64  */
65 #include "lpcxpresso1768.h"
66 /*
67  *  チップ共有のハードウェア資源の読み込み
68  */
69 #include "chip_syssvc.h"
70
71
72 /**
73  * \brief 起動メッセージのターゲットシステム名
74  */
75 #define TARGET_NAME    "LPCXpresso 1768"
76
77 /*
78  *  起動メッセージにターゲット依存部の著作権表示を
79  *  追加する必要があるときには、このマクロを使う。
80  */
81 #if 0
82 #define TARGET_COPYRIGHT        CHIP_COPYRIGHT "Copyright (C) 2010 by TOPPERS/ASP for LPC project\n            http://sourceforge.jp/projects/toppersasp4lpc/"
83 #else
84 #define TARGET_COPYRIGHT CHIP_COPYRIGHT
85 #endif
86
87 /**
88  * \brief コンソールが使用するシリアルポートID
89  * \details
90  * UIF用コンソールに使用するポート番号である。ポート番号は1から始まる整数。
91  *
92  * LPCX1768では、PORT番号に応じて正しいUARTにピンを割り当て、必要に応じて電源を与えなければならない。
93  * これらは target_config.c の target_initialize() にまとめてある。ただし、target_initialize()が
94  * 対応するのは限定的な組み合わせである。詳しくは、 target_initialize() のコメントを参照。
95  */
96 #define SIO_PORTID              (1)
97
98
99 /**
100   * \brief UARTドライバが管理する内蔵UARTの数
101  */
102 #define TNUM_SIOP_UART   (1)
103 /**
104   * \brief システムが管理するシリアル・ポートの総数
105   * \details
106   * この実装では内蔵UARTしか使用しないので、TNUM_PORT = TNUM_SIOP_UARTになる
107  */
108 #define TNUM_PORT        TNUM_SIOP_UART         /* システムが管理するシリアルポートの総数 */
109
110
111 /*
112  * SIOポートコンフィギュレーションの正当性確認
113  *
114  * この実装では、UIFコンソール用ポートは、TNUM_SIOP_UARTの値と同じか、
115  * より小さくなければならない。
116  */
117 #if (SIO_PORTID > TNUM_SIOP_UART)
118 #error "SIO_PORTID must be less than or equal to TNUM_SIOP_UART"
119 #endif
120
121 /**
122  * \brief システムログ用のシリアルポート番号
123  * \details
124  * logtaskで使用する。1オリジン。
125  *
126  * システムログ用のシリアルポートは、コンソール用のシリアルポートと強要することが多い。
127  */
128 #define LOGTASK_PORTID   SIO_PORTID
129
130 /**
131  * \brief シリアルポートのデフォルトボーレート
132  * \details
133  * TOPPERS/ASPのシリアルポート1に対するボーレート設定値である。
134  * シリアルポートの番号は1オリジンになっている。特に設定しない限り、
135  * 2番以降のシリアルポートに対しても同じ値が設定される。2番以降の
136  * シリアルポートの速度を変えたければ、マクロSIOx_BAUD_RATEを宣言する。
137  */
138 #define SIO_BAUD_RATE_DEFAULT           (57600)
139
140 //#define SIO_BAUD_RATE_PORT1           (57600)
141 //#define SIO_BAUD_RATE_PORT2           (57600)
142 //#define SIO_BAUD_RATE_PORT3           (57600)
143 //#define SIO_BAUD_RATE_PORT4           (57600)
144
145 /**
146  * \brief システムログの低レベル出力のための文字出力
147  * \details
148  *  ターゲット依存の方法で,文字cを表示/出力/保存する.
149  */
150 extern void     target_fput_log(char_t c);
151
152 #endif /* TOPPERS_TARGET_SYSSVC_H */
153 /**
154  * \}
155  */