Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
1 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
1. 概要 ...................................................................................................... 2
1.1 概要 .......................................................................................................................... 2 1.2 動作モード .................................................................................................................. 2 1.3 開発環境について ......................................................................................................... 4 1.4 ワークスペースについて................................................................................................. 4
2. サンプルプログラムの構成 .......................................................................... 5
2.1 フォルダ構成 ............................................................................................................... 5 2.2 ファイル構成 ............................................................................................................... 6
3. AP-RZA-1A サンプルプログラム ................................................................ 10
3.1 ビルド・デバッグ方法 .................................................................................................. 10 3.1.1 プロジェクトのインポート ...................................................................................... 10 3.1.2 プロジェクトのビルド ............................................................................................ 13 3.1.3 RAM 上でのデバッグ .............................................................................................. 14 3.1.4 ROM 上でのデバッグ ............................................................................................. 19
3.2 動作説明 .................................................................................................................... 24 3.2.1 ブート処理 .......................................................................................................... 24 3.2.2 サンプルプログラム概要 ......................................................................................... 25
3.3 RAM 動作時のメモリマップ ........................................................................................... 30 3.4 ROM 動作時のメモリマップ ........................................................................................... 31
AP-RZA-1A (RZ/A1H CPU BOARD)
ベアメタルサンプルプログラム(DS-5)解説 2.1 版 2020年06月01日
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
2 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
1. 概要 1.1 概要
本アプリケーションノートでは、AP-RZA-1A に付属するサンプルプログラムについて解説します。
本サンプルプログラムの概要を以下に記します。
1.2 動作モード
本サンプルプログラムは、AP-RZA-1A で動作します。CPU 動作モードは下記のようになっています。
モードの設定方法等につきましては、「AP-RZA-1A ハードウェアマニュアル」をご覧ください。
なお、下記条件以外で動作させる場合には、ソースファイルやコンパイラオプションなどを変更する必要があります。
ブートモード : シリアル FlashROM からブート
サンプルプログラム 動作内容
ベアメタルサンプルプログラム ・タイマ割り込み
・シリアル通信
・LED 制御
・LCD 出力
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
3 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
CPU ボードの設定を製品出荷時の設定とし、使用方法に合わせて以下の各スイッチの設定を行ってください。
JSW1
<JSW1 設定>
ブートモード : シリアル FlashROM からブート
・JSW1
JSW1
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
4 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
1.3 開発環境について
本サンプルプログラムは統合開発環境 Arm Development Studio 5TM (DS-5TM)を用いて開発されています。
サンプルプログラムに対応する開発環境、コンパイラのバージョンは次のとおりです。
開発環境 バージョン コンパイラ名 バージョン 備考
Arm
Development
Studio 5
5.19.1 ARM
Compiler
5.04 update 2 DS-5 Renesas RZEdition
1.4 ワークスペースについて
本サンプルプログラムの統合開発環境 Arm Development Studio 5 プロジェクトフォルダは次のフォルダに
格納されています。
サンプルプログラム フォルダ
ベアメタル
サンプルプログラム
プロジェクトフォルダ
\sample\ap_rza_1a
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
5 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
2. サンプルプログラムの構成
2.1 フォルダ構成
サンプルプログラムは下記のようなフォルダ構成になっています。
sample
ap_rza_1a サンプルプログラムワークフォルダ
BAT バイナリ生成用バッチファイルフォルダ
Debug RAM 動作用ワークフォルダ
Release ROM 動作用ワークフォルダ
Include インクルードフォルダ
SCAT スキャッタローディングファイルフォルダ
SRC ソースファイルフォルダ
ap_rza_1a ボード依存部ソースフォルダ
boot ブート処理フォルダ
gpio GPIO ドライバフォルダ
handler ハンドラフォルダ
intc 割り込みコントローラドライバフォルダ
lcdkit LCDKIT ドライバフォルダ
data LCD-KIT 画像・音声データフォルダ
lcdkit_b01 LCD-KIT-B01 ドライバフォルダ
lcdkit_b02 LCD-KIT-B02 ドライバフォルダ
lcdkit_c01 LCD-KIT-C01 ドライバフォルダ
lcdkit_d01 LCD-KIT-D01 ドライバフォルダ
lcdkit_d02 LCD-KIT-D02 ドライバフォルダ
riic RIIC ドライバフォルダ
scif SCIF ドライバフォルダ
timer タイマドライバフォルダ
vdc5 ビデオディスプレイコントローラドライバフォルダ
vector ベクタテーブルフォルダ
common.h 共通ヘッダファイル
lcdkit_app.c LCD-KIT アプリケーションソースファイル
lcdkit_app.h LCD-KIT アプリケーションヘッダファイル
main.c メインソースファイル
retarget.c 標準入出力再定義ファイル
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
6 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
2.2 ファイル構成
サンプルプログラムは以下のファイルで構成されています。
<\sample フォルダ内>
ap_rza_1a ・・・ AP-RZA-1A サンプルプログラムワークフォルダ
<\sample\ap_rza_1a フォルダ内>
.cproject ・・・ CPROJECT ファイル
.project ・・・ PROJECT ファイル
<\sample\ap_rza_1a\BAT フォルダ内>
make_bin.bat ・・・ バイナリファイル生成用バッチファイル
<\sample\ap_rza_1a\Debug フォルダ内>
ap_rza_1a.axf ・・・ サンプルプログラム RAM 動作用オブジェクトファイル
ap_rza_1a.bin ・・・ サンプルプログラム RAM 動作用バイナリファイル
ap_rza_1a.mot ・・・ サンプルプログラム RAM 動作用モトローラファイル
ap_rza_1a.map ・・・ サンプルプログラム RAM 動作用マップファイル
コンパイル後は SRC フォルダが生成され、SRC フォルダ下
にオブジェクトファイル等が生成されます。
<\sample\ap_rza_1a\Release フォルダ内>
ap_rza_1a.axf ・・・ サンプルプログラム ROM 動作用オブジェクトファイル
ap_rza_1a.bin ・・・ サンプルプログラム ROM 動作用バイナリファイル
ap_rza_1a.mot ・・・ サンプルプログラム ROM 動作用モトローラファイル
ap_rza_1a.map ・・・ サンプルプログラム ROM 動作用マップファイル
コンパイル後は SRC フォルダが生成され、SRC フォルダ下
にオブジェクトファイル等が生成されます。
<\sample\ap_rza_1a\SCAT フォルダ内>
ap_rza_1a_ram.scat ・・・ サンプルプログラム RAM 動作用スキャッタローディング
ファイル
ap_rza_1a_rom.scat ・・・ サンプルプログラム ROM 動作用スキャッタローディング
ファイル
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
7 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
<\sample\ap_rza_1a_rtx\Include フォルダ内>
arm_common_tables.h ・・・ コモンテーブルヘッダファイル
arm_math.h ・・・ DSP 共通ヘッダファイル
core_ca_mmu.h ・・・ MMU スタートアップファイル
core_ca9.h ・・・ ペリフェラルアクセスレイヤヘッダファイル
core_caFunc.h ・・・ コアファンクションアクセスヘッダファイル
core_caInstr.h ・・・ コアペリフェラルアクセスヘッダファイル
core_cm0.h ・・・ Cortex-M0 コアペリフェラルアクセスヘッダファイル
core_cm0plus.h ・・・ Cortex-M0+ コアペリフェラルアクセスヘッダファイル
core_cm3.h ・・・ Cortex-M3 コアペリフェラルアクセスヘッダファイル
core_cm4.h ・・・ Cortex-M4 コアペリフェラルアクセスヘッダファイル
core_cm4_simd.h ・・・ Cortex-M4 SIMD ヘッダファイル
core_cmFunc.h ・・・ Cortex-M コアファンクションアクセスヘッダファイル
core_cmInstr.h ・・・ Cortex-M コア命令アクセスヘッダファイル
core_sc000.h ・・・ SC000 コアペリフェラルアクセスレイヤヘッダファイル
core_sc300.h ・・・ SC300 コアペリフェラルアクセスレイヤヘッダファイル
<\sample\ap_rza_1a_rtx\SRC\ap_rza_1a フォルダ内>
iodefines ・・・ RZ 内部レジスタ定義ヘッダファイルフォルダ
cache.c ・・・ キャッシュ処理ファイル
cache.h ・・・ キャッシュ処理ヘッダファイル
iodefine.h ・・・ 内部レジスタ定義ファイル
l1_cache_init.s ・・・ L1 キャッシュ初期化ファイル
l1_cache_operation.s ・・・ L1 キャッシュ操作ファイル
l2_cache_init.c ・・・ L2 キャッシュ初期化ファイル
r_typedefs.h ・・・ 型宣言ファイル
Renesas_RZ_A1.h ・・・ ペリフェラルアクセスヘッダファイル
resetprg.c ・・・ main()前処理ファイル
rza_io_regrw.c ・・・ レジスタ読み書きファイル
startup.s ・・・ スタートアップ処理ファイル
ttb.s ・・・ TTB 作成処理ファイル
typedefine.h ・・・ 型宣言ファイル
vbar.s ・・・ VBAR 設定処理ファイル
<\sample\ap_rza_1a\SRC\boot フォルダ内>
boot.c ・・・ ブート処理ファイル
boot.h ・・・ ブート処理ヘッダファイル
sflash_init.c ・・・ シリアル Flash 初期化処理ファイル
sflash_init.h ・・・ シリアル Flash 初期化処理ヘッダファイル
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
8 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
<\sample\ap_rza_1a\SRC\gpio フォルダ内>
gpio.c ・・・ GPIO ドライバファイル
gpio.h ・・・ GPIO ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\handler フォルダ内>
handler.c ・・・ 個別割り込みハンドラファイル
irqfiq_handler.s ・・・ IRQ、FIRQ ハンドラファイル
<\sample\ap_rza_1a\SRC\intc フォルダ内>
intc.c ・・・ 割り込みコントローラドライバファイル
intc.h ・・・ 割り込みコントローラドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit フォルダ内>
lcdkit.c ・・・ LCD-KIT ドライバファイル
lcdkit.h ・・・ LCD-KIT ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit_b01 フォルダ内>
lcdkit_b01.c ・・・ LCD-KIT-B01 ドライバファイル
lcdkit_b01.h ・・・ LCD-KIT-B01 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit_b02 フォルダ内>
lcdkit_b02.c ・・・ LCD-KIT-B02 ドライバファイル
lcdkit_b02.h ・・・ LCD-KIT-B02 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit_c01 フォルダ内>
lcdkit_c01.c ・・・ LCD-KIT-C01 ドライバファイル
lcdkit_c01.h ・・・ LCD-KIT-C01 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit_d01 フォルダ内>
lcdkit_d01.c ・・・ LCD-KIT-D01 ドライバファイル
lcdkit_d01.h ・・・ LCD-KIT-D01 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit_d02 フォルダ内>
lcdkit_d02.c ・・・ LCD-KIT-D02 ドライバファイル
lcdkit_d02.h ・・・ LCD-KIT-D02 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\lcdkit\data フォルダ内>
image_data.c ・・・ LCD-KIT 表示画像データファイル
image_data.h ・・・ LCD-KIT 表示画像データヘッダファイル
sound_data.c ・・・ LCD-KIT 出力音声データファイル
sound_data.h ・・・ LCD-KIT 出力音声データヘッダファイル
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
9 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
<\sample\ap_rza_1a\SRC\riic フォルダ内>
riic.c ・・・ I2C 通信ドライバファイル
riic.h ・・・ I2C 通信ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\scif フォルダ内>
scif.c ・・・ シリアル通信ドライバファイル
scif.h ・・・ シリアル通信ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\timer フォルダ内>
timer.c ・・・ タイマドライバファイル
timer.h ・・・ タイマドライバヘッダファイル
<\sample\ap_rza_1a\SRC\vdc5 フォルダ内>
vdc5.c ・・・ VDC5 ドライバファイル
vdc5.h ・・・ VDC5 ドライバヘッダファイル
<\sample\ap_rza_1a\SRC\vector フォルダ内>
vectors.s ・・・ ベクタテーブルファイル
vectors_mirror.s ・・・ ミラーベクタテーブルファイル
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
10 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3. AP-RZA-1A サンプルプログラム
3.1 ビルド・デバッグ方法
3.1.1 プロジェクトのインポート
① DS-5 を起動し、メニューバーの[ファイル]→[インポート]を選択します。
② [既存のプロジェクトをワークスペースへ]を選択し[次へ]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
11 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
③ [ルート・ディレクトリーの選択]を選択し、[参照]からサンプルプログラムのフォルダを選択します。
④ [終了]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
12 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑤ ナビゲータウィンドウにサンプルプログラムのプロジェクトが追加されていることを確認します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
13 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.1.2 プロジェクトのビルド
① ツールバーからビルドアイコンを選択します。
アイコン横のした矢印をクリックすることでコンフィグレーションごとのビルドが可能です。
構成が Debug の場合、\Debug ワークフォルダに RAM 動作用のオブジェクトファイルが、
Release の場合、\Release ワークフォルダ内に ROM 動作用のオブジェクトファイルが生成されます。
DS-5 の詳細な使用方法に関しては DS-5 のマニュアルを参照してください。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
14 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.1.3 RAM 上でのデバッグ
① [「DS-5 デバッグ」 パースペクティブ]をクリックし、DS-5 のデバッグ画面へ移行します。
② メニューバーから[実行]→[デバッグコンフィグレーション]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
15 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
③ [DS-5 デバッガ]を選択した後、[新規作成]を選択します。
④ [接続]タブを開き、[名前]に[ap_rza_1a_ram_sample]と入力し、[ターゲットの選択]に
[Renesas → RZ/A1H R7S721001 → Bare Metal Debug → Debug Cortex-A9]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
16 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑤ [ターゲット接続]を[ULINK2]に設定し、[接続]の[参照...]を選択して
ホスト PC に接続しているデバッガ(ULINK2)を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
17 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑥ [ファイル]タブを開き、
[ワークスペース]からビルドしたオブジェクトファイル(ap_rza_1a.axf)を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
18 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑦ [適用]を選択し、[閉じる]を選択します。
⑧ [ターゲットに接続]アイコンを選択します。
⑨ デバッガがターゲットに接続された後、デバッグを行います。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
19 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.1.4 ROM 上でのデバッグ
ROM デバッグを行う際には、事前にアプリケーションノート
「AN1608 AP-RZA-1A (RZ/A1H CPU BOARD)シリアル FlashROM の書き込み方法」を参考に、
ボード上のシリアルフラッシュに ROM デバッグ用サンプルプログラムを書き込む必要がございます。
① [「DS-5 デバッグ」 パースペクティブ]をクリックし、DS-5 のデバッグ画面へ移行します。
② メニューバーから[実行]→[デバッグコンフィグレーション]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
20 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
③ [DS-5 デバッガ]を選択した後、[新規作成]を選択します。
④ [接続]タブを開き、[名前]に[ap_rza_1a_rom_sample]と入力し、[ターゲットの選択]に
[Renesas → RZ/A1H R7S721001 → Bare Metal Debug → Debug Cortex-A9]を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
21 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑤ [ターゲット接続]を[ULINK2]に設定し、[接続]の[参照...]を選択して
ホスト PC に接続しているデバッガ(ULINK2)を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
22 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑥ [ファイル]タブを開き、
[ワークスペース]からビルドしたオブジェクトファイル(ap_rza_1a.axf)を選択します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
23 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
⑦ [適用]を選択し、[閉じる]を選択します。
⑧ [ターゲットに接続]アイコンを選択します。
⑨ デバッガがターゲットに接続された後、デバッグを行います。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
24 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.2 動作説明
3.2.1 ブート処理
AP-RZA-1A のブートモードがブートモード3(シリアルフラッシュブート)に設定されている場合、パワーオンリセット
解除後に CPU は 0xFFFF0000(内蔵 ROM)に格納されているブートプログラムを実行します。
このブートプログラムにより、SPI マルチ I/O バスコントローラが外部アドレス空間リードモードに設定され、基板上に
実装されたシリアルフラッシュに対し直接データの読み出しが可能になります(SPI マルチ I/O バス空間:0x18000000~)。
ブートプログラムの終了後、CPU は 0x18000000 に分岐します。
そのため、本サンプルプログラムでは例外処理ベクタテーブルを 0x18000000 に配置しブートプログラムの終了後に
リセットハンドラ処理に分岐するようにしています。
リセットハンドラ処理ではベクタベースアドレスの設定、スタックの初期化、内蔵 RAM 書き込みの許可、
MMU・キャッシュの初期化、クロック周波数の設定やボードの初期化を行い、
最後に ARM 統合開発環境 DS-5 のコンパイラツールチェーンによって提供されるC標準ライブラリ関数__main に分岐します。
__main 関数内ではスキャッタローディングファイルを利用したセクションの初期化やデータのコピーなどが行われ、
$Sub$main 関数を経た上で$Super$main 関数がコールされ main 関数に分岐します。
CPU のブートモードとブートモードに依存するそれぞれのブート処理に関しての詳細は下記資料を参考にしてください。
・ 「RZ/A1H グループ ユーザーズマニュアル ハードウェア編」
・ 「RZ/A1H グループ 初期設定例」
これらの資料は下記 URL から入手が可能です。
https://www.renesas.com/jp/ja/products/microcontrollers-microprocessors/rz/rza/rza1h.html
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
25 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.2.2 サンプルプログラム概要
サンプルプログラムは、下記の動作を行います。
● SCIF5 でエコーバックを行います。(送受信割り込み使用)
SCIF5 から受信した値をそのまま、SCIF5 へ送信します。
COM ポートの設定は、115200bps、ビット長 8、パリティなし、ストップビット1、フロー制御なしです。
動作確認は、ホスト PC 上のターミナルソフト(ハイパーターミナルなど)を使用して行ってください。
● LD1(緑の LED)を 500msec 間隔で ON/OFF します。(※1)
● CN1、CN2のポートより方形波を出力します。周期とピン番号を下記の表に示します。(※1)
● LCD-KIT-B01, B02, C01, D01, D02 と接続時に画面にカラー画像を表示します(※2)
● LCD-KIT-B01, B02, C01, D01, D02 と接続時に画面にタッチすることで軌跡を描画したり、音声を出力し
たりします。(※2)
※1:LCD-KIT-C01 と接続時は、タッチ判定処理に時間がかかるため、処理間隔に遅延が生じます。
※2:動作詳細や注意事項は、 [3.2.3 LCD-KIT 動作について]をご確認ください。
方形波出力端子一覧
ピン番号 ピン名 周期 備考
CN1.31 P8_15/A23/SPBIO11_0/SPBIO10_1/
TIOC2B/SSL20/PWM1H/RxD4
40msec
CN2.21 P5_7/TXOUT0M/LCD1_DATA7/LCD0_DATA23/
DV1_DATA7/RxD6/TIOC0D/SPDIF_OUT/DV0_DATA15
20msec
CN2.22 P5_6/TXOUT0P/LCD1_DATA6/LCD0_DATA22/
DV1_DATA6/TxD6/IRQ6/SPDIF_IN/DV0_DATA14
20msec
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
26 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.2.3 LCD-KIT 動作について
3.2.3.1 LCD-KIT の設定
本サンプルプログラムは、デフォルトで LCD-KIT と非接続で動作するように設定されています。
LCD-KIT-B01, B02, C01, D01, D02 を接続して動作を確認したい場合は、
下記ソースファイルの赤字の値を「LCD_KIT_B01」、「LCD_KIT_B02」、「LCD_KIT_C01」、「LCD_KIT_D01」あるい
は「LCD_KIT_D02」に変更してください。
その後、DS5 上で [プロジェクトをクリーンにする]を選択してから [プロジェクトのビルド]を選択して、
必ずプロジェクトの再ビルドを行ってください。
\sample\ap_rza_1a\src\lcdkit\lcdkit.h(30~39 行目)
30 : /* 動作確認をする LCD キットに合わせて、下記のいずれかの値で
31 : * 定義「LCD_KIT_SELECT」を変更してください
32 : * ・LCD_KIT_NONE(デフォルト) ←LCD-KIT を動かさない場合の設定値
33 : * ・LCD_KIT_B01 ←LCD-KIT-B01 と接続時の設定値
34 : * ・LCD_KIT_B02 ←LCD-KIT-B02 と接続時の設定値
35 : * ・LCD_KIT_C01 ←LCD-KIT-C01 と接続時の設定値
36 : * ・LCD_KIT_D01 ←LCD-KIT-D01 と接続時の設定値
37 : * ・LCD_KIT_D02 ←LCD-KIT-D02 と接続時の設定値
38 : */
39 : #define LCD_KIT_SELECT (LCD_KIT_NONE) ←赤く示した値を適切に設定してください
3.2.3.2 LCD-KIT の動作概要
本サンプルプログラムは、LCD-KIT と接続し、[3.2.3.1 LCD-KIT の設定]を参考に適切にプロジェクトの設定を
行った場合、下記の動作を行います。
● LCD 画面上に画像を表示します。
(LCD-KIT-B01/B02/C01 時は、800*480px の画像、LCD-KIT-D01/D02 時は 480*272px の画像)
● LCD-KIT のハードボタンを押すことで以下の 3 つのモードに切り替えることができます。
(サンプルプログラム開始時は SW2 を押したときに切り替わる「タッチ確認モード」が動作します)
・SW1:音声確認モード
・SW2:タッチ確認モード
・SW3:輝度確認モード
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
27 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
音声確認モード
LCD-KIT の SW1 を押すことで音声確認モードが動作します。
本モードでは、画面上部中央付近に三つのボタンを表示します。ユーザは各ボタンをタッチすることでボタンに対応した
音声を再生することが可能です。
LCD-KIT の種類
タップボタン LCD-KIT-B01/B02/C01 LCD-KIT-D01/D02
左ボタン(Ⅰ) ビープ音を 1 秒間再生(低音) 「ピンポーン」という音声再生
中央ボタン(Ⅱ) ビープ音を 1 秒間再生(中音) 「ブブー」という音声再生
右ボタン(Ⅲ) ビープ音を 1 秒間再生(高音) 「ありがとうございました」という音声再生
タッチ確認モード
サンプルプログラムの起動直後、あるいは、LCD-KIT の SW2 を押すことでタッチ確認モードが動作します。
本モード中に LCD-KIT の画面をタッチすると四角形のカーソルを表示します。
また、LCD-KIT によってはマルチタッチが可能です。複数タッチすることで異なる色(青、赤、黄、緑、白の順)のカ
ーソルが表示されます。
各 LCD-KIT で、同時にタッチ可能な数は異なります。以下の表を参照してください。
LCD-KIT マルチタッチ可否
LCD-KIT-B01/B02 ○(2 点)
LCD-KIT-C01 ×(1 点のみ)
LCD-KIT-D01 ○(4 点)
LCD-KIT-D02 ○(5 点)
SW2 押す
SW1 押す
Ⅰ Ⅱ Ⅲ ピンポーン
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
28 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
輝度確認モード
LCD-KIT の SW3 を押すことで輝度確認モードが動作します。
本モードでは、LCD-KIT の下部に長方形の輝度調節スペースを表示します。
ユーザは輝度調節スペースをタッチすることで画面輝度を変更できます。輝度調節スペースの右端が画面輝度 100%、左
端が画面輝度 0%です。
輝度を変更後に LCD-KIT の SW1, 2, 3 を押すと、輝度は 100%に戻ります。
SW3 押す
輝度 0% 輝度 100%
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
29 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.2.3.3 LCD-KIT-C01 のキャリブレーション
LCD-KIT-C01 は、抵抗膜式タッチパネル付き LCD ボードです。
静電容量式の LCD-KIT とは異なり、キャリブレーション処理を行う必要があります。
LCD-KIT-C01 使用時に本サンプルプログラムの動作を開始すると、画面左上に赤色の十字のポインタが表示されます。
ユーザはそのポインタに対してタッチ&リリースをしてください。
その後も順に右上、左下、右下の順にポインタが表示されますので、同様にユーザは各ポインタに対して
タッチ&リリースをしてください。
画面に対して四回タッチ&リリースをするとキャリブレーション処理は終了です。
その後の動作は静電容量式の LCD-KIT と同様です。
・キャリブレーション処理の補正は、リリースする直前のタッチ情報を基に計算されます。
再度キャリブレーション処理を行いたい場合は、シリアルコンソールから 0x01(SOH)を送信してください。
・LCD-KIT-C01 はマルチタッチに対応していません。同時に複数箇所に触れると誤動作する場合があります。
・キャリブレーション中は、シリアルエコーバック・LED 点滅・方形波出力の各動作を停止します。
それぞれの動作はキャリブレーション後に動作開始、あるいは、動作が再開されます。
① ②
③ ④
LCD-KIT-C01
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
30 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.3 RAM 動作時のメモリマップ
メモリマップを以下に示します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
31 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
3.4 ROM 動作時のメモリマップ
メモリマップを以下に示します。
アプリケーションノート AN1607 ALPHA PROJECT Co.,LTD.
32 AN1607 AP-RZA-1A ベアメタルサンプルプログラム(DS-5)解説 https://www.apnet.co.jp ©2020 ALPHA PROJECT Co.,LTD
商標について ・Arm Development Studio 5TM (DS-5TM) は Arm 社の登録商標、商標または商品名称です。
・RZ および RZ/A1H は、ルネサス エレクトロニクス株式会社の登録商標、商標または商品名称です
・その他の会社名、製品名は、各社の登録商標または商標です。
ご注意
・本文書の著作権は株式会社アルファプロジェクトが保有します。
・本文書の内容を無断で転載することは一切禁止します。
・本文書に記載されている内容についての質問等のサポートは一切受け付けておりませんのでご了承ください。
・本文書の内容については、万全を期して作成いたしましたが、万一ご不審な点、誤りなどお気付きの点がありましたら弊社までご連絡
ください。
・本サンプルプログラムに関して、Arm 社およびルネサス エレクトロニクス株式会社への問い合わせはご遠慮ください。
・本文書の内容に基づき、アプリケーションを運用した結果、万一損害が発生しても、弊社では一切責任を負いませんのでご了承くださ
い。
・本文書の内容は、将来予告なしに変更されることがあります。
〒431-3114 静岡県浜松市東区積志町 834 https://www.apnet.co.jp E-MAIL : [email protected]