2: 2009-06-20 (土) 04:30:14 sho[6] [7] | 3: 2009-06-20 (土) 05:06:48 sho[6] [8] | ||
---|---|---|---|
Line 14: | Line 14: | ||
|消費電流 |30mA (MAX) | | |消費電流 |30mA (MAX) | | ||
|寸法 |W32×D27mm (参考) | | |寸法 |W32×D27mm (参考) | | ||
- | |コネクタ等 |モード切替スイッチ×1、20ピン端子×2、通信用3ピンヘッダ (BTE060 RS232C通信ケーブル専用)、基板裏面にSOICタイプのシリアルEEPROM(X24C256相当)装備(ジャンパにてIICバス切り離し可)、リセットIC装備(検出電圧DC2.9V)、リセットボタン×1 | | + | |コネクタ等 |モード切替スイッチ×1、20ピン端子×2、RS232C通信用ピンヘッダ×1、基板裏面にSOICタイプのシリアルEEPROM(X24C256相当)装備(ジャンパにてIICバス切り離し可)、リセットIC装備、リセットボタン×1 | |
|環境配慮 |RoHS準拠, 鉛フリー半田 | | |環境配慮 |RoHS準拠, 鉛フリー半田 | | ||
Line 102: | Line 102: | ||
***スライドスイッチ(SW1) [#xabf7ab8] | ***スライドスイッチ(SW1) [#xabf7ab8] | ||
****ブートモード(WRITE) [#t924542b] | ****ブートモード(WRITE) [#t924542b] | ||
- | 電源供給前もしくはリセット中にマイコンボードの「モード切替スイッチ」がWRITE側になっている状態で、電源供給もしくはリセットリリースされるとマイコンはブートモードになります。 | + | 電源供給前もしくはリセット中にSW1がWRITE側かつマイコンのP85端子がHIGHの状態で、電源供給もしくはリセットリリースされると、マイコンはブートモードになります。このモードはマイコンの内蔵フラッシュROMへプログラムを書き込む際に選択します。書込みにはFLASH WRITERを使用します。 |
- | この状態はマイコンの内蔵フラッシュROMへプログラムを書き込む際に設定します。書込みにはFLASH WRITERを使用します。 | + | |
+ | なお、マイコンのP85端子が外部に設けられた回路等によってLOWになっていると、マイコンはブートモードになりません。 | ||
****ユーザモード(RUN) [#oec65a25] | ****ユーザモード(RUN) [#oec65a25] | ||
- | 電源供給前もしくはリセット中にマイコンボードの「モード切替スイッチ」がRUN側になっている状態で、電源供給もしくはリセットリリースされるとマイコンはユーザモードになります。 | + | 電源供給前もしくはリセット中にSW1がRUN側になっている状態で、電源供給もしくはリセットされるとマイコンはユーザモードになります。このモードはマイコンの内蔵フラッシュROMへ書き込まれたプログラムを実行する際に選択します。 |
- | この状態はブートモードで内蔵フラッシュROMへ書き込まれたプログラムが動作します。~ | + | |
+ | なお、プログラムが実行されている際にSW1をWRITE側にすると、マイコンにNMIが発行されます。 | ||
***プッシュスイッチ(PB1) [#kb7c13c9] | ***プッシュスイッチ(PB1) [#kb7c13c9] | ||
- | PB1はリセットIC(U2)のマニュアルリセット端子に接続されています。押下されるとリセットICはマイコンのRES端子をLOWにし、規定時間経過後HIGHに復帰します。~ | + | PB1はリセットIC(U2)のマニュアルリセット端子に接続されています。押下されるとリセットICはマイコンのRES端子をLOWにし、放すと規定時間経過後HIGH-Z状態になり装備されたプルアップ抵抗でマイコンのRES端子はHIGHになります。 |
**開発環境 [#l1a0e3ca] | **開発環境 [#l1a0e3ca] | ||
Line 150: | Line 152: | ||
+ユーザプログラムの転送 | +ユーザプログラムの転送 | ||
- | **H8/3694F用ライブラリ [#lb227da1] | ||
[[GCC Developer Lite>GCC Developer Lite]]では1つのソースプログラムのみを対象とするため、機能別にソースを分割して編集やコンパイルするといった使い方は出来ません(完全にできないという訳でもありません)。だからと言って全ての機能を一つのソースに記述する事は、プログラムの見通しが悪くなりバグの温床になりかねません。~ | [[GCC Developer Lite>GCC Developer Lite]]では1つのソースプログラムのみを対象とするため、機能別にソースを分割して編集やコンパイルするといった使い方は出来ません(完全にできないという訳でもありません)。だからと言って全ての機能を一つのソースに記述する事は、プログラムの見通しが悪くなりバグの温床になりかねません。~ | ||
そこで、複数のソースに分割する事無くある程度のソースプログラムサイズでコーディングするために、頻繁に使用されるであろう一部の機能が専用のライブラリとして提供されます。~ | そこで、複数のソースに分割する事無くある程度のソースプログラムサイズでコーディングするために、頻繁に使用されるであろう一部の機能が専用のライブラリとして提供されます。~ | ||
GCC Developer Liteを標準的な環境のPCへインストールすると、「C:\Program Files\BestTech\GCC Developer Lite\TARGET\3694F」フォルダに必要なファイルがコピーされます。必要に応じて本フォルダを参照できますし、ユーザがソースを修正しライブラリを再構築する事も可能です。 | GCC Developer Liteを標準的な環境のPCへインストールすると、「C:\Program Files\BestTech\GCC Developer Lite\TARGET\3694F」フォルダに必要なファイルがコピーされます。必要に応じて本フォルダを参照できますし、ユーザがソースを修正しライブラリを再構築する事も可能です。 | ||
+ | -''スタートアップルーチン'' | ||
+ | ~C言語で作成したプログラムを実行させるために、アセンブラないしC言語で記述された必要最低限の初期化処理プログラムです。~ | ||
+ | '''h8crt0.s''' (スタートアップルーチン本体のソースファイル)~ | ||
-''リンカスクリプトファイル'' | -''リンカスクリプトファイル'' | ||
~実行条件に応じたメモリの割り当てを記述したファイルです。コンパイル時にリンカが参照し、コードの最終的な配置が決定されます。~ | ~実行条件に応じたメモリの割り当てを記述したファイルです。コンパイル時にリンカが参照し、コードの最終的な配置が決定されます。~ | ||
Line 160: | Line 164: | ||
~マイコンに内蔵された各種ペリフェラルが持つレジスタは、決められたメモリ上のアドレスに配置されています。それらレジスタをアドレスではなくレジスタ毎に決められた名称を使い、変数のようにアクセスするためのマクロ定義が記述されています。~ | ~マイコンに内蔵された各種ペリフェラルが持つレジスタは、決められたメモリ上のアドレスに配置されています。それらレジスタをアドレスではなくレジスタ毎に決められた名称を使い、変数のようにアクセスするためのマクロ定義が記述されています。~ | ||
'''3694.h''' (レジスタのマクロ定義)~ | '''3694.h''' (レジスタのマクロ定義)~ | ||
+ | -''SCI API'' | ||
+ | ~作成したプログラムの動作を確認を行う際に、マイコンのシリアルポートを使用する事を推奨しています。マイコンと文字によるコミュニケーション機能を用意する事で、レジスタの値やプログラムの進捗の把握、さらにはマイコンに対してPCから指令を与えるといった使い方が出来ます。~ | ||
+ | 本マイコンには複数のシリアルポートが備わっており、制御方法も多種多様なため、それに応じてライブラリとして提供する通信用APIも多くなっています。~ | ||
+ | '''sci~.c''' (SCIを割り込みで使用するAPIのソース群)~ | ||
+ | -''EEPROM API'' | ||
+ | ~IICバスに接続されたEEPROMへアクセスするAPIです。~ | ||
+ | '''eeprom.c''' (APIのソースファイル) | ||
-''ライブラリファイル'' | -''ライブラリファイル'' | ||
~各APIをコンパイルし、一つのライブラリファイルにアーカイブして提供します。~ | ~各APIをコンパイルし、一つのライブラリファイルにアーカイブして提供します。~ | ||
- | '''makelib.bat''' (APIをH8モードでコンパイルし、アーカイブするバッチ)~ | + | '''makelib.bat''' (APIをコンパイルし、アーカイブするバッチ)~ |
- | '''makelib_thumb.bat''' (APIをTHUMBモードでコンパイルし、アーカイブするバッチ)~ | + | |
'''libadd3694.a''' (makelib.batで作成されるライブラリファイル)~ | '''libadd3694.a''' (makelib.batで作成されるライブラリファイル)~ | ||
- | '''libadd3694_thumb.a''' (makelib_thumb.batで作成されるライブラリファイル) | ||
**サンプルプログラム [#q33f8fda] | **サンプルプログラム [#q33f8fda] |
(This host) = http://www.besttechnology.co.jp