source: ssp_armv6_m_gcc/tags/1.3.0/target/lpcxpresso_lpc812_gcc/target_user.txt@ 86

Last change on this file since 86 was 86, checked in by nmir-saito, 9 years ago

add separate package of SSP kernel for ARMv6-M

  • Property svn:executable set to *
File size: 4.1 KB
Line 
1=====================================================================
2 LPCXPRESSO-LPC812ターゲット依存部 (ssp-1.3.0対応)
3 Last Modified: '15/05/22
4=====================================================================
5
6○概要
7
8LPCXPRESSO-LPC812ターゲット依存部は,プロセッサにLPC812(Cortex-M0+)を搭載した,
9LPCXpresso LPC812ボードをサポートしている.
10
11
12○カーネルの使用リソース
13
14カーネルは以下のリソースを使用する.
15
16 ・ROM
17 コードを配置する.
18 使用量は使用するAPIの数に依存する.
19
20 ・RAM
21 データを配置する.
22 使用量はオブジェクト数に依存する.
23
24 ・SysTick
25 カーネル内部のティックの生成に用いる.
26
27 ・Universal Synchronous Asynchronous Receiver Transmitter(USART)ポート0
28 コンソールの出力に使用.
29
30
31○他のターゲットへの移植
32
33LPCXPRESSO-LPC812ターゲット依存部で使用するシリアルは,LPC812の内蔵機能のみを使用するため,
34LPC800系のCotex-M0+を用いた環境には容易にポーティングが可能である.
35ポーティングに関しては,以下の初期化ルーチンにターゲット毎の初期化を追加すればよい.
36
37 ・target_initialize() : target_config.c
38 ターゲット依存部の初期化(C言語)
39 ・_hardware_init_hook : target_support.S
40 低レベルのターゲット依存の初期化
41 スタートアップモジュールの中で,メモリの初期化の前に呼び出される
42
43
44○デバッグ環境
45
46デバッグ環境としては,LPCXpresso LPC812に搭載されるSWDデバッガおよび
47開発およびデバッグの環境として LPCXpresso IDE の使用を前提とする.
48
49LPCXpresso IDEについては、以下のサイトを参照
50 http://www.lpcware.com/lpcxpresso/home
51
52
53○コンパイラ
54
55GCC で動作確認を行った.GCC は,LPCXpresso IDEに同梱されているものを利用した.
56動作確認に使用したツールのバージョンは以下のとおり.
57 ・GCC 4.9.3(LPCXpresso IDE 7.7.2)
58
59GCC については,同等のツールが以下のサイトからも入手することが可能である.
60https://launchpad.net/gcc-arm-embedded/
61
62○割込み優先度
63
64割込み優先度として指定可能な範囲は,-3 〜 -1 である.
65
66○コンソール出力
67
68コンソール出力には,USART0を用いる.LPCXPRESSO-LPC812はRS232Cポートを
69搭載していないため,ユニバーサル基板などを用いて当該ポートをPCに接続する
70必要がある.その際,RS-232Cドライバを介する必要がある点も注意すること.
71USART0の送信/受信ピンはSWMの機能により自由に設定が可能であるが,
72既定ではP0_0(RXD), P0_4(TXD) に設定されている.
73
74通信フォーマットは以下の通りである.
75
76 ・19200bps, Data 8bit, Parity none, Stop 1bit, Flow control none
77
78○アドレスマッピング
79
80 0x00000000 - 0x00003FFF 内蔵FlashROM 16KB
81               ・vectorセクション
82               ・textセクション
83               ・rodataセクション
84 0x10000000 - 0x10000FFF 内蔵RAM 4KB
85               ・dataセクション
86               ・bssセクション
87
88○各種設定の変更
89
90幾つかのパラメータは変更可能になっている.設定ファイル毎に設定可能項目
91は次のようになっている.
92
93●Makefile.target の設定項目
94
95・GCC_TARGET
96 GCCの suffix を定義
97
98・TEXT_START_ADDRESS/DATA_START_ADDRESS
99 テキストセクション,データセクションの開始アドレス
100
101・INCLUDES
102 インクルード指定
103
104・COPTS
105 Cコンパイラへのオプション
106
107・LDFLAGS
108 リンカへのオプション
109
110・USE_CMSIS
111 CMSISを利用する場合,trueに設定する.
112 デバイス定義ファイルLPC8xx.h を include してデバイスレジスタ定義を利用することが可能となる.
113 そのためには,インクルードファイルのサーチディレクトリとして LPC8xx.h の存在するファイルのパスを
114 CMSIS_INCLUDE_PATHに指定する (もしくは,LPCXpresso IDE でサーチパスの設定をしても良い)
115
116 また,ライブラリファイル(libCMSIS_CORE_LPC8xx.a)の利用は想定していない.
117 少なくともsystem_LPC8xx.c の SystemInit に相当する処理(クロック設定)については
118 SSPのシステム起動時に実施しており,基本的に呼び出す必要はない.
119 ※ WDTの初期設定はおこなっていないため,必要ならば初期化が必要である.
120
121・USE_MTB
122 LPC800シリーズに搭載されているMTB(Micro Trace Buffer)を利用する場合,trueに設定する
123 その場合,バッファのサイズを MTB_BUF_SIZE に,バイト単位で設定する
124
125●target_config.h の設定項目
126
127・DEFAULT_ISTKSZ
128 デフォルトの非タスクコンテキスト用のスタックサイズ
129
130・SIL_DLY_TIM1/2 (現時点では未検証)
131 微少時間待ちのための定義
132
133●target_syssvc.h の設定項目
134
135・UART_BAUDRATE
136 コンソールに使用するポート(USART0)のボーレート
137
138
139○変更履歴
140・2015/05/21
141 ・ssp-1.3.0対応
142
143 ・2013/06/19
144  新規作成
Note: See TracBrowser for help on using the repository browser.