(57)【特許請求の範囲】
【請求項１】
Ｉ／Ｏポート、
第１、第２の外部入出力端子、
入力される入力パルス信号のエッジを検出すると、その時のフリーランタイマのカウント値を取り込む第１、第２のインプットキャプチャ回路、及び
切り替え用制御信号の入力により前記両外部入出力端子と前記両インプットキャプチャ回路の入力端との間の接続を所定パターンに切り替える切り替え回路を備え、
前記切り替え回路は、
前記第１の外部入出力端子を前記第１のインプットキャプチャ回路の前記入力端に接続し、かつ、前記第２の外部入出力端子を前記第２のインプットキャプチャ回路の前記入力端に接続する第１の切り替えパターン、及び、
前記第１の外部入出力端子を前記第１及び第２のインプットキャプチャ回路の前記入力端に接続する第２の切り替えパターンを有することを特徴とするパルス幅検出機能を有する１チップマイクロコンピュータ。
【請求項２】
Ｉ／Ｏポート、
第１、第２の外部入出力端子、
入力される入力パルス信号のエッジを検出すると、その時のフリーランタイマのカウント値を取り込む第１、第２のインプットキャプチャ回路、及び
切り替え用制御信号の入力により前記両外部入出力端子、前記両インプットキャプチャ回路の入力端及び前記Ｉ／Ｏポート間の接続を所定パターンに切り替え可能な構成を有する切り替え回路を備え、
前記切り替え回路は、
前記第１の外部入出力端子を前記第１のインプットキャプチャ回路の前記入力端に接続し、かつ、前記第２の外部入出力端子を前記第２のインプットキャプチャ回路の前記入力端及び前記Ｉ／Ｏポートのどちらかに接続する第１の切り替えパターン、及び、
前記第１の外部入出力端子を前記第１及び第２のインプットキャプチャ回路の前記入力端に接続し、かつ、前記第２の外部入出力端子を前記Ｉ／Ｏポートに接続する第２の切り替えパターンを有することを特徴とするパルス幅検出機能を有する１チップマイクロコンピュータ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、パルス幅検出機能を有する１チップマイクロコンピュータに関する。
【０００２】
【従来の技術】
ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｉ／Ｏポートを少なくとも１チップに集積した周知の１チップマイクロコンピュータでは、内蔵した汎用インプットキャプチャ回路を用いて入力パルスのパルス幅検出を行うのが一般的である。
【０００３】
インプットキャプチャ回路を用いるパルス幅検出には、１インプットキャプチャ方式及び２インプットキャプチャ方式があり、前者は、単一のインプットキャプチャ回路でパルスの立ち上がりエッジタイミング及び立ち下がりエッジタイミングを検出し、両タイミング間の時間差を演算してパルス幅とし、後者は、パルスの立ち上がりエッジタイミング及び立ち下がりエッジタイミングを別々のインプットキャプチャ回路で検出し、両タイミング間の時間差を演算してパルス幅としている。
【０００４】
１インプットキャプチャ方式は制御動作が複雑で短パルス検出にはむかないが、回路構成が簡素となるという利点を有し、２インプットキャプチャ方式は回路負担が大きいが、制御動作が簡素となり短パルス検出に好適であるという利点を有する。
【０００５】
従来の１チップマイクロコンピュータでは、汎用性を確保するために、入力端が第１の外部入出力端子に接続される第１の１のインプットキャプチャ回路と、入力端が第２の外部入出力端子に接続される第２のインプットキャプチャ回路とをあらかじめ設けておく２インプットキャプチャ回路設置構成の１チップマイクロコンピュータが知られている。
【０００６】
この２インプットキャプチャ回路設置構成の１チップマイクロコンピュータでは、１インプットキャプチャ方式と２インプットキャプチャ方式のうちの好適などちらかを選択して採用することができる。
【０００７】
更に説明すると、１インプットキャプチャ方式を採用して一つの入力パルス信号のパルス幅を検出する場合にはどちらかの外部入出力端子に入力パルス信号を入力し、この外部入出力端子に接続されるインプットキャプチャ回路を１インプットキャプチャ方式で動作制御すればよい。
【０００８】
また、１インプットキャプチャ方式を採用して互いに異なる二つの入力パルス信号のパルス幅を検出する場合にはそれぞれの外部入出力端子に異なる入力パルス信号を入力し、これらインプットキャプチャ回路を１インプットキャプチャ方式で動作制御すればよい。
【０００９】
更に、２インプットキャプチャ方式を採用して一つの入力パルス信号のパルス幅を検出する場合には、外部からこれら２つのインプットキャプチャ回路の入力端に個別に接続される２つの外部入出力端子に同一の入力パルス信号を入力すればよい。
【００１０】
【発明が解決しようとする課題】
しかしながら、上記した従来の２インプットキャプチャ回路設置構成の１チップマイクロコンピュータでは、１インプットキャプチャ方式を採用する場合と、２インプットキャプチャ方式を採用する場合とで、１チップマイクロコンピュータの外部での信号の流れを変更しなければならず、これは主にプリント基板の変更を必要とし、１入力に対して、マイコンのもつ外部入力端子を２個必要とするという問題点があった。
【００１１】
本発明は上記問題点に鑑みなされたものであり、１入力で２インプットキャプチャ方式を実現できるとともに汎用性に優れたパルス幅検出機能を有する１チップマイクロコンピュータを提供することをその目的としている。
【００１２】
【課題を解決するための手段】
請求項１記載のパルス幅検出機能を有する１チップマイクロコンピュータは、２つの外部入出力端子と、２つのインプットキャプチャ回路との間にプログラマブルな信号切り替え回路を有する。
【００１３】
切り替え回路は、第１の外部入出力端子を第１のインプットキャプチャ回路の入力端に接続し、かつ、第２の外部入出力端子を第２のインプットキャプチャ回路の入力端に接続する第１の切り替えパターン、及び、第１の外部入出力端子を第１及び第２のインプットキャプチャ回路の入力端に接続する第２の切り替えパターンを少なくとも有する。
【００１４】
このように構成した本発明の１チップマイクロコンピュータによれば、この１チップマイクロコンピュータ内蔵のプログラムを書き換えるだけで、又は１チップマイクロコンピュータ外部に設けられた切り替えパターン設定回路からこの切り替え回路の切り替えパターンを選択するだけで、上述した１インプットキャプチャ方式と２インプットキャプチャ方式のうちの好適な一つを採用して一つの入力パルス信号のパルス幅を検出することができる上、更に前者を採用した場合に遊び端子となる一つの（第２の）外部入出力端子を他の入力パルス信号の１インプットキャプチャ方式のパルス幅計測に用いるか又はＩ／Ｏポートの外部入出力端子として用いることができるので、単一の装置構成でプリント基板などの変更を必要とすることなく、内蔵プログラムもしくはマイコン外部からの指令により一対の外部入出力端子及び一対のインプットキャプチャ回路の両方を有効に利用することができ、構成及び保守管理の簡素化を維持しつつ多様な回路バリエーションをもつインプットキャプチャ回路付き１チップマイクロコンピュータを実現することができる。
【００１５】
請求項２記載のパルス幅検出機能を有する１チップマイクロコンピュータは、２つの外部入出力端子と、２つのインプットキャプチャ回路及びＩ／Ｏポートとの間にプログラマブルな信号切り替え回路を有する。
【００１６】
切り替え回路は、第１の外部入出力端子を第１のインプットキャプチャ回路の入力端に接続し、かつ、第２の外部入出力端子を第２のインプットキャプチャ回路の入力端及びＩ／Ｏポートのどちらかに接続する第１の切り替えパターン、及び、第１の外部入出力端子を第１及び第２のインプットキャプチャ回路の入力端に接続し、かつ、第２の外部入出力端子をＩ／Ｏポートに接続する第２の切り替えパターンを少なくとも有する。
【００１７】
このように構成した本発明の１チップマイクロコンピュータによれば、請求項１記載の効果に加えて外部入出力端子を有効利用できるという更なる効果を奏することができる。
【００１８】
【発明を実施するための態様】
インプットキャプチャ回路は、入力パルス信号のエッジタイミングをデジタル信号として検出する回路である。
【００１９】
切り替え回路は、両外部入出力端子と両インプットキャプチャ回路の入力端及びＩ／Ｏポートとの間の接続を切り替える回路であり、ＣＭＯＳトランスファゲートで構成できる他、周知の各種の回路構成で構成することができる。
【００２０】
本発明のパルス幅検出機能を有する１チップマイクロコンピュータ装置の好適な態様を以下の実施例により具体的に説明する。
【００２１】
【実施例】
（全体構成）
この１チップマイクロコンピュータの要部を示すブロック図を図１に示す。
【００２２】
図１において、１は１チップマイクロコンピュータ、２、３は外部入出力端子、４は切り替え回路、５、６はインプットキャプチャ回路、７はＩ／Ｏポートであり、外部入出力端子２、３はこの１チップマイクロコンピュータ１が集積されたチップを収容するパッケージに取り付けられており、切り替え回路４、インプットキャプチャ回路５、６及びＩ／Ｏポート７は１チップマイクロコンピュータ１に内蔵されている。切り替え回路４は、既述したように外部入出力端子２、３と、インプットキャプチャ回路５、６及びＩ／Ｏポート７の端子（入力端子でもよく、出力端子でもよい）７０、７１との接続パターンを切り替える機能を有する信号切り替え回路である。
【００２３】
切り替え回路４の具体構成の一例を図２を参照して説明する。
【００２４】
この切り替え回路４は、ＣＭＯＳトランスファゲート４１〜４５と、レジスタ４６と、論理（デコード）回路４７とからなる。レジスタ４６はそれぞれ１ビットのレジスタ２個で構成され、２ビットの切り替え制御信号ａ，ｂが入力され、論理（デコード）回路４７は、このレジスタ４６の出力をデコードしてＣＭＯＳトランスファゲート４１〜４５のゲートに切り替え制御電圧Ａ、Ｂ、Ｃ、Ｄを印加する。切り替え制御電圧ＡはＣＭＯＳトランスファゲート４１に印加され、切り替え制御電圧ＢはＣＭＯＳトランスファゲート４２に印加され、切り替え制御電圧ＣはＣＭＯＳトランスファゲート４３に印加され、切り替え制御電圧ＤはＣＭＯＳトランスファゲート４４、４５が互いに逆動作するように印加される。
【００２５】
切り替えパターンとしては、
インプットキャプチャ回路５、６を２インプットキャプチャ方式で使う第１切り替えパターン、
インプットキャプチャ回路５を１インプットキャプチャ方式で使い、外部入出力端子３をＩ／Ｏポート７の端子として使う第２切り替えパターン、
インプットキャプチャ回路５、６をそれぞれ１インプットキャプチャ方式で使って２つの入力パルス信号のパルス幅検出を行う第３切り替えパターン、
外部入出力端子２、３をそれぞれＩ／Ｏポート７の端子として使い、インプットキャプチャ回路５、６を使わない第４切り替えパターン、
が設定されている。これらの切り替えパターンは切り替え制御電圧Ａ、Ｂ、Ｃ、Ｄの組み合わせで形成できることは明白である。
【００２６】
これにより、いたずらに外部入出力端子を増加させ、回路構成を複雑にすることなく、汎用性に優れた１チップマイクロコンピュータを実現することができる。
（インプットキャプチャ回路）
インプットキャプチャ回路５、６自体は従来のものと同じであるので、インプットキャプチャ回路５、６を図３を参照して簡単に説明する。ただし、後述するように、インプットキャプチャ回路６は、インプットキャプチャ回路５のフリーランタイマを利用するように設計されている。
【００２７】
インプットキャプチャ回路５は、エッジ検出器５１、フリーランタイマ５２、インプットキャプチャレジスタ５３、インプットキャプチャ制御レジスタ５４を有している。また、インプットキャプチャ回路６は、エッジ検出器６１、インプットキャプチャレジスタ６３、インプットキャプチャ制御レジスタ６４を有している。
（１インプットキャプチャ方式の動作）
次に、このインプットキャプチャ回路５による１インプットキャプチャ方式のパルス幅計測動作を説明する。
【００２８】
プログラムからの１インプットキャプチャ方式の動作指令（立ち上がり検出モード）を保持するインプットキャプチャ制御レジスタ５４は最初、立ち上がりエッジ検出をエッジ検出器５１に指令し、エッジ検出器５１が立ち上がりエッジを検出すると、その時のフリーランタイマ５２のカウント値をインプットキャプチャレジスタ５３に取り込み、インプットキャプチャレジスタ５３の値を図示しないＣＰＵが図示しないＲＡＭの所定ブロックに転送させる。
【００２９】
次に、プログラムからの１インプットキャプチャ方式の動作指令（立ち下がり検出モード）を保持するインプットキャプチャ制御レジスタ５４は、立ち下がりエッジ検出をエッジ検出器５１に指令し、エッジ検出器５１が立ち下がりエッジを検出すると、その時のフリーランタイマ５２のカウント値をインプットキャプチャレジスタ５３に取り込む。
【００３０】
これにより、１チップマイクロコンピュータ１は、あらかじめ内蔵されているパルス幅検出ルーチンの実行によりＲＡＭの記憶値とインプットキャプチャレジスタ５３の保持値との間の差を演算しパルス幅を検出する。
（２インプットキャプチャ方式の動作）
次に、このインプットキャプチャ回路５、６による２インプットキャプチャ方式のパルス幅計測動作を説明する。
【００３１】
インプットキャプチャ回路５において、プログラムからの２インプットキャプチャ方式の動作指令（立ち上がりエッジ検出モード）を保持するインプットキャプチャ制御レジスタ５４は、立ち上がりエッジ検出をエッジ検出器５１に指令し、エッジ検出器５１が立ち上がりエッジを検出すると、その時のフリーランタイマ５２のカウント値をインプットキャプチャレジスタ５３に取り込む。
【００３２】
また、インプットキャプチャ回路６において、プログラムからの２インプットキャプチャ方式の動作指令（立ち下がりエッジ検出モード）を保持するインプットキャプチャ制御レジスタ６４は、立ち下がりエッジ検出をエッジ検出器６１に指令し、エッジ検出器６１が立ち下がりエッジを検出すると、その時のフリーランタイマ５２のカウント値をインプットキャプチャレジスタ６３に取り込む。
【００３３】
これにより、１チップマイクロコンピュータ１は、あらかじめ内蔵されているパルス幅検出サブルーチンの実行によりインプットキャプチャレジスタ５３の保持値とインプットキャプチャレジスタ６３の保持値との差を演算し、パルス幅を検出する。
【００３４】
（変形態様）
上記実施例では、切り替え回路４は、ＣＭＯＳトランスファゲート４１〜４５を用いて構成したが、図４に示すように、ＣＭＯＳインバータ回路４１’〜４５’を用いて構成すれば切り替え回路４のオン抵抗の低減により一層の高速動作を実現することができる。なお、この場合、信号が反転するので、それを加味して回路設計を行うことは当然である。
【図面の簡単な説明】
【図１】実施例１の１チップマイクロコンピュータの回路構成を示すブロック回路図である。
【図２】図１の１チップマイクロコンピュータの切り替え回路の詳細を示すブロック回路図である。
【図３】図１の１チップマイクロコンピュータのインプットキャプチャ回路の詳細を示すブロック回路図である。
【図４】切り替え回路の変形態様を示す回路図である。
【符号の説明】
２は第１の外部入出力端子、３は第２の外部入出力端子、４は切り替え回路、５は第１のインプットキャプチャ回路、６は第２のインプットキャプチャ回路、７はＩ／Ｏポート
【図１】
0003700759.tif 000002
【図２】
0003700759.tif 000003
【図３】
0003700759.tif 000004
【図４】
0003700759.tif 000005