(57)【要約】【課題】信号を出力するタイミングの精度を細かく保ちつつ、かつ、タイマの１周期よりも先にある時刻を設定した場合にも、設定した時刻に信号を出力できる制御装置を提供する。【解決手段】所定時間を計時するごとにリセットされるタイマと、制御信号の出力を許可するか否かの情報を記憶するコンペア許可レジスタと、制御信号の出力タイミングが、タイマが計時を開始した時刻またはタイマがリセットされた時刻からタイマの計時する所定時間以内にあるか否かを判定する判定処理と、前記制御信号の出力タイミングが所定時間以内である場合に、前記記憶部に制御信号の出力を許可する許可状態であることを示す情報を記憶させる設定処理とを実行する制御部と、コンペア許可レジスタが許可情報を記憶している場合に、タイマの計時する時刻と制御信号の出力タイミングが一致する時刻に制御信号を出力する出力部とを有する構成とした。【選択図】図４
2010116806.tif 000002
【特許請求の範囲】
【請求項１】
外部装置の動作タイミングを制御する制御信号を出力する制御装置であって、
設定された設定時間を計時するごとにリセットされるタイマと、
前記制御信号の出力を許可するか否かの情報を記憶する記憶部と、
前記制御信号の出力タイミングが、前記タイマが計時を開始した時刻または前記タイマがリセットされた時刻から前記タイマの計時する所定時間以内にあるか否かを判定する処理と、
前記制御信号の出力タイミングが所定時間以内である場合に、前記記憶部に制御信号の出力を許可する許可状態にあることを示す情報を記憶させる設定処理とを実行する制御部と、
前記制御信号の出力を許可する許可状態にあることを示す情報を前記記憶部が記憶している場合に、前記タイマの計時する時刻と前記制御信号の出力タイミングが一致する時刻に制御信号を出力する出力部とを備える制御装置。
【請求項２】
前記制御部は、前記タイマがリセットされる毎に、前記判定処理および前記設定処理を実行する請求項１に記載の制御装置。
【請求項３】
前記制御部は、前記タイマが前記設定時間を所定時間ごとに分割した時間を計時する毎に、前記判定処理と前記設定処理とを実行し、
前記判定処理は、前記制御信号の出力タイミングが、前記設定時間を所定時間ごとに分割した時間以内にあるか否かを判定し、
前記設定処理は、前記制御信号の出力タイミングが前記設定時間を所定時間ごとに分割した時間以内である場合に、前記記憶部に制御信号の出力を許可する許可状態にあることを示す情報を記憶させる請求項１に記載の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は制御装置に関する。
【背景技術】
【０００２】
車両に搭載される制御装置は、回転角信号や車速信号などを入力し、これらの情報から、燃料噴射やエンジン点火のタイミングを算出する。制御装置は、算出したタイミングにパルス信号を出力して、インジェクタや点火プラグを作動させることで、燃料噴射やエンジン点火を行う。
算出したタイミングでインジェクタや点火プラグを作動させるために、制御装置は、パルス信号を出力したいタイミングをコンペアレジスタに設定する。制御装置は、タイマの値とコンペアレジスタに設定されたタイミングを比較し、タイマの値とコンペアレジスタに設定されたタイミングが一致した時に、インジェクタや点火プラグに対してパルス信号を出力する。例えば、特許文献１では、モータの駆動制御にコンペアレジスタを使用している。
【特許文献１】特開平１０−１０５２０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
制御装置がコンペアレジスタに設定したタイミングと信号出力のタイミングとが、タイマの周期によってどのような影響を受けるかについて図１を用いて説明する。図１中、実線はタイマの計時する時刻の変化を示し、点線はコンペアレジスタの値の変化を示しており、両者の交点は、タイマの計時する時刻とコンペアレジスタに設定したタイミングとが一致していることを示す。
図１において、信号を出力したいタイミングをＢの時刻と仮定した場合、制御装置はＢの時刻をコンペアレジスタに設定する。タイマの計時するする時刻は、コンペアレジスタに値を設定したＡの時刻からタイマの１周期以内に、Ｂの時刻に到達する。つまり、タイマの計時する時刻とコンペアレジスタに設定したタイミングとが初めて一致したＢの時刻に信号を出力することとなり、信号を出力したいタイミングでの信号出力が可能である。しかし、信号を出力したいタイミングをＣと仮定した場合、Ｃの時刻は、タイマの１周期が経過した時刻よりも先の時刻である。この場合、Ｃの時刻よりも前に、Ｂの時刻においてタイマの計時する時刻とコンペアレジスタに設定したタイミングとが一致してしまうため、設定時刻であるＣの時刻よりも前のＢの時刻に信号が出力されてしまう。
【０００４】
ここで、タイマがカウントする時間の間隔（以後、１カウントの間隔という）はソフトウェアで設定可能である。そこで、タイマの１カウントの間隔を長くすることで、タイマの１周期の時間を長くし、Ｃの時刻を、タイマの１周期以内にむかえるようにすれば、Ｃの時刻に信号を出力することができる。したがって、信号を出力する時刻として現在時刻からどれだけ先の時刻が指定できるのか、つまり現在時刻から信号を出力する時刻までの時間幅は、タイマの周期に依存する。
しかし、図２の（Ａ）のように１カウントの間隔を長くすると、タイマの１周期の時間は長くなるため、信号を出力する時刻までの時間幅は広がるが、細かいタイミングで信号を出力することはできなくなり、信号を出力するタイミングの精度が粗くなる。一方、図２の（Ｂ）のように１カウントの間隔を短くすると、細かいタイミングで信号を出力できるが、タイマの１周期の時間が短くなるため、信号を出力する時刻までの時間幅が狭くなってしまう。
【０００５】
本発明は、上記の事情に鑑みて成されたものであり、その目的とするところは、信号を出力するタイミングの精度を細かく保ちつつ、かつ、タイマの１周期よりも先にある時刻を設定した場合にも、設定した時刻に信号を出力できる制御装置を提供することである。
【課題を解決するための手段】
【０００６】
請求項１に係る発明は、外部装置の動作タイミングを制御する制御信号を出力する制御装置であって、設定された設定時間を計時するごとにリセットされるタイマと、前記制御信号の出力を許可するか否かの情報を記憶する記憶部と、前記制御信号の出力タイミングが、前記タイマが計時を開始した時刻または前記タイマがリセットされた時刻から前記タイマの計時する所定時間以内にあるか否かを判定する処理と、前記制御信号の出力タイミングが所定時間以内である場合に、前記記憶部に制御信号の出力を許可する許可状態にあることを示す情報を記憶させる設定処理とを実行する制御部と、前記制御信号の出力を許可する許可状態にあることを示す情報を前記記憶部が記憶している場合に、前記タイマの計時する時刻と前記制御信号の出力タイミングが一致する時刻に制御信号を出力する出力部とを備える構成とした。
この構成によれば、制御信号の出力タイミングが所定時間以内にない場合には、出力部は制御信号を出力しないため、タイマが計時できる所定時間よりも先の時刻を出力タイミングとして制御信号を出力できる。
【０００７】
上記の制御装置において前記制御部は、前記タイマがリセットされる毎に、前記判定処理および前記設定処理を実行することを特徴としている。
この構成によれば、タイマがリセットされるごとに、制御信号の出力を許可するか否かを見直すため、タイマが計時する所定時間の複数倍先の時刻を出力タイミングとして制御信号を出力できる。
【０００８】
上記の制御装置において、前記制御部は、前記タイマが前記設定時間を所定時間ごとに分割した時間を計時する毎に、前記判定処理と前記設定処理とを実行し、前記判定処理は、前記制御信号の出力タイミングが、前記設定時間を所定時間ごとに分割した時間以内にあるか否かを判定し、前記設定処理は、前記制御信号の出力タイミングが前記設定時間を所定時間ごとに分割した時間以内である場合に、前記記憶部に制御信号の出力を許可する許可状態にあることを示す情報を記憶させることを特徴としている。
この構成によれば、タイマが所定時間の２分の１の時間を計時する毎に、制御信号の出力を許可するか否かを見直すため、タイマが計時する所定時間の２分の１にあたる時間の複数倍先の時刻を出力タイミングとして制御信号を出力できる。
【発明の効果】
【０００９】
本発明によれば、信号を出力するタイミングの精度を細かく保ちつつ、かつ、タイマの１周期よりも先にある時刻を設定した場合にも、設定した時刻に信号を出力できる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の最良の実施形態について、添付図面を参照しつつ説明する。
【実施例１】
【００１１】
図３に、本発明の制御装置をエンジンＥＣＵ（Electronic Control Unit）に適用した実施例１の構成を示す。図３に示すように、エンジンＥＣＵ１０は、クロック３０と、制御装置２０ａと、出力ポート４０ａおよび４０ｂとを備えている。
【００１２】
制御装置２０ａは、クロック３０と、回転角センサ１１と、車速センサ１２と、スタータ１３と、出力ポート４０ａおよび４０ｂと接続される。制御装置２０ａは、回転角センサ１１からエンジンの回転角を表す回転角信号を入力し、車速センサ１２から車速を表す車速信号を入力し、スタータ１３からエンジンのスタータ要求を表すスタータ信号を入力する。制御装置２０ａはこれらの信号から車両状態を推定し、最適な車両状態にするためにインジェクタ１４、点火プラグ１５を含む各種アクチュエータを制御するパルス信号を、出力ポート４０ａおよび４０ｂに出力する。パルス信号を出力できるタイミングは、クロック３０から入力されるクロック信号の周波数に依存する。
これらの構成部品は一例であって、制御装置２０ａ（２０ｂ）は他の部品に接続可能である。
【００１３】
次に制御装置２０ａの構成について図４を用いて説明する。図４は制御装置２０ａのシステム構成の一例を示している。制御装置２０ａは、タイマ２１と、制御部２２と、コンペアレジスタ２３と、コンペア許可レジスタ２４（記憶部）と比較部２５と、出力部２６とを備える。
タイマ２１は、クロック３０と制御部２２と比較部２５と接続される。タイマ２１は、クロック３０から一定周期で出力されるクロック信号を入力し、クロッをカウントすることによって時刻を計時する。タイマ２１は、現在時刻を制御部２２および比較部２５へ出力する。また、タイマ２１は、タイマ２１が計時できる上限時刻を計時すると、オーバーフローしてリセットされる。つまり、タイマ２１は、初期値から所定時間を計時するごとにリセットされる。以後、タイマ２１が計時できる初期値から所定時間までの時間の間隔をタイマ２１の１周期と呼ぶ。タイマ２１は、オーバーフローすると、オーバーフロー信号を制御部２２へ出力する。
【００１４】
制御部２２は、回転角センサ１１と、車速センサ１２と、スタータ１３と、タイマ２１と、コンペアレジスタ２３と、コンペア許可レジスタ２４と、出力部２６と接続される。制御部２２は、回転角センサ１１と、車速センサ１２と、スタータ１３とから入力される各種入力信号からインジェクタ１４、点火プラグ１５を含む各種アクチュエータを制御する制御信号を出力するタイミングを算出する。そして、制御部２２は、コンペアレジスタ２３に制御信号の出力タイミングを書き込む。次に、制御部２２は、制御信号の出力タイミングが、タイマ２１の１周期以内であるかどうかを確認し、出力タイミングがタイマ２１の１周期以内であった場合には、コンペア許可レジスタ２４に制御信号の出力を許可する許可状態であることを示す情報（以後、許可情報という）を記憶させる。一方、制御信号の出力タイミングがタイマ２１の１周期以内にない場合には、コンペア許可レジスタ２４には制御信号の出力を許可しない不許可状態であることを示す情報（以後、不許可情報という）をコンペア許可レジスタ２４に記憶させる。また、出力部２６が制御信号を出力したことを表すコンペアマッチ割り込み信号を出力部２６から入力した場合にも、制御信号の出力後に制御信号の出力を行わないように、制御部２２は、コンペア許可レジスタ２４に不許可状態を記憶させる。
【００１５】
コンペア許可レジスタ２４は、制御部２２と出力部２６と接続され、前述したように制御部２２から設定された制御信号の出力を許可する許可情報または制御信号の出力を許可しない不許可情報を記憶する。出力部２６は、コンペア許可レジスタ２４に許可情報または不許可情報のどちらが記憶されているかを確認し、制御信号を出力するか否かを決定する。
【００１６】
コンペアレジスタ２３は、制御部２２と比較部２５と接続され、前述したように制御部２２から書き込まれた制御信号の出力タイミングを記憶する。比較部２５は、タイマ２１と、コンペアレジスタ２３と、出力部２６と接続される。比較部２５は、コンペアレジスタ２３に書き込まれた制御信号の出力タイミングとタイマ２１が計時する時刻が一致すると、一致信号を出力部２６へ出力する。
【００１７】
出力部２６は、比較部２５と、コンペア許可レジスタ２４と、出力ポート４０ａおよび４０ｂと、制御部２２と接続される。以後、本実施例では、出力ポート４０ａおよび４０ｂのうち、出力ポート４０ａへ制御信号を出力する場合について説明するが、出力ポート４０ｂに対しても本実施例と同様の処理が可能である。出力部２６は、比較部２５から一致信号を入力すると、コンペア許可レジスタ２４に許可情報が記憶されているか否かを確認する。そして、コンペア許可レジスタ２４に許可情報が記憶されている場合には、制御信号を出力ポート４０ａに出力する。一方、比較部２５から一致信号を入力しても、コンペア許可レジスタ２４に不許可情報が記憶されている場合には、制御信号の出力は行わない。また、出力部２６は制御信号を出力すると、制御信号を出力したことを制御部２２へと通知するために、コンペアマッチ割り込み信号を制御部２２へ出力する。
この構成によれば、制御部２２は、出力タイミングがタイマ２１の１周期以内にない場合にはコンペア許可レジスタ２４に不許可情報を記憶させるため、出力部２６は、比較部２５から一致信号を入力しても制御信号を出力しない。その結果、制御信号の出力タイミングがタイマ２１の１周期以上先である場合であっても、所望の出力タイミングで制御信号を出力することが可能となる。
【００１８】
次に、制御部２２のハードウェア構成の一例について説明する。図５は、制御部２２のハードウェア構成の一例を示す図である。
制御部２２は、信号の入出力を行う入出力部２２４と、ＥＣＵによる制御処理を実現するためのプログラムや、制御信号の出力タイミングがタイマ２１の１周期以内であるかを判定するプログラム（詳細は後述）などが格納されたＲＯＭ２２３と、ＲＯＭ２２３に格納されたプログラムを読み込んで実行する中央処理装置（ＣＰＵ）２２１と、プログラムを実行する際に使用される一時的なデータを保存するＲＡＭ２２２とから構成される。
また、ＲＯＭ２２３に格納されたプログラムのＣＰＵ２２１による演算によって、図６に示す判定処理２２５ａ、設定処理２２６ａおよび図１２に示す判定処理２２５ｂ、設定処理２２６ｂが構成される。
【００１９】
図６は、上述したＣＰＵ２２１などのハードウェアとＲＯＭ２２３に格納されたソフトウェアとの協働によって実現される制御部２２の機能ブロック図の一例である。
制御部２２は、判定処理２２５ａと、設定処理２２６ａとを実行する。
判定処理２２５ａは、タイマ２１と設定処理２２６ａと接続される。判定処理２２５ａは、タイマ２１が計時した時刻と、制御信号の出力タイミングを比較し、制御信号の出力タイミングがタイマ２１の１周期以内であるか否かを判定する。判定処理は、制御部２２が、制御信号の出力タイミングを決定した場合と、タイマ２１がオーバーフローし、オーバーフロー信号が判定処理２２５ａに入力された場合に実行される。判定処理２２５ａは、判定の結果を設定処理２２６ａへと出力する。
次に、設定処理２２６ａは、判定処理２２５ａの判定結果に基づいてコンペア許可レジスタ２４に制御信号の出力を許可するか否かの情報を記憶させる。判定処理２２５ａが制御信号の出力タイミングがタイマ２１の１周期以内であると判定した場合には、設定処理２２６ａは、コンペア許可レジスタ２４に制御信号の出力を許可する許可情報を記憶させる。一方、判定処理２２５ａが制御信号の出力タイミングがタイマ２１の１周期以内でないと判定した場合には、設定処理２２６ａは、コンペア許可レジスタ２４に制御信号の出力を許可しない不許可情報を記憶させる。
【００２０】
次に、制御装置２０ａが指定時刻に制御信号を出力ポート４０ａに出力するために、制御部２２が実行する処理について図７から図９に示されるフローチャートおよび図１０に示されるタイムチャートを参照しながら説明する。図７は、制御部２２に入力された各種入力信号から出力ポート４０ａに出力される制御信号の出力タイミングが算出された場合に、制御部２２が実行する処理の一例を示したフローチャートである。
制御部２２は、回転角センサ１１等から入力される入力信号からインジェクタ１４等を制御する制御信号を出力するタイミングを算出すると、コンペアレジスタに出力タイミングを書き込む（ステップＳ１１）。次に、制御部２２は、制御信号の出力タイミングが、タイマ２１の１周期以内であるかどうかを判定する（ステップＳ１２）。制御信号の出力タイミングがタイマ２１の１周期以内である場合（ステップＳ１２／ＹＥＳ）、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させる（ステップＳ１３）。制御信号の出力タイミングがタイマ２１の１周期以内ではない場合（ステップＳ１２／ＮＯ）、コンペア許可レジスタ２４に不許可情報を記憶させる（ステップＳ１４）。
【００２１】
本フローチャートで行う処理による出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３の変化について、図１０のタイムチャートを用いて説明する。図１０は、出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３と、タイマ２１との関係を表したタイムチャートである。図１０において、各実線は、上から出力ポート４０ａの値、コンペア許可レジスタ２４に記憶されている許可情報または不許可情報、タイマ２１が計時している時刻を示している。また、破線は、コンペアレジスタ２３に設定される値を示している。
制御部２２は、ａの時刻に制御信号を出力するタイミングを算出したとする。また、その出力タイミングは図中Ａで示される時刻であるとする。制御部２２は、コンペアレジスタ２３に出力タイミングＡを書き込む。次に、制御部２２は、制御信号の出力タイミングが、タイマの１周期以内であるか否かを判定する。図１０において、制御信号の出力タイミングＡは、ａの時刻からタイマ２１の１周期以上先であるから、制御部２２は、コンペア許可レジスタ２４に不許可情報を記憶させる。ｂの時刻に、コンペアレジスタ２３に書き込まれた制御信号の出力タイミングと、タイマ２１の計時する時刻は一致するため、比較部２５は一致信号を出力部２６に出力する。しかし、コンペア許可レジスタ２４は不許可情報であるため、出力部２６は制御信号を出力せず、出力ポート４０ａの出力はＬｏのままである。
【００２２】
次に、タイマ２１が所定時間を計時しオーバーフローした場合に、制御部２２が実行する処理について説明する。図８は、タイマ２１が所定時間を計時しオーバーフローした場合に、制御部２２が実行する処理の一例を示したフローチャートである。
タイマ２１は、タイマ２１が計時できる上限の時刻を計時するとオーバーフローし、リセットされる。その際、オーバーフロー信号を制御部２２へ出力する。制御部２２は、タイマ２１からオーバーフロー信号を入力すると（ステップＳ２１／ＹＥＳ）、制御信号の出力タイミングが、タイマ２１の１周期以内であるかどうかを判定する（ステップＳ２２）。制御信号の出力タイミングがタイマ２１の１周期以内である場合（ステップＳ２２／ＹＥＳ）、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させる（ステップＳ２３）。制御信号の出力タイミングがタイマ２１の１周期以内ではない場合（ステップＳ２２／ＮＯ）、制御部２２は、コンペア許可レジスタ２４に不許可情報を記憶させる（ステップＳ２４）。
【００２３】
本フローチャートで行う処理による出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３の変化について、再度、図１０のタイムチャートを用いて説明する。図１０において、タイマ２１はｃの時刻にタイマ２１が計時できる時刻の上限を計時して、オーバーフローする。タイマ２１は、オーバーフローするとオーバーフロー信号を制御部２２に出力するとともに、リセットされ、初期値から再び計時を開始する。制御部２２は、オーバーフロー信号を入力すると、制御信号の出力タイミングが、タイマの１周期以内であるか否かを判定する。ｃの時刻では、制御信号の出力タイミングはタイマ２１の１周期以上先であるから、コンペア許可レジスタ２４に不許可情報を記憶させる。ｄの時刻に、コンペアレジスタ２３に書き込まれた制御信号の出力タイミングとタイマ２１の計時する時刻とが一致するため、比較部２５は一致信号を出力部２６に出力する。しかし、コンペア許可レジスタ２４は不許可情報を記憶しているため、出力部２６は制御信号を出力せず、出力ポート４０ａの出力はＬｏのままである。
タイマ２１は、ｅの時刻においてもオーバーフローするため、制御部２２は、ｅの時刻に再び判定処理を実行する。ｅの時刻において、制御信号の出力タイミングはタイマ２１の１周期以内にあるため、制御部２２はコンペア許可レジスタ２４に許可情報を記憶させる。ｆの時刻に、コンペアレジスタ２３に書き込まれた制御信号の出力タイミングとタイマ２１の計時する時刻とが一致するため、比較部２５は一致信号を出力部２６に出力する。ｆの時刻ではコンペア許可レジスタ２４には許可情報が記憶されているため、出力部２６は、ｆの時刻すなわち制御信号の出力タイミングＡに制御信号を出力する。これにより、所望の出力タイミングで制御信号を出力できる。また、出力部２６は、コンペアマッチ割り込み信号を制御部２２へ出力する。
【００２４】
次に、制御部２２が、出力部２６が出力したコンペアマッチ割り込み信号を入力した場合に、制御部２２が実行する処理について説明する。図９は、制御部２２がコンペアマッチ割り込み信号を入力した場合に実行する処理の一例を示したフローチャートである。
制御部２２は、コンペアマッチ割り込み信号を入力すると（ステップＳ３１／ＹＥＳ）、コンペア許可レジスタ２４に信号出力を許可しない不許可情報を記憶させる（ステップＳ３２）。出力タイミングＡの時刻以後にコンペアレジスタ２３の値とタイマ２１のカウント値が一致しても、出力部２６が制御信号を出力してしまわないようにするためである。
再度、図１０を用いて上述の処理について説明すると、ｆの時刻において、出力部２６は制御信号を出力する。ここで、コンペア許可レジスタ２４に許可情報が記憶されたままであると、出力部２６はｇの時刻にも制御信号を出力してしまうため、ｆの時刻にて制御部２２はコンペア許可レジスタ２４に不許可情報を記憶させる。
【００２５】
本実施例によれば、制御部２２は、出力タイミングがタイマ２１の１周期以内にない場合にはコンペア許可レジスタ２４に不許可情報を記憶させることにより、出力部２６は、比較部２５から一致信号を入力しても制御信号を出力しない。その結果、制御信号の出力タイミングがタイマ２１の１周期以上先である場合にも、所望の出力タイミングで制御信号を出力することが可能となる。また、制御信号の出力後は、コンペア許可レジスタ２４に不許可情報を記憶させるので、出力タイミング以外のタイミングで制御信号が出力されることもない。
【実施例２】
【００２６】
実施例１では、制御部２２は、オーバーフロー信号の入力をトリガとして判定処理および設定処理を実行している。実施例２では、コンペアレジスタ２３からの一致信号をトリガとしてタイマ２１の半周期ごとに信号出力の許可を判定し、制御信号を出力する。
【００２７】
実施例２のシステム構成およびハードウェア構成は、実施例１とほぼ同一であるため、実施例１と異なる点に絞って説明を行う。
図１１は、実施例２に使用する制御装置２０ｂのシステム構成の一例を示した図である。実施例１と異なる点は、比較部２５と制御部２２とが接続されている点である。比較部２５は、タイマ２１の計時する時刻とコンペアレジスタ２３に書き込まれた出力タイミングとが一致する場合に、一致信号を出力部２６に出力すると共に制御部２２に対しても出力する。制御部２２は、この一致信号を受けて判定処理および設定処理を行う。
また、図１２は、実施例２における制御部２２の機能ブロック図の一例である。判定処理２２５ｂは、タイマ２１が計時した時刻と、制御信号の出力タイミングを比較し、制御信号の出力タイミングがタイマ２１の半周期以内であるか否かを判定する。制御部２２は、制御部２２が制御信号の出力タイミングを決定した場合および比較部２５から一致信号が入力された場合に、判定処理２２５ｂを実行する。判定処理２２５ｂは、判定の結果を設定処理２２６ｂへと出力する。
次に、判定処理２２５ｂとコンペア許可レジスタ２４とに接続された設定処理２２６ｂは、判定処理２２５ｂの判定結果に基づいてコンペア許可レジスタ２４に制御信号の出力を許可するか否かの情報を記憶させる。また、タイマ２１の半周期ごとに制御部２２が判定処理を実行するために、設定処理２２６ｂは、タイマ２１の半周期先の時刻をコンペアレジスタ２３に書き込む。判定処理２２５ｂが制御信号の出力タイミングがタイマ２１の半周期以内であると判定した場合には、設定処理２２６ｂは、コンペア許可レジスタ２４に制御信号の出力を許可する許可情報を記憶させるとともに、コンペアレジスタ２３にタイマ２１の半周期を経過した場合の時刻を書き込む。一方、判定処理２２５ｂが制御信号の出力タイミングがタイマ２１の１周期以内でないと判定した場合には、設定処理２２６ｂは、コンペア許可レジスタ２４に制御信号の出力を許可しない不許可情報を記憶させるとともに、タイマ２１の半周期先の時刻をコンペアレジスタ２３に書き込む。
【００２８】
次に、制御部２２が行う処理について図１３と図１４のフローチャートと、図１５のタイムチャートを用いてさらに詳細に説明する。
図１３は、制御部２２に入力された各種入力信号から出力ポート４０ａに出力される制御信号の出力タイミングが算出された場合に、制御部２２が実行する処理の一例を示したフローチャートである。
制御部２２は、回転角センサ１１等から入力される入力信号からインジェクタ１４等を制御する制御信号を出力するタイミングを算出すると、コンペアレジスタに出力タイミングを書き込む（ステップＳ４１）。次に、制御部２２は、制御信号の出力タイミングが、タイマ２１の半周期以内であるかどうかを判定する（ステップＳ４２）。制御信号の出力タイミングがタイマ２１の半周期以内である場合（ステップＳ４２／ＹＥＳ）、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させる（ステップＳ４３）。制御信号の出力タイミングがタイマ２１の１周期以内ではない場合（ステップＳ４２／ＮＯ）、コンペア許可レジスタ２４に不許可情報を記憶させる（ステップＳ４４）。
【００２９】
本フローチャートで行う処理による出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３の変化について、図１５のタイムチャートを用いて説明する。図１５は、出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３と、タイマ２１との関係を表したタイムチャートである。図１５において、各実線は、上から出力ポート４０ａの値、コンペア許可レジスタ２４に記憶されている許可情報または不許可情報、タイマ２１が計時している時刻を示している。また、破線は、コンペアレジスタ２３に設定される値を示している。
制御部２２は、ａの時刻に制御信号を出力するタイミングを算出したとする。また、その出力タイミングは図中Ａで示される時刻であるとする。制御部２２は、コンペアレジスタ２３に出力タイミングを書き込む。次に、制御部２２は、制御信号の出力タイミングが、タイマの半周期以内であるか否かを判定する。図１５において、制御信号の出力タイミングＡはａの時刻からタイマ２１の半周期以上先であるから、制御部２２は、コンペア許可レジスタ２４に不許可情報を記憶させる。ｂの時刻に、コンペアレジスタ２３に書き込まれた制御信号の出力タイミングと、タイマ２１の計時する時刻は一致するため、比較部２５は一致信号を出力部２６に出力する。しかし、コンペア許可レジスタ２４は不許可情報であるため、比較部２５は制御信号を出力せず、出力ポート４０ａの出力はＬｏのままである。
【００３０】
ここで、比較部２５は、一致信号を出力部２６だけでなく、制御部２２に対しても出力する。そこで、次に、タイマ２１が比較部２５から一致信号を入力した場合に、制御部２２が実行する処理について説明する。図１４は、制御部２２が比較部２５から一致信号を入力した場合に、制御部２２が実行する処理の一例を示したフローチャートである。
比較部２５は、タイマ２１が計時する時刻と、コンペアレジスタ２３に書き込まれた出力タイミングが一致すると、一致信号を制御部２２へ出力する。制御部２２は、比較部２５から一致信号を入力すると（ステップＳ５１／ＹＥＳ）、制御信号の出力タイミングが、タイマ２１の半周期以内であるかどうかを判定する（ステップＳ５２）。制御信号の出力タイミングがタイマ２１の半周期以内である場合（ステップＳ５２／ＹＥＳ）、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させるとともに、コンペアレジスタ２３の出力タイミングをタイマ２１の半周期先の時刻に書き換える（ステップＳ２３）。制御信号の出力タイミングがタイマ２１の半周期以内ではない場合（ステップＳ２２／ＮＯ）、コンペア許可レジスタ２４に不許可情報を記憶させるとともに、コンペアレジスタ２３の出力タイミングをタイマ２１の半周期先の時刻に書き換える（ステップＳ２４）。
【００３１】
本フローチャートで行う処理による出力ポート４０ａと、コンペア許可レジスタ２４と、コンペアレジスタ２３の変化について、再度、図１５のタイムチャートを用いて説明する。図１５において、比較部２５は、ｂの時刻において一致信号を制御部２２に出力する。制御部２２は、比較部２５から一致信号を入力すると、制御信号の出力タイミングが、タイマ２１の半周期以内であるか否かを判定する。ｂの時刻では、制御信号の出力タイミングは、タイマ２１の半周期以上先であるから、コンペア許可レジスタ２４に不許可情報を記憶させるとともに、コンペアレジスタ２３の値を、タイマ２１の半周期先の時刻に相当するｃの時刻に書き換える。ｃの時刻に、コンペアレジスタ２３に書き込まれた時刻とタイマ２１の計時する時刻とは一致するため、比較部２５は一致信号を出力部２６に出力する。しかし、コンペア許可レジスタ２４は不許可情報を記憶しているため、出力部２６は制御信号を出力せず出力ポート４０ａの出力はＬｏのままである。また、比較部２５は一致信号を制御部２２にも出力する。制御部２２は、一致信号を受けて、上述の処理を実行するが、ｃの時刻においても制御信号の出力タイミングはタイマ２１の半周期よりも先であるので、コンペア許可レジスタ２４には不許可情報を記憶させ、今回は、コンペアレジスタ２３に出力タイミングとしてタイマ２１の半周期先の時刻に相当するｄの時刻を書き込む。
制御部２２は、タイマ２１の半周期ごとに上記の処理を繰り返す。そして、ｅの時刻において、制御信号の出力タイミングＡがタイマ２１の半周期以内となるため、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させる。また、出力タイミングＡはｅの時刻からタイマ２１の半周期先の時刻となっているため、コンペアレジスタ２３の出力タイミングをタイマ２１の半周期先の時刻に書き換える。
ｆの時刻にコンペアレジスタ２３に書き込まれた制御信号の出力タイミングとタイマ２１の計時する時刻とが一致するため、出力部２６は一致信号を出力部２６に出力する。ｆの時刻ではコンペア許可レジスタ２４には許可情報が記憶されているから、出力部２６は、ｆの時刻すなわち制御信号の出力タイミングＡに制御信号を出力する。また、出力部２６は、コンペアマッチ割り込み信号を制御部２２へ出力する。コンペアマッチ割り込み信号を入力した制御部２２が実行する処理は、実施例１と同様である。
【００３２】
実施例２によれば、制御部２２がタイマ２１の半周期ごとに判定処理および設定処理を実行することにより、タイマ２１の１周期以上先の時刻を指定しても、制御信号を所望の出力タイミングで制御信号を出力できる。
なお、実施例２では、制御部２２がタイマ２１の半周期ごとに判定処理および設定処理を実行していたが、タイマ２１の３分の１周期あるいは４分の１周期ごとに判定処理および設定処理を実行しても良い。
【００３３】
以上、本発明の好ましい実施の形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
例えば、コンペア許可レジスタ２４の代わりに制御信号の出力レベルを記憶する出力レベルレジスタを用いて制御信号の出力レベルを記憶し、出力部２６は比較部２５から一致信号を受けた場合に、出力レベルレジスタに記憶された出力レベルで制御信号を出力するようにしてもよい。
また、図１６に示されるように点火装置の制御にあたり、点火プラグ１５に接続された出力ポート４０ｂが、ポート出力を行う時間間隔を設定するトリガとして、コンペアマッチ割り込み信号を利用することも可能である。図１６は、回転角センサ１１から入力される回転角信号と、タイマ２１の計時する時刻と、コンペア許可レジスタ２４の状態と、出力ポート４０ｂとの関係を表したタイムチャートの一例である。図１６において、回転角センサ１１から入力される回転角信号の割り込み信号であるハードウェア割込２が入力されたＡの時刻に、制御信号の出力タイミングＢが決定されたとする。Ａの時刻において、Ｂの時刻はタイマ２１の１周期以内であるから、制御部２２は、コンペア許可レジスタ２４に許可情報を記憶させる。Ｂの時刻にて、タイマ２１の計時する時刻とコンペアレジスタ２１に書き込まれた制御信号の出力タイミングは一致し、かつコンペア許可レジスタ２４は許可情報であるから、出力部２６は制御信号を出力する。この際、出力部２６はコンペアマッチ割り込み信号を制御部２２に出力するので、制御部２２は、コンペア許可レジスタ２４に不許可情報を記憶させる。出力ポート４０ｂのポート出力は、出力部２６からの制御信号の入力によってＨｉになるが、一定の時間が経過した場合にＬｏ出力を行うために、コンペアマッチ割り込み信号をトリガとして、出力ポート４０ｂのポート出力をＬｏにするためのタイマセットを行うことができる。その結果、Ｂの時刻から一定時間経過後のＣの時刻に、出力ポート４０ｂは、ポート出力をＨｉからＬｏへと切替えることができる。
さらに、本実施例では本発明に係る制御装置をエンジンＥＣＵへ適用したが、外部装置の動作タイミングを制御する制御信号を出力する必要のあるシステム全般に対して本発明を適用することができる。
【００３４】
制御部２２が実行するプログラムは、磁気ディスクや光ディスク、半導体メモリ、その他の記録媒体に格納して配布したり、ネットワークを介して配信したりすることにより提供できる。
更に、制御部２２がＲＯＭ２２３に記憶されたソフトウェアプログラムを読み出して、ＣＰＵ２２１により実行して実現するソフトウェア処理の一部又は全部をハードウェアにて実現しても良い。また、制御装置２０ａおよび２０ｂを構成するハードウェアの一部又は全部をソフトウェアにて実現しても良い。
【図面の簡単な説明】
【００３５】
【図１】コンペアレジスタの設定値と信号出力のタイミングの一例を表すタイムチャートである。
【図２】タイマの１カウントの間隔と周期の関係を模式的に表した図である。
【図３】本発明に係る制御装置が適用されるエンジン制御ＥＣＵのシステム構成の一例を表す図である。
【図４】実施例１に係る制御装置のシステム構成の一例を表す図である。
【図５】制御部のハードウェア構成の一例を示す図である。
【図６】制御部が有する機能の一例を示す機能ブロック図である。
【図７】制御部が制御信号の出力タイミングを算出した場合に行う処理の一例を示すフローチャートである。
【図８】制御部がオーバーフロー信号を入力した場合に行う処理の一例を示すフローチャートである。
【図９】制御部がコンペアマッチ割り込み信号を入力した場合に行う処理の一例を示すフローチャートである。
【図１０】実施例１のタイムチャートの一例である。
【図１１】実施例２に係る制御装置のシステム構成の一例を表す図である。
【図１２】制御部が有する機能の一例を示す機能ブロック図である。
【図１３】制御部が制御信号の出力タイミングを算出した場合に行う処理の一例を示すフローチャートである。
【図１４】制御部が一致信号を入力した場合に行う処理の一例を示すフローチャートである。
【図１５】実施例２のタイムチャートの一例である。
【図１６】本発明を点火装置に適用した場合のタイムチャートの一例である。
【符号の説明】
【００３６】
１０…エンジンＥＣＵ
１１…回転角センサ
１２…車速センサ
１３…スタータ
１４…インジェクタ
１５…点火プラグ
２０ａ、２０ｂ…制御装置
２１…タイマ
２２…制御部
２３…コンペアレジスタ
２４…コンペア許可レジスタ
２５…比較部
２６…出力部
３０…クロック
４０ａ、４０ｂ…出力ポート
２２１…ＣＰＵ
２２２…ＲＡＭ
２２３…ＲＯＭ
２２４…入出力部
２２５ａ、２２５ｂ…判定処理
２２６ａ、２２６ｂ…設定処理
【図１】
2010116806.tif 000003
【図２】
2010116806.tif 000004
【図３】
2010116806.tif 000005
【図４】
2010116806.tif 000006
【図５】
2010116806.tif 000007
【図６】
2010116806.tif 000008
【図７】
2010116806.tif 000009
【図８】
2010116806.tif 000010
【図９】
2010116806.tif 000011
【図１０】
2010116806.tif 000012
【図１１】
2010116806.tif 000013
【図１２】
2010116806.tif 000014
【図１３】
2010116806.tif 000015
【図１４】
2010116806.tif 000016
【図１５】
2010116806.tif 000017
【図１６】
2010116806.tif 000018