3: 2009-06-20 (土) 18:30:19 sho | 現: 2013-07-14 (日) 12:08:33 takaboo | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | TITLE:BTC080 SH7145Fマイコンボードマニュアル | + | TITLE:SH7145Fマイコンボードマニュアル |
#norelated | #norelated | ||
#contents | #contents | ||
+ | |||
**概要 [#md273e31] | **概要 [#md273e31] | ||
- | SH7145Fマイコンボードはルネサステクノロジ製32bit RISC CPU SH7145Fを搭載したマイコンボードです。ボード上には1MバイトのSRAMと2MバイトのフラッシュROMを別途装備し、比較的大きなワークエリアを必要とするアプリケーションに対応可能です。 | + | SH7145Fマイコンボードはルネサスエレクトロニクス製32bit RISC CPU SH7145Fを搭載したマイコンボードです。ボード上には1MバイトのSRAMと2MバイトのフラッシュROMを別途装備し、比較的大きなワークエリアを必要とするアプリケーションに対応可能です。 |
**基本仕様 [#ma362c4a] | **基本仕様 [#ma362c4a] | ||
|商品番号 |BTC080 | | |商品番号 |BTC080 | | ||
- | |PCBリビジョン |E012E | | + | |PCBリビジョン |E012E (4層) | |
- | |CPU |[[Renesas HD64F7145F50:http://japan.renesas.com/fmwk.jsp?cnt=sh7144_root.jsp&fp=/products/mpumcu/superh_family/sh7144_series/sh7144_group/]] | | + | |CPU |[[Renesas HD64F7145F50:http://japan.renesas.com/products/mpumcu/superh/sh7144/index.jsp]] | |
|クロック |外部オシレータ 12.288MHz&br;システム:49.152MHz固定&br;周辺:24.576MHz固定 | | |クロック |外部オシレータ 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)) | | |外部メモリ |8Mビット高速S-RAM(ノンウェイト32ビットデータバス接続、スーパーキャパシタによる簡易バックアップ アドレスマップ (CS1空間)、400000H~4FFFFFH(MODE0/2))&br;16MビットフラッシュROM(16ビットデータバス接続、消去/書込みサイクル 100000回、アドレスマップ (CS0空間)、000000H~1FFFFFH(MODE0)、200000H~3FFFFFH(MODE2)) | | ||
Line 66: | Line 67: | ||
| 21 | PA5/SCK1/DREQ1/IRQ1 | 22 | PE7/TIOC2B/RXD2 | | | 21 | PA5/SCK1/DREQ1/IRQ1 | 22 | PE7/TIOC2B/RXD2 | | ||
| 23 | PE8/TIOC3A/SCK2/TMS | 24 | PE9/TIOC3B/TRST/SCK3 | | | 23 | PE8/TIOC3A/SCK2/TMS | 24 | PE9/TIOC3B/TRST/SCK3 | | ||
- | | 25 | P35 | 26 | P34 | | + | | 25 | PE10/TIOC3C/TXD2 | 26 | PE11/TIOC3D/RXD3 | |
| 27 | PE12/TIOC4A/TCK/TXD3 | 28 | PE13/TIOC4B/MRES | | | 27 | PE12/TIOC4A/TCK/TXD3 | 28 | PE13/TIOC4B/MRES | | ||
| 29 | PE14/TIOC4C/DACK0 | 30 | PE15/TIOC4D/DACK1/IRQOUT | | | 29 | PE14/TIOC4C/DACK0 | 30 | PE15/TIOC4D/DACK1/IRQOUT | | ||
+ | |||
****CN3 [#h590a4e8] | ****CN3 [#h590a4e8] | ||
-2.54mmピッチ2列×30ピン | -2.54mmピッチ2列×30ピン | ||
Line 90: | Line 92: | ||
| 29 | PA13/WRH | 30 | PA12/WRL | | | 29 | PA13/WRH | 30 | PA12/WRL | | ||
****CN4 [#o0b7bc44] | ****CN4 [#o0b7bc44] | ||
- | -2mmピッチ 3ピン | + | -2mmピッチ 3ピン ヒロセ電機 A4B-03PA-2DSA(71) |
+ | -推奨圧着ソケット:ヒロセ電機 A4B-03S-2C | ||
-U1のPA3(RXD1)とPA4(TXD1)端子をRS232Cレベルに変換 | -U1のPA3(RXD1)とPA4(TXD1)端子をRS232Cレベルに変換 | ||
-PA3(RXD1)はDIP1-4にてRS232Cレベル変換ICと切り離し可能 | -PA3(RXD1)はDIP1-4にてRS232Cレベル変換ICと切り離し可能 | ||
Line 119: | Line 122: | ||
| 4 | CN4 RX端子使用/不使用 | | | 4 | CN4 RX端子使用/不使用 | | ||
- | **各機能の詳細 [#h8ca3ffe] | + | **各機能の詳細 [#DEYAILS] |
- | ***電源 [#x4fe5904] | + | |
+ | ***電源 [#DEYAILS_POWER] | ||
余裕のある安定したDC3.3Vの電源をVCCとGND間に接続します。電源はCN1~CN3のいずれの電源端子から供給しても構いません。 | 余裕のある安定したDC3.3Vの電源をVCCとGND間に接続します。電源はCN1~CN3のいずれの電源端子から供給しても構いません。 | ||
- | ***RS232C(CN4) [#xcf97cc7] | + | ***RS232C(CN4) [#DEYAILS_CN4] |
#ref(SH7145F_1.png,50%) | #ref(SH7145F_1.png,50%) | ||
CN3にはマイコンのDBGU端子をRS232Cレベルに変換した信号が接続されます。主にPCのCOMポートと接続し、プログラムの転送やデバッグに使用します。~ | CN3にはマイコンのDBGU端子をRS232Cレベルに変換した信号が接続されます。主にPCのCOMポートと接続し、プログラムの転送やデバッグに使用します。~ | ||
Line 133: | Line 137: | ||
[[BTE060 RS232C通信ケーブル]] + [[BTE061D USBシリアル変換ケーブル]] | [[BTE060 RS232C通信ケーブル]] + [[BTE061D USBシリアル変換ケーブル]] | ||
- | ***プッシュスイッチ(PB1) [#wa4115be] | + | ***プッシュスイッチ(PB1) [#DEYAILS_PB1] |
PB1はリセットIC(U2)のマニュアルリセット端子に接続されています。押下されるとリセットICはマイコンのRES端子をLOWにし、放すと規定時間経過後HIGH-Z状態になり装備されたプルアップ抵抗でマイコンのRES端子はHIGHになります。 | PB1はリセットIC(U2)のマニュアルリセット端子に接続されています。押下されるとリセットICはマイコンのRES端子をLOWにし、放すと規定時間経過後HIGH-Z状態になり装備されたプルアップ抵抗でマイコンのRES端子はHIGHになります。 | ||
- | ***簡易バックアップ回路 [#t3bcd09f] | + | ***簡易バックアップ回路 [#DEYAILS_BACKUP] |
電源の供給が断たれるとリセットICのリセット信号と同期して外部RAMをバックアップする回路が働き、電気二重層コンデンサから外部RAMへ電源が供給されます。~ | 電源の供給が断たれるとリセットICのリセット信号と同期して外部RAMをバックアップする回路が働き、電気二重層コンデンサから外部RAMへ電源が供給されます。~ | ||
バックアップは半永久的なものではなく、プログラムのデバッグ作業におけるカット&トライの際に必要と思われる数時間程度の簡易的なものとなります。~ | バックアップは半永久的なものではなく、プログラムのデバッグ作業におけるカット&トライの際に必要と思われる数時間程度の簡易的なものとなります。~ | ||
なお、電気二重層コンデンサの充電はマイコンボードへの電源供給時に行われ、完全充電には数十秒かかります。 | なお、電気二重層コンデンサの充電はマイコンボードへの電源供給時に行われ、完全充電には数十秒かかります。 | ||
- | ***ディップスイッチ(DIP1) [#s4e5df1a] | + | ***ディップスイッチ(DIP1) [#DEYAILS_DIP1] |
電源を投入する前にディップスイッチを設定すると、マイコンの動作モードが切り替わります。通電中にディップスイッチの状態を変更してはなりません。~ | 電源を投入する前にディップスイッチを設定すると、マイコンの動作モードが切り替わります。通電中にディップスイッチの状態を変更してはなりません。~ | ||
CN3とPCのCOMポートとを接続してシリアル通信を行うにはDIP1-4をONにします。OFFにするとU1のPA3(RXD1)端子がオープンとなるため、シリアル通信の受信機能がCN3を介して行えなくなります。 | CN3とPCのCOMポートとを接続してシリアル通信を行うにはDIP1-4をONにします。OFFにするとU1のPA3(RXD1)端子がオープンとなるため、シリアル通信の受信機能がCN3を介して行えなくなります。 | ||
- | ****MCU拡張モード0 [#g01913f0] | + | ****MCU拡張モード0 [#DEYAILS_MODE0] |
CS0空間(外部フラッシュROM)が16ビットとなり、内蔵フラッシュROMが無効となります。 | CS0空間(外部フラッシュROM)が16ビットとなり、内蔵フラッシュROMが無効となります。 | ||
外部フラッシュROMに0番地から動作する実行可能なコードがストアされている場合は、内蔵フラッシュROMの代替としてプログラムを起動できます。 | 外部フラッシュROMに0番地から動作する実行可能なコードがストアされている場合は、内蔵フラッシュROMの代替としてプログラムを起動できます。 | ||
Line 152: | Line 156: | ||
| 状態(信号) | ON(0) | ON(0) | OFF(1) | | | 状態(信号) | ON(0) | ON(0) | OFF(1) | | ||
- | ****MCU拡張モード1 [#nd5ee85c] | + | ****MCU拡張モード1 [#DEYAILS_MODE1] |
本モードは外部フラッシュROMのバス幅が16ビットであるため使用できません。 | 本モードは外部フラッシュROMのバス幅が16ビットであるため使用できません。 | ||
- | ****MCU拡張モード2 (出荷時設定) [#jc7962cb] | + | ****MCU拡張モード2 (出荷時設定) [#DEYAILS_MODE2] |
マイコン内蔵フラッシュROMが有効で、CS0空間(外部フラッシュROM)が0x200000~0x3FFFFF、CS1空間(外部SRAM)が0x400000H~0x7FFFFFにアサインされます。初期状態でバスとして使用される端子は汎用I/Oとなっています(MCU拡張モード3と同等)ので、CS0およびCS1空間を使用する場合はBSCおよびPFCを適宜設定する必要があります。~ | マイコン内蔵フラッシュROMが有効で、CS0空間(外部フラッシュROM)が0x200000~0x3FFFFF、CS1空間(外部SRAM)が0x400000H~0x7FFFFFにアサインされます。初期状態でバスとして使用される端子は汎用I/Oとなっています(MCU拡張モード3と同等)ので、CS0およびCS1空間を使用する場合はBSCおよびPFCを適宜設定する必要があります。~ | ||
なお、出荷時に予め内蔵フラッシュROMに[[ブートローダ>SH7145F Bootloader]]が書き込まれいますので、BSCおよびPFCの設定を意識することなくプログラムを外部SRAMもしくは外部フラッシュROMにダウンロードして実行できます。 | なお、出荷時に予め内蔵フラッシュROMに[[ブートローダ>SH7145F Bootloader]]が書き込まれいますので、BSCおよびPFCの設定を意識することなくプログラムを外部SRAMもしくは外部フラッシュROMにダウンロードして実行できます。 | ||
Line 162: | Line 166: | ||
| 状態(信号) | ON(0) | OFF(1) | OFF(1) | | | 状態(信号) | ON(0) | OFF(1) | OFF(1) | | ||
- | ****MCU拡張モード3 [#abb4a5c1] | + | ****MCU拡張モード3 [#DEYAILS_MODE3] |
シングルチップモードとなり、増設メモリを一切使用しない場合に設定します。 | シングルチップモードとなり、増設メモリを一切使用しない場合に設定します。 | ||
このモードにするとマイコンの外部端子が全て汎用入出力ポートに設定でき、外部バスとしての設定を行うことはできません。~ | このモードにするとマイコンの外部端子が全て汎用入出力ポートに設定でき、外部バスとしての設定を行うことはできません。~ | ||
Line 170: | Line 174: | ||
| 状態(信号) | OFF(1) | OFF(1) | OFF(1) | | | 状態(信号) | OFF(1) | OFF(1) | OFF(1) | | ||
- | ****ブートモード [#jca94fc9] | + | ****ブートモード [#DEYAILS_BOOTMODE] |
内蔵フラッシュROMへプログラムを書き込む際に設定します。書き込みにはFLASH WRITERを使用します。 | 内蔵フラッシュROMへプログラムを書き込む際に設定します。書き込みにはFLASH WRITERを使用します。 | ||
Line 176: | Line 180: | ||
| 状態(信号) | ON(0) | ON(0) | ON(0) | | | 状態(信号) | ON(0) | ON(0) | ON(0) | | ||
- | **開発環境 [#le578f94] | + | **開発環境 [#IDE] |
- | ***GCC Developer Lite [#se6cd2c9] | + | ***GCC Developer Lite [#GDL] |
GCC Developer Liteの詳細については[[こちら>GCC Developer Lite]]。~ | GCC Developer Liteの詳細については[[こちら>GCC Developer Lite]]。~ | ||
フルインストールないしSH7145Fで使用を選択する事で必要なコンポーネントが自動的にインストールされます。~ | フルインストールないしSH7145Fで使用を選択する事で必要なコンポーネントが自動的にインストールされます。~ | ||
Line 187: | Line 191: | ||
USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 | USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 | ||
-''[[SIMPLE TERM>GCC Developer Lite#STERM]]'' | -''[[SIMPLE TERM>GCC Developer Lite#STERM]]'' | ||
- | ~汎用シリアルターミナル。簡易的なTLENETクライアントとしても機能する。~ | + | ~汎用シリアルターミナル。簡易的なTELNETクライアントとしても機能する。~ |
USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 | USB等で提供されるCOMポートの動的な検出と、COMポートを使用する弊社ツールとの排他制御機能を持つ。 | ||
-''ターゲットファイル'' | -''ターゲットファイル'' | ||
~マイコンの内蔵ペリフェラルを定義したヘッダファイルやSCIを簡便に使うためのAPI、メモリマップを定義したリンカスクリプトファイル、スタートアップルーチンを含む。コンパイル済みライブラリとしてソースとリンクして使用する。 | ~マイコンの内蔵ペリフェラルを定義したヘッダファイルやSCIを簡便に使うためのAPI、メモリマップを定義したリンカスクリプトファイル、スタートアップルーチンを含む。コンパイル済みライブラリとしてソースとリンクして使用する。 | ||
- | ****ターゲットファイル [#e7cad936] | + | ****ターゲットファイル [#TARGETFILES] |
[[GCC Developer Lite>GCC Developer Lite]]では本マイコン用の設定を複数備えています。~ | [[GCC Developer Lite>GCC Developer Lite]]では本マイコン用の設定を複数備えています。~ | ||
例えば、SHコアの学習・組み込み向けCコンパイラの習熟・マイコン内蔵ペリフェラルの機能を熟知するといった段階では外部SRAM上でデバッグし、最終的に製品等としてリリースして完成させる時は内蔵フラッシュROMに、といった段階を踏む場合でも[[GCC Developer Lite>GCC Developer Lite]]のコンパイルオプションの設定リストから選択し直すだけで設定が完了します。~ | 例えば、SHコアの学習・組み込み向けCコンパイラの習熟・マイコン内蔵ペリフェラルの機能を熟知するといった段階では外部SRAM上でデバッグし、最終的に製品等としてリリースして完成させる時は内蔵フラッシュROMに、といった段階を踏む場合でも[[GCC Developer Lite>GCC Developer Lite]]のコンパイルオプションの設定リストから選択し直すだけで設定が完了します。~ | ||
Line 203: | Line 207: | ||
-''SH7145F (ExFlash & ExRAM)'' | -''SH7145F (ExFlash & ExRAM)'' | ||
- | ****ブートローダ [#k721ab7e] | + | ****SIMPLE TERMとブートローダ [#STERM_BL] |
マイコンには出荷時に弊社オリジナルの[[ブートローダ>SH7145F Bootloader]]が書き込まれています。~ | マイコンには出荷時に弊社オリジナルの[[ブートローダ>SH7145F Bootloader]]が書き込まれています。~ | ||
[[ブートローダ>SH7145F Bootloader]]はJTAGやその他の特殊なI/Fを使用せずとも、COMポートを使用してマイコンのプログラム書き換えや操作を行う事が出来ます。 | [[ブートローダ>SH7145F Bootloader]]はJTAGやその他の特殊なI/Fを使用せずとも、COMポートを使用してマイコンのプログラム書き換えや操作を行う事が出来ます。 | ||
詳細は[[こちら>SH7145F Bootloader]]。~ | 詳細は[[こちら>SH7145F Bootloader]]。~ | ||
- | [[ブートローダ>SH7145F Bootloader]]を使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成されたプログラムを[[ブートローダ>SH7145F Bootloader]]で転送しても動作しません。 | + | ブートローダを使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成されたプログラムをブートローダで転送しても動作しません。 |
-''SH7145F (ExRAM, Bootloader)'' | -''SH7145F (ExRAM, Bootloader)'' | ||
-''SH7145F (ExFlash & ExRAM)'' | -''SH7145F (ExFlash & ExRAM)'' | ||
- | ****FLASH WRITER [#sb54d892] | + | ****FLASH WRITER [#FW] |
様々なマイコンに対応した転送ツールです。 | 様々なマイコンに対応した転送ツールです。 | ||
FLASH WRITERを使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成さAれたプログラムをFLASH WRITERで転送しても動作しません。 | FLASH WRITERを使用して動作するプログラムが構成できる設定リストは以下の通りで、これ以外の設定リストで構成さAれたプログラムをFLASH WRITERで転送しても動作しません。 | ||
Line 217: | Line 221: | ||
-''SH7145F (Internal Flash & ExRAM)'' | -''SH7145F (Internal Flash & ExRAM)'' | ||
- | **SH用ライブラリ [#c8c280fa] | + | **SH用ライブラリ [#LIBRARY] |
[[GCC Developer Lite>GCC Developer Lite]]では1つのソースプログラムのみを対象とするため、機能別にソースを分割して編集やコンパイルするといった使い方は出来ません(完全にできないという訳でもありません)。だからと言って全ての機能を一つのソースに記述する事は、プログラムの見通しが悪くなりバグの温床になりかねません。~ | [[GCC Developer Lite>GCC Developer Lite]]では1つのソースプログラムのみを対象とするため、機能別にソースを分割して編集やコンパイルするといった使い方は出来ません(完全にできないという訳でもありません)。だからと言って全ての機能を一つのソースに記述する事は、プログラムの見通しが悪くなりバグの温床になりかねません。~ | ||
そこで、複数のソースに分割する事無くある程度のソースプログラムサイズでコーディングするために、頻繁に使用されるであろう一部の機能が専用のライブラリとして提供されます。~ | そこで、複数のソースに分割する事無くある程度のソースプログラムサイズでコーディングするために、頻繁に使用されるであろう一部の機能が専用のライブラリとして提供されます。~ | ||
Line 230: | Line 234: | ||
'''libadd7145.a''' (makelib.batで作成されるライブラリファイル)~ | '''libadd7145.a''' (makelib.batで作成されるライブラリファイル)~ | ||
- | **サンプルプログラム [#te9fc6ef] | + | **サンプルプログラム [#SAMPLE] |
+ | [[こちら>http://www.besttechnology.co.jp/download/7145FSMPL.ZIP]]からダウンロード出来ます。 | ||
+ | **その他 [#ETC] |