TITLE:BTC080 SH7145Fマイコンボードマニュアル #norelated #contents **概要 [#md273e31] SH7145Fマイコンボードはルネサスエレクトロニクス製32bit RISC CPU SH7145Fを搭載したマイコンボードです。ボード上には1MバイトのSRAMと2MバイトのフラッシュROMを別途装備し、比較的大きなワークエリアを必要とするアプリケーションに対応可能です。 **基本仕様 [#ma362c4a] |商品番号 |BTC080 | |PCBリビジョン |E012E (4層) | |CPU |[[Renesas HD64F7145F50:http://japan.renesas.com/products/mpumcu/superh/sh7144/index.jsp]] | |クロック |外部オシレータ 12.288MHz&br;システム:49.152MHz固定&br;周辺:24.576MHz固定 | |外部メモリ |8Mビット高速S-RAM(ノンウェイト32ビットデータバス接続、スーパーキャパシタによる簡易バックアップ アドレスマップ (CS1空間)、400000H~4FFFFFH(MODE0/2))&br;16MビットフラッシュROM(16ビットデータバス接続、消去/書込みサイクル 100000回、アドレスマップ (CS0空間)、000000H~1FFFFFH(MODE0)、200000H~3FFFFFH(MODE2)) | |通信機能 |RS232Cレベル変換装備 (SCI1のみ) | |電源監視 |セットIC装備 | |動作温度 |0~+40℃ | |動作電圧 |DC3.3V±5% | |消費電流 |600mA (MAX) | |寸法 |W49×D57mm(参考) | |コネクタ等 |30ピン端子×3, 通信用コネクタ×1, CPUモード切替4ビットディップスイッチ×1, リセットボタン×1, 電源モニタLED | |付属品 |2列ピンヘッダ | |環境配慮 |RoHS準拠, 鉛フリー半田 | ***外観 [#qb0c7a18] | top | bottom | | #ref(SH7145F_TOP.png,50%) | #ref(SH7145F_BOTTOM.png,50%) | ***回路図 [#tf2a6cfa] #ref(E012E.pdf) ***端子配置・外形 [#fb85bdc0] #ref(SH7145F_LAYOUT.png,100%) ***コネクタ・端子・スイッチ等 [#p144077a] ****CN1 [#u601e30c] -2.54mmピッチ2列×30ピン -推奨ピンヘッダ:ヒロセ電機 HIF3H-30PB-2.54DSA -推奨レセプタクル:ヒロセ電機 HIF3H-30DA-2.54DSA | No. | 端子名 | No. | 端子名 | | 1 | GND | 2 | GND | | 3 | VCC | 4 | VCC | | 5 | PD15/D15 | 6 | PD14/D14 | | 7 | PD13/D13 | 8 | PD12/D12 | | 9 | PD11/D11 | 10 | PD10/D10 | | 11 | PD9/D9 | 12 | PD8/D8 | | 13 | PD7/D7 | 14 | PD7/D7 | | 15 | PD5/D5 | 16 | PD4/D4 | | 17 | PD3/D3 | 18 | PD2/D2 | | 19 | PD1/D1 | 20 | PD0/D0 | | 21 | PA16/AUDSYNC | 22 | PA17/WAIT | | 23 | RES | 24 | PE0/TIOC0A/DREQ0/AUDCK | | 25 | PE1/TIOC0B/DRAK0/AUDMD | 26 | PE2/TIOC0C/DREQ1/AUDRST | | 27 | PE3/TIOC0D/DRAK1/AUDATA3 | 28 | PE4/TIOC1A/RXD3/AUDATA2 | | 29 | PE5/TIOC1B/TXD3/AUDATA1 | 30 | PE6/TIOC2A/SCK3/AUDATA0 | ****CN2 [#c1dd4ed5] -2.54mmピッチ2列×30ピン -推奨ピンヘッダ:ヒロセ電機 HIF3H-30PB-2.54DSA -推奨レセプタクル:ヒロセ電機 HIF3H-30DA-2.54DSA | No. | 端子名 | No. | 端子名 | | 1 | GND | 2 | GND | | 3 | VCC | 4 | VCC | | 5 | PF0/AN0 | 6 | PF1/AN1 | | 7 | PF2/AN2 | 8 | PF3/AN3 | | 9 | PF4/AN4 | 10 | PF5/AN5 | | 11 | PF6/AN6 | 12 | PF7/AN7 | | 13 | VCC | 14 | AVref | | 15 | PB9/IRQ7/A21/ADTRG | 16 | PA0/RXD0 | | 17 | PA1/TXD0 | 18 | PA2/SCK0/DREQ0/IRQ0 | | 19 | PA3/RXD1 | 20 | PA4/TXD1 | | 21 | PA5/SCK1/DREQ1/IRQ1 | 22 | PE7/TIOC2B/RXD2 | | 23 | PE8/TIOC3A/SCK2/TMS | 24 | PE9/TIOC3B/TRST/SCK3 | | 25 | PE10/TIOC3C/TXD2 | 26 | PE11/TIOC3D/RXD3 | | 27 | PE12/TIOC4A/TCK/TXD3 | 28 | PE13/TIOC4B/MRES | | 29 | PE14/TIOC4C/DACK0 | 30 | PE15/TIOC4D/DACK1/IRQOUT | ****CN3 [#h590a4e8] -2.54mmピッチ2列×30ピン -推奨ピンヘッダ:ヒロセ電機 HIF3H-30PB-2.54DSA -推奨レセプタクル:ヒロセ電機 HIF3H-30DA-2.54DSA | No. | 端子名 | No. | 端子名 | | 1 | GND | 2 | GND | | 3 | VCC | 4 | VCC | | 5 | PC0/A0 | 6 | PC1/A1 | | 7 | PC2/A2 | 8 | PC3/A3 | | 9 | PC4/A4 | 10 | PC5/A5 | | 11 | PC6/A6 | 12 | PC7/A7 | | 13 | PC8/A8 | 14 | PC9/A9 | | 15 | PC10/A10 | 16 | PC11/A11 | | 17 | PC12/A12 | 18 | PA20 | | 19 | PA19/BACK/DRAK1 | 20 | PA18/BREQ/DRAK0 | | 21 | PB2/IRQ0/POE0/SCL0 | 22 | PB3/IRQ1/POE1/SDA0 | | 23 | PB4/IRQ2/POE2 | 24 | PA6/TCLKA/CS2 | | 25 | PA7/TCLKB/CS3 | 26 | PA8/TCLKC/IRQ2 | | 27 | PA9/TCLKD/IRQ3 | 28 | PA14/RD | | 29 | PA13/WRH | 30 | PA12/WRL | ****CN4 [#o0b7bc44] -2mmピッチ 3ピン ヒロセ電機 A4B-03PA-2DSA(71) -推奨圧着ソケット:ヒロセ電機 A4B-03S-2C -U1のPA3(RXD1)とPA4(TXD1)端子をRS232Cレベルに変換 -PA3(RXD1)はDIP1-4にてRS232Cレベル変換ICと切り離し可能 | No. | 端子名 | I/O | | 1 | TX (RS232C←TXD1) | O | | 2 | GND | - | | 3 | RX (RS232C→RXD1) | I | ****JP1 [#z4f6f78b] -マイコンのE10Aエミュレータ機能イネーブル制御(マイコンのDBGMD端子に接続) -オープン:ディスエーブル, ショート:イネーブル -出荷時オープン ****D4(LED) [#had99b5f] -マイコンボードに電源を印加すると点灯 ****PB1(プッシュボタン) [#te1608e3] -システムリセットIC(U2)のM/R端子とVCC間に接続 -押下:U2のVOUT端子からLOW出力, 解放:U2のVOUT端子はHIGH-Z ****DIP1(ディップスイッチ) [#jc08ff13] -CPUの動作モード切替 -ボード上の各機能設定: DIP1-1~3:ONで各端子はGND、OFFにするとVCCへプルアップ、DIP1-4:ONでU1のPA3(RXD1)端子はRS232Cレベル変換ICを介してCN4と接続、OFFで切り離し | No. | 端子名 | | 1 | MD0 | | 2 | MD1 | | 3 | FWP | | 4 | CN4 RX端子使用/不使用 | **各機能の詳細 [#DEYAILS] ***電源 [#DEYAILS_POWER] 余裕のある安定したDC3.3Vの電源をVCCとGND間に接続します。電源はCN1~CN3のいずれの電源端子から供給しても構いません。 ***RS232C(CN4) [#DEYAILS_CN4] #ref(SH7145F_1.png,50%) CN3にはマイコンのDBGU端子をRS232Cレベルに変換した信号が接続されます。主にPCのCOMポートと接続し、プログラムの転送やデバッグに使用します。~ 接続するホストに応じて以下の通信ケーブルで使用できます。 -PCにCOMポートがある場合 ~[[BTE060 RS232C通信ケーブル]] -PCにCOMポートが無く、USBポートがある場合 ~[[BTE075 USB-RS232Cケーブル]]~ [[BTE060 RS232C通信ケーブル]] + [[BTE061D USBシリアル変換ケーブル]] ***プッシュスイッチ(PB1) [#DEYAILS_PB1] PB1はリセットIC(U2)のマニュアルリセット端子に接続されています。押下されるとリセットICはマイコンのRES端子をLOWにし、放すと規定時間経過後HIGH-Z状態になり装備されたプルアップ抵抗でマイコンのRES端子はHIGHになります。 ***簡易バックアップ回路 [#DEYAILS_BACKUP] 電源の供給が断たれるとリセットICのリセット信号と同期して外部RAMをバックアップする回路が働き、電気二重層コンデンサから外部RAMへ電源が供給されます。~ バックアップは半永久的なものではなく、プログラムのデバッグ作業におけるカット&トライの際に必要と思われる数時間程度の簡易的なものとなります。~ なお、電気二重層コンデンサの充電はマイコンボードへの電源供給時に行われ、完全充電には数十秒かかります。 ***ディップスイッチ(DIP1) [#DEYAILS_DIP1] 電源を投入する前にディップスイッチを設定すると、マイコンの動作モードが切り替わります。通電中にディップスイッチの状態を変更してはなりません。~ CN3とPCのCOMポートとを接続してシリアル通信を行うにはDIP1-4をONにします。OFFにするとU1のPA3(RXD1)端子がオープンとなるため、シリアル通信の受信機能がCN3を介して行えなくなります。 ****MCU拡張モード0 [#DEYAILS_MODE0] CS0空間(外部フラッシュROM)が16ビットとなり、内蔵フラッシュROMが無効となります。 外部フラッシュROMに0番地から動作する実行可能なコードがストアされている場合は、内蔵フラッシュROMの代替としてプログラムを起動できます。 | DIP SW(端子名) | SW1-1(MD0) | SW1-2(MD1) | SW1-3(FWP) | | 状態(信号) | ON(0) | ON(0) | OFF(1) | ****MCU拡張モード1 [#DEYAILS_MODE1] 本モードは外部フラッシュROMのバス幅が16ビットであるため使用できません。 ****MCU拡張モード2 (出荷時設定) [#DEYAILS_MODE2] マイコン内蔵フラッシュROMが有効で、CS0空間(外部フラッシュROM)が0x200000~0x3FFFFF、CS1空間(外部SRAM)が0x400000H~0x7FFFFFにアサインされます。初期状態でバスとして使用される端子は汎用I/Oとなっています(MCU拡張モード3と同等)ので、CS0およびCS1空間を使用する場合はBSCおよびPFCを適宜設定する必要があります。~ なお、出荷時に予め内蔵フラッシュROMに[[ブートローダ>SH7145F Bootloader]]が書き込まれいますので、BSCおよびPFCの設定を意識することなくプログラムを外部SRAMもしくは外部フラッシュROMにダウンロードして実行できます。 | DIP SW(端子名) | SW1-1(MD0) | SW1-2(MD1) | SW1-3(FWP) | | 状態(信号) | ON(0) | OFF(1) | OFF(1) | ****MCU拡張モード3 [#DEYAILS_MODE3] シングルチップモードとなり、増設メモリを一切使用しない場合に設定します。 このモードにするとマイコンの外部端子が全て汎用入出力ポートに設定でき、外部バスとしての設定を行うことはできません。~ なお、外部メモリへのチップセレクト信号(PA10/CS0, PA11/CS1)は、出力端子に構成しHIGHに固定する必要があります。 | DIP SW(端子名) | SW1-1(MD0) | SW1-2(MD1) | SW1-3(FWP) | | 状態(信号) | OFF(1) | OFF(1) | OFF(1) | ****ブートモード [#DEYAILS_BOOTMODE] 内蔵フラッシュROMへプログラムを書き込む際に設定します。書き込みにはFLASH WRITERを使用します。 | DIP SW(端子名) | SW1-1(MD0) | SW1-2(MD1) | SW1-3(FWP) | | 状態(信号) | ON(0) | ON(0) | ON(0) | **開発環境 [#IDE] ***GCC Developer Lite [#GDL] GCC Developer Liteの詳細については[[こちら>GCC Developer Lite]]。~ フルインストールないしSH7145Fで使用を選択する事で必要なコンポーネントが自動的にインストールされます。~ SH7145Fで使用される主要なコンポーネントを簡単に示します。 -''[[GCC Developer Lite>GCC Developer Lite#GCCDevL]]'' ~ソースプログラムを編集するためのテキストエディタとその他のツールを起動するためのランチャ機能を有する。 -''[[FLASH WRITER>GCC Developer Lite#FW]]'' ~ターゲットのフラッシュROM等へコンパイルされたプログラムをCOMポート経由で書き込む。~ USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 -''[[SIMPLE TERM>GCC Developer Lite#STERM]]'' ~汎用シリアルターミナル。簡易的なTLENETクライアントとしても機能する。~ USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 -''ターゲットファイル'' ~マイコンの内蔵ペリフェラルを定義したヘッダファイルやSCIを簡便に使うためのAPI、メモリマップを定義したリンカスクリプトファイル、スタートアップルーチンを含む。コンパイル済みライブラリとしてソースとリンクして使用する。 ****ターゲットファイル [#TARGETFILES] [[GCC Developer Lite>GCC Developer Lite]]では本マイコン用の設定を複数備えています。~ 例えば、SHコアの学習・組み込み向けCコンパイラの習熟・マイコン内蔵ペリフェラルの機能を熟知するといった段階では外部SRAM上でデバッグし、最終的に製品等としてリリースして完成させる時は内蔵フラッシュROMに、といった段階を踏む場合でも[[GCC Developer Lite>GCC Developer Lite]]のコンパイルオプションの設定リストから選択し直すだけで設定が完了します。~ #ref(GDL_CompileOption_TargetList.png) 以下本マイコンボードに対応した設定リストの一覧です。 -''SH7145F (ExRAM & GDB)'' -''SH7145F (ExRAM, Bootloader)'' -''SH7145F (Internal Flash)'' -''SH7145F (Internal Flash & ExRAM)'' -''SH7145F (ExFlash & ExRAM)'' ****SIMPLE TERMとブートローダ [#STERM_BL] マイコンには出荷時に弊社オリジナルの[[ブートローダ>SH7145F Bootloader]]が書き込まれています。~ [[ブートローダ>SH7145F Bootloader]]はJTAGやその他の特殊なI/Fを使用せずとも、COMポートを使用してマイコンのプログラム書き換えや操作を行う事が出来ます。 詳細は[[こちら>SH7145F Bootloader]]。~ ブートローダを使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成されたプログラムをブートローダで転送しても動作しません。 -''SH7145F (ExRAM, Bootloader)'' -''SH7145F (ExFlash & ExRAM)'' ****FLASH WRITER [#FW] 様々なマイコンに対応した転送ツールです。 FLASH WRITERを使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成さAれたプログラムをFLASH WRITERで転送しても動作しません。 -''SH7145F (Internal Flash)'' -''SH7145F (Internal Flash & ExRAM)'' **SH用ライブラリ [#LIBRARY] [[GCC Developer Lite>GCC Developer Lite]]では1つのソースプログラムのみを対象とするため、機能別にソースを分割して編集やコンパイルするといった使い方は出来ません(完全にできないという訳でもありません)。だからと言って全ての機能を一つのソースに記述する事は、プログラムの見通しが悪くなりバグの温床になりかねません。~ そこで、複数のソースに分割する事無くある程度のソースプログラムサイズでコーディングするために、頻繁に使用されるであろう一部の機能が専用のライブラリとして提供されます。~ GCC Developer Liteを標準的な環境のPCへインストールすると、「C:\Program Files\BestTech\GCC Developer Lite\TARGET\7145F」フォルダに必要なファイルがコピーされます。必要に応じて本フォルダを参照できますし、ユーザがソースを修正しライブラリを再構築する事も可能です。 -''内蔵ペリフェラルのレジスタ名定義ヘッダファイル'' ~マイコンに内蔵された各種ペリフェラルが持つレジスタは、決められたメモリ上のアドレスに配置されています。それらレジスタをアドレスではなくレジスタ毎に決められた名称を使い、変数のようにアクセスするためのマクロ定義が記述されています。~ '''7145.h''' (レジスタのマクロ定義)~ -''ライブラリファイル'' ~各APIをコンパイルし、一つのライブラリファイルにアーカイブして提供します。~ '''makelib.bat''' (APIをコンパイルし、アーカイブするバッチ)~ '''libadd7145.a''' (makelib.batで作成されるライブラリファイル)~ **サンプルプログラム [#SAMPLE] [[こちら>http://www.besttechnology.co.jp/download/7145FSMPL.ZIP]]からダウンロード出来ます。 **その他 [#ETC]