アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 AP-RX64M-0A (RX64M CPU BOARD) USB サンプルプログラム解説 第1版 2015年03月06日 1.概要 1.1 概要 本アプリケーションノートでは、弊社の Web サイトにて公開している AP-RX64M-0A のサンプルプログラムのうち 「\Sample\ap_rx64m_0a_usb_sample_cs」以下にある「USB サンプルプログラム」について説明します。 AP-RX64M-0A の「Ether サンプルプログラム」につきましては、弊社 Web サイトで公開中のアプリケーションノート「AN1525 AN1525 Ether サンプルプログラム解説」を参照してください。 サンプルプログラム解説 サンプルプログラム 動作内容 AP-RX64M-0A USB サンプルプログラム ・USB ホスト ファイル書き込み ・USB ファンクション 仮想シリアル通信 ・シリアル通信 ・タイマ割り込み ・CAN 通信 1.2 接続概要 「サンプルプログラム」の動作を確認する上で必要な CPU ボードとホスト PC 間の接続例を以下に示します。 詳細な接続に関しては後述の「3.動作内容」を参照してください。 安定化電源など DC+5V 電源ハーネス (付属) USB メモリ USB ケーブル APAP-RX64M RX64M64M-0A ホスト PC PC-RS-04 シリアルクロスケーブル CAN デバイス PC-CAN-02 1 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 1.3 本サンプルプログラムについて 本サンプルプログラムは、ルネサスエレクトロニクス株式会社提供のミドルウェア及びドライバを AP-RX64M-0A に 移植しています。 各ミドルウェア及びドライバの詳細については、以下の資料を参照してください。 入手につきましては、ルネサス社ウェブサイトの下記のページにて、各検索キーを入力し、検索を行ってください。 なお、検索にて、資料が見つからない場合、検索キーの末尾 4 桁(バージョン番号)を削除していただき、再度、検索を行っ てください。 ルネサス エレクトロニクス社 RX64M アプリケーションノート-サンプルコード http://japan.renesas.com/products/mpumcu/rx/rx600/rx64m/app_notes.jsp ● BSP ・資料名 RX Family Board Support Package Module Using Firmware Integration Technology 検索キー:R01AN1685EU0250 ● USB(ホスト(HMSC)/ファンクション(PCDC)) ・資料名 Renesas USB MCU USB Basic Host and Peripheral Driver Firmware Integration Technology 検索キー:R01AN2025JJ0110 USB Host Mass Storage Class Driver(HMSC) Using Firmware Integration Technology Modules 検索キー:R01AN2237JJ0110 USB Peripheral Communications Devices Class Driver (PCDC) Using Firmware Integration Technology Modules 検索キー:R01AN2238JJ0110 ● FAT ファイルシステム ・資料名 RX ファミリ M3S-TFAT-Tiny メモリドライバインタフェースモジュール Firmware Integration Technology 検索キー:R20AN0335JJ0101 RX ファミリ オープンソース FAT ファイルシステム M3S-TFAT-Tiny モジュール Firmware Integration Technology 検索キー:R20AN0038JJ0301 ● CMT ・資料名 RX Family CMT Module Using Firmware Integration Technology 検索キー:R01AN1856EU0240 ● SCI ・資料名 RX Family RX64M SCI Multi-Mode Module Using Firmware Integration Technology 検索キー:R01AN2132EU0100 ● BYTEQ ・資料名 RX Family BYTEQ Module Using Firmware Integration Technology 検索キー:R01AN1683EU0120 (※)資料をダウンロードする際にはルネサスエレクトロニクス株式会社の MYRENESAS への登録が必要となります。 2 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 2.サンプルプログラムの構成 2.1 フォルダ構成 サンプルプログラムは下記のようなフォルダ構成になっています。 \Sample \ap_rx64m_0a_usb_sample_cs \src \r_bsp \board \rskrx64m \mcu \all \rx64m \ r_byteq \src \ r_cmt_rx \src \ r_sci_rx64m \src \ r_tfat_driver_rx \src \ r_tfat_rx \lib \ r_usb_basic \src \ r_usb_hmsc \src \ r_usb_pcdc \src \ app \ r_config \DefaultBuild \COM_Class \Data \ap_rx64m_0a_ether_sample_cs AP-RX64M-0A サンプルプログラムフォルダ USB サンプルプログラムフォルダ ソースフォルダ BSP フォルダ ボードフォルダ RSKRX64M 用フォルダ MCU フォルダ MCU 共通フォルダ RX64M フォルダ BYTEQ モジュールフォルダ BYTEQ モジュールソースフォルダ CMT モジュールフォルダ CMT モジュールソースフォルダ SCI モジュールフォルダ SCI モジュールソースフォルダ M3S-TFAT-Tiny メモリドライバインタフェースモジュールフォルダ M3S-TFAT-Tiny メモリドライバインタフェースモジュールソースフォルダ M3S-TFAT-Tiny FAT ファイルシステムモジュールフォルダ M3S-TFAT-Tiny FAT ファイルシステムモジュールライブラリフォルダ USB 基本ファームウェアフォルダ USB 基本ファームウェアソースフォルダ USB ホスト マスストレージクラスドライバフォルダ USB ホスト マスストレージクラスドライバソースフォルダ USB ファンクション 仮想シリアルドライバフォルダ USB ファンクション 仮想シリアルドライバソースフォルダ USB アプリケーションフォルダ 各モジュールの設定ファイルフォルダ ワークフォルダ USB COM クラス dpinst 用ファイルフォルダ Ether サンプルプログラムフォルダ (※ Ether サンプルプログラムに関してはアプリケーションノート 「AN1525 サンプルプログラム解説」を参照してください) AN1525 Ether サンプルプログラム解説 3 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 2.2 ファイルの構成 本サンプルプログラムは以下のファイルで構成されています。 本章では、サンプルプログラムの作成にあたって追加したファイルについてのみ記述し、ミドルウェア・ドライバ等の 既存のファイルに関しては説明を省略してあります。 <\Sample\ap_rx64m_0a_usb_sample_cs\> ap_rx64m_0a_usb_sample_cs.mtpj ・・・ CubeSuite+用プロジェクトファイル AP_RX64M_0A.c ・・・ メイン処理 can.c ・・・ CAN 処理 sci.c ・・・ シリアル通信処理 can.h ・・・ CAN 処理ヘッダファイル common.h ・・・ 共通ヘッダファイル sci.h ・・・ シリアル通信処理ヘッダファイル vect.h ・・・ 割り込みベクタテーブルヘッダファイル <\Sample\ap_rx64m_0a_usb_sample_cs\src> <\Sample\ap_rx64m_0a_usb_sample_cs\src\app> r_usb_apl.c ・・・ USB Host/Peripheral ドライバの初期化、実行処理 r_usb_hmsc_apl_mult.c ・・・ USB Host MSC ドライバ、実行処理 r_usb_hmsc_defep_mult.c ・・・ USB Host MSC ドライバで使用するパイプ定義 r_usb_pcdc_apl.c ・・・ USB Peripheral CDC Class ドライバ実行処理 r_usb_pcdc_descriptor.c ・・・ USB Peripheral CDC Class で使用するディスクリプタの定義 r_usb_pcdc_echo_apl.c ・・・ USB Peripheral エコーバック処理 <\Sample\ap_rx64m_0a_usb_sample_cs\src\app\inc> r_usb_apl.h ・・・ USB Host/Peripheral ドライバ初期化、実行処理ヘッダファ イル r_usb_hmsc_apl_mult.h ・・・ USB Host MSC ドライバ、実行処理ヘッダファイル r_usb_pcdc_apl.h ・・・ USB Peripheral エコーバック処理ヘッダファイル 4 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 3.動作説明 3.1 サンプルプログラムの動作 本サンプルプログラムは下記の動作を行ないます。 ● USB ホスト USB ホストに USB メモリを接続すると、USB メモリにテキストファイルを書き込みます。 ※ USB ホスト動作については後述の「3.4 USB ホスト動作」を参照してください。 ● USB ファンクション USB ファンクションを PC に接続すると、仮想 COM ポートとしてホスト PC の OS に認識され USB シリアルポートとして動作しエコーバックを行います。 ※ USB ファンクション動作については後述の「3.5 USB ファンクション動作」を参照してください。 ● シリアル通信 SCI6 でエコーバックを行ないます。(送受信割り込み使用) SCI6 から受信をした値を、そのまま SCI6 へ送信します。 シリアルの設定は、38400bps、ビット長 8、パリティなし、ストップビット 1、フロー制御なしです。 動作確認は、ホスト PC 上のターミナルソフト(ハイパーターミナル等)を使用して下さい。 ● タイマ割り込み LD2(緑の LED)を 1000msec 間隔で点滅させます。(CMT 割り込み使用) また、CN1 の出力端子から方形波を出力します。 周期とピン番号は Table 「3.1-1 サンプルプログラム周期・ピン番号表」を参照してください。 ● CAN 通信 CAN でエコーバックを行います。以下の設定で、受信したデータをそのまま送信します。 CAN の設定は、送信 ID:B’10101010101、受信 ID:B’10101010100、スタンダードフォーマット、 データフレーム、データ長 1 バイト、 通信速度 500kbps(TSEG1 = 6(7Tq), TSEG2 = 3(4Tq), SJW = 0(1Tq), BRP = 9)です。 CN1 方形波出力端子一覧 コネクタ CN1 ピン番号 ピン名 周期 備考 41 PC0 10msec CMT 使用 42 PC1 10msec CMT 使用 43 PC2 20msec CMT 使用 44 PC3 20msec CMT 使用 Table 3.13.1-1 サンプルプログラム周期・ピン番号表 5 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 3.2 メモリマップ H’0000 0000 H’0000 0000 H’0000 1000 内蔵 RAM 512K バイト H’0007 FFFF H’0008 0000 予約 周辺 I/O レジスタ H’000F FFFF H’0010 0000 H’0010 7FFF H’007F DFFF H’007F E000 H’007F FFFF H’0080 0000 SI 内蔵 ROM 32K バイト (データフラッシュ) 未使用 (未使用) 予約 H’007F 7FFF H’007F 8FFF H’007F 9000 R SU H’0010 8000 H’007F 8000 ワークエリア B_1 R_1 B_2 R_2 B FCU RAM 領域 予約 周辺 I/O レジスタ 予約 H’00FF 7FFF H’0080 0000 ECC-RAM 領域 H’00DF FFFF H’00E0 0000 H’00FF FFFF H’0800 0000 H’09FF FFFF H’0A00 0000 外部アドレス空間 (CS 空間) H’0800 0000 SDRAM 16MByte (未使用) SDRAM 空間 イメージ H’0FFF FFFF H’1000 0000 予約 H’FEFF DFFF H’FEFF E000 H’FEFF FFFF H’FFC0 0000 内蔵 ROM (FCU ファーム) H’FF00 0000 予約 H’FF7F 7FFF H’FF7F 8000 H’FF7F FFFF H’FF80 0000 H’FFBF FFFF H’FFC0 0000 C_1 C_2 C C$DSEC C$BSEC C$VECT D_1 内蔵 ROM (ユーザブート) D_2 予約 内蔵 ROM (プログラム ROM) 2M バイト H’FFFF FF80 H’FFFF FFFC H’FFFF FFFF D P W_1 W_2 W L (未使用) EXCEPTVECT RESETVECT Fig 3.2-1 ネットワーク通信 + USB ホストサンプルプログラムメモリマップ 6 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 3.3 サンプルプログラムのダウンロード サンプルプログラムを CPU ボード上で実行するためには、ビルドしたサンプルプログラムの実行ファイルを CPU ボードに ダウンロードする必要があります。 サンプルプログラムのビルド方法および CPU ボードにサンプルプログラムをダウンロードする方法については、 アプリケーションノート「AN AN1526 AN1526 RX 開発環境の使用方法( 開発環境の使用方法(CubeSuite+、 CubeSuite+、Renesas Flash Programmer) Programmer)」に詳細な手順が記さ れていますので、 参照してください。 3.4 USB ホスト動作 本サンプルプログラムはルネサスエレクトロニクス株式会社提供の FAT ファイルシステムドライバを移植しており、 FAT12、FAT16、FAT32 にそれぞれ対応しています。 USB ホストサンプルでは FAT ファイルシステムを利用して、USB メモリにテキストファイルの書き込みを行います。 USB ホストサンプルを動作させる際には以下の手順に従い、USB デバイス接続時の動作を確認してください。 ① CPU ボードに電源を投入し、サンプルプログラムを起動します。 ② CPU ボードの USB ホストポート(CN7B)に USB メモリを挿入します。 ③ USB メモリを挿入すると、USB メモリにテキストファイルが書き込まれます。 ④ PC に USB メモリを挿入し、USB メモリのルートディレクトリに「HMSCDEMO.TXT」という名前のテキストファイルが作成 されていることを確認してください。 ⑤ 「hmscdemo.txt」を開き、「a」が 512 バイト書き込まれていることを確認してください。 ⑥ 以上で USB デバイス接続時の動作確認は終了です。 3.5 USB ファンクション動作 以下の手順に従い、USB 仮想シリアルの動作を確認してください。 USB ファンクションの動作確認は、あらかじめ USB 仮想シリアルドライバを PC にインストールしておく必要があります。 USB 仮想シリアルドライバのインストール方法につきましては、「AN178 USB 仮想シリアルドライバ インストールガイド」を 参照してください。 ① USB ケーブルを使い CPU ボードの USB ファンクションポート(CN6)とホスト PC の USB ポートを接続します。 ② CPU ボードに電源を投入し、サンプルプログラムを動作させます。 ③ ホスト PC 上でターミナルソフト(ハイパーターミナルなど)を起動し、COM ポートの設定を行います。 その際使用する COM ポートは、「AN178 USB 仮想シリアルドライバ インストールガイド」内で確認した仮想 COM ポートを 選択してください。 COM ポートを以下の設定に変更します。 ボーレート 38400bps ビット長 8bit パリティ なし ストップビット 1bit フロー制御 なし ④ ターミナルソフトを接続しますと下記のメッセージが、CPU ボードから定期的に送信されます。 PCDC. Virtual serial COM port. Type characters into terminal. The target will receive the characters over USB CDC, then copy them to a USB transmit buffer to be echoed back over USB. 7 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 ⑤ PC 側から何か送信しますと、 「Echo mode.」と表示され、その後、④のメッセージは、送信されなくなります。 ⑥ ターミナルソフトを用いて CPU ボードと通信を行い、エコーバック動作を確認してください。 ⑦ 以上で USB 仮想シリアルの動作確認は終了です。 8 アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 4.開発環境使用時の各設定値 開発環境を使用する際の、AP-RX64M-0A 固有の設定を以下に示します。 表内の「項目番号」はアプリケーションノート「AN1513 AN1513 RX 開発環境の使用方法 開発環境の使用方法( 使用方法(CubeSuite+) CubeSuite+)」内で示されている 項目番号を示していますので、対応したそれぞれの設定値を参照してください。 ビルド・動作確認方法 項目名 項目番号 設定値 出力フォルダ 2-2 \Sample\ap_rx64m_0a_usb_sample_cs\DefaultBuild モトローラファイル名 2-3 \Sample\ap_rx64m_0a_usb_sample_cs\DefaultBuild\ap_rx64m_0a_usb_sample_cs.mot アブソリュートファイル名 2-4 \Sample\ap_rx64m_0a_usb_sample_cs\DefaultBuild\ap_rx64m_0a_usb_sample_cs.abs マップファイル 2-5 \Sample\ap_rx64m_0a_usb_sample_cs\DefaultBuild\ap_rx64m_0a_usb_sample_cs.map Renesas Flash Programmer を使用した Flash 書き込み方法 項目番号 設定値 ボード設定(Flash 書き込み) 3-1 Fig 4-1 を参照 デバイス名 3-2 RX Generic BOOT Device Flash に書き込むファイル 3-3 \Sample\ap_rx64m_0a_usb_sample_cs\DefaultBuild\ap_rx64m_0a_usb_sample_cs.mot ボード設定(動作) 3-4 Fig 4-2 を参照 JSW1 H-L USB JSW5 JSW3 H-L L-H MD JSW3 SCI SEL JSW2 EMLE PU - PD PU PU-PD PC7 JSW1 SCI6 - SCI1 SW2 項目名 SCI0 - SCI1 H-L FUNC - HOST JSW1 JSW2 JSW3 SW2 USB PD L L SCI1 不問 H-L H-L Fig 4-2 サンプルプログラム動作時のボード設定 9 USB JSW5 JSW3 H-L EMLE MD L-H JSW1 JSW3 SCI6 - SCI1 SW2 JSW2 JSW2 PU - PD PU PU-PD PC7 JSW1 SCI SEL Fig 4-1 Flash 書き込み時のボード設定 FUNC - HOST JSW1 JSW2 JSW3 SW2 USB PD H L SCI6 FUNC アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 設定値 ボード設定 4-1 Fig 4-3 を参照 JTAG クロック 4-10 3.094(MHz) EXTAL クロック 4-11 24(MHz) JSW1 JSW3 H-L JSW3 H-L MD L-H JSW2 JSW2 EMLE PU - PD PU PU-PD PC7 JSW1 H-L Fig 4-3 E1 エミュレータデバッグ時のボード設定 10 USB JSW5 項目番号 SCI SEL 項目名 SCI6 - SCI1 SW2 E1 エミュレータを使用したデバッグ方法 FUNC - HOST JSW1 JSW2 JSW3 SW2 USB PU H H SCI6 FUNC アプリケーションノート ALPHA PROJECT Co.,LTD. AN1524 ご注意 ・本文書の著作権は株式会社アルファプロジェクトが保有します。 ・本文書の内容を無断で転載することは一切禁止します。 ・本文書に記載されているサンプルプログラムの著作権は株式会社アルファプロジェクトが保有します。 ・本サンプルプログラムで使用されているミドルウェア及びドライバの著作権はルネサスエレクトロニクス株式会社が保有します。 ・本文書に記載されている内容およびサンプルプログラムについての技術サポートは一切受け付けておりません。 ・本文書の内容およびサンプルプログラムに基づき、アプリケーションを運用した結果、万一損害が発生しても、弊社では一切責任を負 いませんのでご了承下さい。 ・本文書の内容については、万全を期して作成いたしましたが、万一ご不審な点、誤りなどお気付きの点がありましたら弊社までご連絡 下さい。 ・本文書の内容は、将来予告なしに変更されることがあります。 商標について ・RX は、ルネサスエレクトロニクス株式会社の登録商標、商標または商品名称です。 ・CubeSuite+はルネサスエレクトロニクス株式会社の登録商標、商標または商品名称です。 ・Peripheral Driver Generator はルネサスエレクトロニクス株式会社の登録商標、商標または商品名称です。 ・Windows®の正式名称は Microsoft®Windows®Operating System です。 Microsoft、Windows、Windows NT は、米国 Microsoft Corporation.の米国およびその他の国における商標または登録商標です。 Windows®8、Windows®7、Windows®Vista、Windows®XP は、米国 Microsoft Corporation.の商品名称です。 本文書では下記のように省略して記載している場合がございます。ご了承ください。 Windows®8 は Windows 8 もしくは Win8 Windows®7 は Windows 7 もしくは Win7 Windows®Vista は Windows Vista もしくは WinVista Windows®XP は Windows XP もしくは WinXP ・その他の会社名、製品名は、各社の登録商標または商標です。 ALPHA PROJECT Co.,LTD. 株式会社アルファプロジェクト 〒431-3114 静岡県浜松市東区積志町 834 http://www.apnet.co.jp E-MAIL : [email protected] 11
© Copyright 2024 ExpyDoc