(57)【要約】【課題】動作モードが遷移するマイコンにおいて、マイコンの信頼性を向上させる。【解決手段】動作モードが通常の動作状態である通常モードの時に、動作モードを通常モードに維持するためのフレーム要因を監視して、フレーム要因が検出されると動作モードを通常モードに維持し、動作モードが通常モードよりも消費電力の小さいスリープモードの時に、通常モードに移行するためのエッジ要因を監視して、エッジ要因が検出されると通常モードに移行するマイコンにおいて、通常モードのときにフレーム要因及びエッジ要因の両方を監視する期間（スリープ準備状態）を設け、エッジ要因が検出できた場合も、当該マイコンの動作モードを通常モードに維持する。【選択図】図６
2008222051.tif 000002
【特許請求の範囲】
【請求項１】
動作モードが第１のモードのときに、動作モードを第１のモードに維持するための維持要因を監視して、その維持要因が発生していると判定すると動作モードを第１のモードに維持し、維持要因が発生していると判定しなくなると動作モードを第１のモードから他のモードに移行させ、動作モードが第２のモードのときに、前記第１のモードに移行するための移行要因を監視して、その移行要因が発生していると判定すると動作モードを第１のモードに移行させるマイクロコンピュータにおいて、
動作モードが第１のモードのときに前記維持要因と前記移行要因とを監視して、移行要因が発生していると判定した場合も、動作モードを第１のモードに維持するようになっていることを特徴とするマイクロコンピュータ。
【請求項２】
請求項１に記載のマイクロコンピュータにおいて、
前記第１のモードは、通常の動作状態である通常モードであり、前記第２のモードは、前記通常モードよりも消費電力の少ないスリープモードであることを特徴とするマイクロコンピュータ。
【請求項３】
請求項１又は請求項２に記載のマイクロコンピュータにおいて、
当該マイクロコンピュータは通信線を介して他の電子装置と通信可能に接続されると共に、その通信線を介して通信フレーム及びパルスエッジが受信されるようになっており、
前記通信フレームを前記維持要因として監視し、前記パルスエッジを前記移行要因として監視するようになっていることを特徴とするマイクロコンピュータ。
【請求項４】
動作モードが第１のモードのときに、動作モードを第１のモードに維持するための維持要因を監視して、その維持要因が発生していると判定すると動作モードを第１のモードに維持し、維持要因が発生していると判定しなくなると動作モードを第１のモードから他のモードに移行させ、動作モードが第２のモードのときに、前記第１のモードに移行するための移行要因を監視して、その移行要因が発生していると判定すると動作モードを第１のモードに移行させるマイクロコンピュータが実行するプログラムであって、
前記マイクロコンピュータに、動作モードが第１のモードのときに前記維持要因と前記移行要因とを監視し、移行要因が発生していると判定した場合も、動作モードを第１のモードに維持するように機能させるためのプログラム。
【請求項５】
請求項４に記載のプログラムにおいて、
前記第１のモードは、通常の動作状態である通常モードであり、前記第２のモードは、前記通常モードよりも消費電力の少ないスリープモードであることを特徴とするプログラム。
【請求項６】
請求項４又は請求項５に記載のプログラムにおいて、
前記マイクロコンピュータは通信線を介して他の電子装置と通信可能に接続されると共に、その通信線を介して通信フレーム及びパルスエッジが受信されるようになっており、
当該プログラムは、そのマイクロコンピュータに、前記通信フレームを前記維持要因として監視させ、前記パルスエッジを前記移行要因として監視させるように構成されていることを特徴とするプログラム。
【請求項７】
車両を制御するための電子制御装置であって、
請求項１ないし請求項３の何れか１項に記載のマイクロコンピュータを備えていることを特徴とする電子制御装置。
【請求項８】
複数の電子装置が通信可能に接続された通信システムであって、
前記電子装置が、請求項７に記載の電子制御装置であることを特徴とする通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作モードが遷移するマイクロコンピュータに関する。
【背景技術】
【０００２】
従来、例えば自動車用電子制御装置（以下、ＥＣＵと記載する）では、マイクロコンピュータ（以下、マイコンとも記載する）は、通常の動作状態である通常モードと低消費電力状態であるスリープモードとの何れかで動作するようになっている（例えば、特許文献１参照）。
【０００３】
より具体的に、この種のマイコンは、通常モードのときに例えば通信線を介して外部の電子装置から送信される通信フレームを監視しており、通信フレームを受信している限りは、通常モードで動作する。一方、マイコンは、通信フレームを所定期間受信できない場合には、通常モードからスリープモードに移行する。
【０００４】
マイコンが通信フレームをどのように監視しているかについて説明する。ＥＣＵにおいて、そのＥＣＵが備える通信トランシーバを介して通信フレームが受信されると、その通信フレームがマイコンの所定の受信バッファに格納されると共に、マイコンにおいて割り込みが発生する。そして、マイコンのＣＰＵはその割り込みが発生すると、その受信バッファを参照して、通信フレームの受信を確認する。
【０００５】
次に、マイコンがスリープモードに移行する場合、通信トランシーバもスリープモードに移行する。通信トランシーバは、スリープモードでは電圧の変化を表すエッジの入力のみを受けつける。このエッジは、例えば通信の開始時や、所定のスイッチが操作された際などに生じ、通信線上を流れるものである。そしてマイコンは、通信トランシーバを介して入力されるエッジを検出すると、スリープモードから通常モードに復帰するようになっている。
【０００６】
マイコンがエッジをどのように監視しているかについて説明する。マイコンでは、通信トランシーバを介してエッジが入力されると、エッジが発生したことを示す履歴であるパルス信号情報が所定のレジスタ（以下、エッジ監視用レジスタと記載する）に格納される。そしてマイコンは、そのエッジ監視用レジスタを監視することで、エッジの入力の有無を判断する。
【０００７】
このようにして、従来、ＥＣＵのマイコンは、通常モードでは通信フレームを監視して通信フレームを検出できれば通常モードを維持し、スリープモードではエッジを監視してエッジを検出できれば通常モードに復帰するようになっている。
【特許文献１】特開２００６−１５１０００号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、上記のような従来例において、例えばマイコンが通常モードで動作しているときに、そのマイコンが何らかの原因でたまたま通信フレームを検出できなかった（受信できなかった）、という場合には、そのマイコンが誤ってスリープモードに移行してしまう可能性がある。例えば、ＥＣＵが通信フレームを受信したがその通信フレームがマイコンの受信バッファに格納されなかったという場合や、受信バッファには格納されたが、マイコンのＣＰＵが受信バッファ内を確認しなかったというような場合が考えられる。
【０００９】
そして、マイコンが誤ってスリープモードに移行すると、電子制御装置、ひいてはシステム全体が誤動作してしまうおそれもある。
本発明は、上記問題を解決するためになされたものであり、その目的は、動作モードが遷移するようになっているマイコンの動作の信頼性を向上させることである。
【課題を解決するための手段】
【００１０】
上記目的を達成するためになされた請求項１に記載の発明は、動作モードが第１のモードのときに、動作モードを第１のモードに維持するための維持要因を監視して、その維持要因が発生していると判定すると動作モードを第１のモードに維持し、維持要因が発生していると判定しなくなると動作モードを第１のモードから他のモードに移行させ、動作モードが第２のモードのときに、第１のモードに移行するための移行要因を監視して、その移行要因が発生していると判定すると動作モードを第１のモードに移行させるマイクロコンピュータにおいて、動作モードが第１のモードのときに維持要因と移行要因とを監視して、移行要因が発生していると判定した場合も、動作モードを第１のモードに維持するようになっているマイクロコンピュータである。
【００１１】
このようなマイクロコンピュータは、動作モードが第１のモードのときに、維持要因と移行要因との少なくとも何れかを検出すれば、動作モードを第１のモードに維持する。ここで、移行要因は、動作モードを第１のモードに移行させるためのものであるから、第１のモードのときに、移行要因によって動作モードを第１のモードに維持したとしても、何ら不都合は生じない。
【００１２】
そして、このマイクロコンピュータによれば、動作モードが第１のモードから他のモードに誤って移行する、という不都合が生じる確率を抑えることができる。例えば、マイクロコンピュータが何らかの原因で維持要因を検出できなかった、という場合でも、移行要因を検出できればマイクロコンピュータの動作モードが第１のモードに維持される。このため、マイクロコンピュータの信頼性の向上につながる。
【００１３】
次に、マイクロコンピュータの動作モードには、具体的に、請求項２に記載のような動作モードがある。
請求項２のマイクロコンピュータは、第１のモードは、通常の動作状態である通常モードであり、第２のモードは、通常モードよりも消費電力の少ないスリープモードであることを特徴とするマイクロコンピュータである。
【００１４】
つまり、請求項２のマイクロコンピュータは、通常モードのときに、通常モードを維持するための維持要因、及びスリープモードから通常モードに移行するための移行要因の両方を監視して、その維持要因及び移行要因の少なくとも何れかを検出できた場合、動作モードを通常モードに維持するようになっている。このようなマイクロコンピュータは、実際上、使用しやすいと言える。
【００１５】
また、請求項１，２のようなマイクロコンピュータでは、具体的に、請求項３の如く、維持要因及び移行要因を監視するように構成することができる。
請求項３のマイクロコンピュータは、通信線を介して他の電子装置と通信可能に接続されると共に、その通信線を介して通信フレーム及びパルスエッジが受信されるようになっている。そして、そのマイクロコンピュータは、通信フレームを維持要因として監視し、パルスエッジを移行要因として監視するようになっている。
【００１６】
通信フレームには、マイクロコンピュータが受信すべきデータが含まれている。また、パルスエッジとは、例えば通信の開始時等に生じるものであり、電圧の変化を表す信号である。また、例えば車両における通信においては、車両の所定のスイッチが操作された際にパルスエッジが通信線上を流れる、という場合もある。
【００１７】
つまり、請求項３のマイクロコンピュータは、第１のモード（通常モード）のときに、通信フレーム及びパルスエッジの少なくとも何れかを検出すれば、動作モードを第１のモード（通常モード）に維持する。
【００１８】
実際のマイクロコンピュータにおいては、通信フレームが受信されている限りは、そのマイクロコンピュータは第１のモード（通常モード）で動作し、例えば何らかの原因で通信フレームが受信できなかった場合でも、パルスエッジを検出できれば、動作モードを第１のモード（通常モード）に維持する、という構成が一般的であろう。
【００１９】
次に、請求項４の発明は、動作モードが第１のモードのときに、動作モードを第１のモードに維持するための維持要因を監視して、その維持要因が発生していると判定すると動作モードを第１のモードに維持し、維持要因が発生していると判定しなくなると動作モードを第１のモードから他のモードに移行させ、動作モードが第２のモードのときに、第１のモードに移行するための移行要因を監視して、その移行要因が発生していると判定すると動作モードを第１のモードに移行させるマイクロコンピュータが実行するプログラムであって、マイクロコンピュータに、動作モードが第１のモードのときに維持要因と移行要因とを監視して、移行要因が発生していると判定した場合も、動作モードを第１のモードに維持するように機能させるためのプログラムである。
【００２０】
このようなプログラムをマイクロコンピュータが実行すれば、請求項１について述べた効果と同じ効果を得ることができる。
また、このようなプログラムでは、具体的に、請求項５，６のように構成することができる。
【００２１】
請求項５のプログラムは、第１のモードは、通常の動作状態である通常モードであり、第２のモードは、通常モードよりも消費電力の少ないスリープモードであることを特徴とするプログラムである。つまり、請求項２と同趣旨である。
【００２２】
次に、請求項６のプログラムは、マイクロコンピュータは通信線を介して他の電子装置と通信可能に接続されると共に、その通信線を介して通信フレーム及びパルスエッジが受信されるようになっており、当該マイクロコンピュータは、そのマイクロコンピュータに、通信フレームを維持要因として監視させ、パルスエッジを移行要因として監視させるように構成されていることを特徴としている。つまり、請求項３と同趣旨である。
【００２３】
次に、請求項７の発明は、車両を制御するための電子制御装置であって、請求項１ないし請求項３の何れか１項に記載のマイクロコンピュータを備えていることを特徴とする電子制御装置である。
【００２４】
また次に、請求項８の発明は、複数の電子装置が通信可能に接続された通信システムであって、電子装置が、請求項７に記載の電子制御装置であることを特徴とする通信システムである。
【００２５】
請求項１〜３のマイクロコンピュータにおいては、請求項１の部分で述べたように、動作モードが第１のモードから他のモードに誤って移行する、という不都合が生じる確率を抑えることができるため、そのマイクロコンピュータを用いた請求項７の電子制御装置の信頼性は向上する。また、請求項８の通信システムにおいても同様に、通信システムの信頼性が向上する。
【発明を実施するための最良の形態】
【００２６】
以下に、本発明の実施形態を図面に基づき説明する。
図１は、本発明が適用された車両用ネットワークシステム１の構成図である。
図１の車両用ネットワークシステム１は、複数の電子制御装置（以下、ＥＣＵと記載する）２が、ＣＡＮバス（ＣＡＮ：Ｃｏｎｔｒｏｌｌｅｒ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を介して通信可能に接続されている。
【００２７】
ＣＡＮバスは、ＣＡＮ−ＨラインとＣＡＮ−Ｌラインとからなる２線式通信ラインである。この２線式通信ラインは、通信線３Ｈと通信線３Ｌとからなる幹線３と、通信線３Ｈ，３Ｌからそれぞれ分岐する支線３ｈ，３ｌとから構成される。そして、通信線３Ｈ及び支線３ｈがＣＡＮ−Ｈラインであり、通信線３Ｌ及び支線３ｌがＣＡＮ−Ｌラインである。
【００２８】
ＥＣＵ２は、当該ＥＣＵ２の機能を司るマイクロプロセッサを備えている。尚、このマイクロプロセッサは、後述するＣＰＵ１１に相当するものである。また、ＥＣＵ２は、ＣＡＮトランシーバ２０とを備えている。
【００２９】
ＥＣＵ２においては、マイクロプロセッサの機能により、ソフトウェア１０ａ、ＣＡＮドライバ１０ｂなどが動作して所定の処理を実現する。ＣＡＮドライバ１０ｂは、フレームの送受信（送信フレームをＣＡＮトランシーバ２０に渡したり、受信フレームをＣＡＮトランシーバ２０から受け取る）や、どのフレームを優先的に処理するかを決定する調停制御や、通信エラー処理等を実現する。尚、ＣＡＮドライバ１０ｂもソフトウェアの一種である。
【００３０】
ＣＡＮトランシーバ２０は、マイクロプロセッサから与えられる送信フレームをＣＡＮバス上に出力すると共に、ＣＡＮバス上のデータ（受信フレーム）をマイコン１０に入力する。
【００３１】
次に、図２は、ＥＣＵ２のより詳細なハード構成図である。尚、ＥＣＵ２の周辺の構成も示している。
ＥＣＵ２は、図２に示すように、マイクロコンピュータ（以下、マイコンと記載する）１０と、前述のＣＡＮトランシーバ２０と、電源回路３０と、入出力回路４０とを備えている。
【００３２】
電源回路３０は、外部のバッテリ４からのバッテリ電源（例えば１２Ｖ）を降圧して、その降圧した動作電圧（例えば５Ｖ）を、マイコン１０，ＣＡＮトランシーバ２０，及び入出力回路４０に供給する。
【００３３】
入出力回路４０は、外部のセンサ／スイッチ群５からの信号をマイコン１０に入力すると共に、マイコン１０からの信号を外部のアクチュエータ６に出力する。
また、図２には、マイコン１０のハード構成を示しており、マイコン１０は、所定のプログラムに従い動作するＣＰＵ１１（前述のマイクロプロセッサに相当）と、ＣＰＵ１１が実行するプログラムを格納するＲＯＭ１２と、ＣＰＵ１１による演算結果等が記憶されるＲＡＭ１３と、情報を格納するためのレジスタ１４と、ＣＡＮトランシーバ２０からの受信フレームＲＸを格納するための受信バッファ１５と、ＣＡＮトランシーバ２０へ出力する送信フレームＴＸを格納するための送信バッファ１６とを備えている。
【００３４】
レジスタ１４は、マイコン１０にエッジが入力されたことを示す履歴であるパルス信号情報を格納するものである。エッジは、通信の開始時や図示しないスイッチが操作された際などにＣＡＮバス上を流れるものである。そして、ＣＡＮトランシーバ２０を介してマイコン１０にエッジが入力されると、そのマイコン１０のレジスタ１４にパルス信号情報が格納される。
【００３５】
次に、図３は、本実施形態のＥＣＵ２（具体的には、マイコン１０のＣＰＵ１１）が実行する処理を表すフローチャートである。
ところで、以下の説明において、通常モード、スリープモード、ウェイクアップ状態、スリープ準備状態、スリープ状態という用語を用いるが、ここでこれらの関係を説明しておく。まず、通常モード及びスリープモードはマイコン１０の動作モードである。そして、通常モードにおいて、マイコン１０の状態としてウェイクアップ状態とスリープ準備状態との２種類がある。また、スリープモードにおいて、マイコン１０の状態としてスリープ状態がある。尚、スリープモードとスリープ状態とは同義であると考えて構わない。
【００３６】
図３の処理において、スタート時は初期状態であるとする。初期状態とは、例えば、マイコン１０に動作電圧が供給されておらずマイコン１０が動作していない状態、或いはマイコン１０がスリープ状態（スリープモード）である状態を指すものとする。
【００３７】
図３の処理では、まずＳ１１０で、所定の起動条件の下、起動のためのウェイクアップ処理を実行する。例えば、マイコン１０に動作電圧が供給されていない初期状態においては、そのマイコン１０に動作電圧が供給されることで、マイコン１０はウェイクアップ処理を実行して起動し、通常モードで動作するようになる。また、例えばマイコン１０の動作モードがスリープモードである初期状態においては、後述するようにパルスエッジが検出されると、マイコン１０はウェイクアップ処理を実行して通常モードで動作する。
【００３８】
次に、Ｓ１２０に移行し、スリープ要因があるか否かを判定する。スリープ要因とは、マイコン１０がスリープ状態に移行するトリガーとなるものである。具体的には、車両が駐車状態になること、車両のイグニションスイッチがオフされること、所定のスイッチ操作がないこと、通信フレームがないことなどがスリープ要因となる。
【００３９】
Ｓ１２０でスリープ要因がない（例えば所定期間スリープ要因がない）と判定すると（Ｓ１２０：ＮＯ）、Ｓ１１０に戻る。この場合のＳ１１０では、動作モードを通常モードに維持することとなる。
【００４０】
一方、Ｓ１２０でスリープ要因があると判定すると（Ｓ１２０：ＹＥＳ）、Ｓ１３０に移行し、レジスタ１４をクリアする。レジスタ１４に格納されている古い履歴情報を破棄して、改めてエッジ要因の有無を検出するためである。
【００４１】
次にＳ１４０に進み、通信フレーム（以下、フレーム要因とも記載する）或いはパルスエッジ（以下、エッジ要因とも記載する）があるか否かを判定する。以下、具体的に説明する。
【００４２】
まず、フレーム要因の監視について説明する。ＣＡＮトランシーバ２０がＣＡＮバス上の通信フレームを受信し、受信フレームＲＸとしてマイコン１０に入力すると、その受信フレームＲＸが受信バッファ１５に格納されると共にマイコン１０において割り込みが発生する。その割り込みが発生すると、マイコン１０のＣＰＵ１１は受信バッファ１５を参照して、受信フレームＲＸを確認する。このようにして、受信フレームＲＸを受信したか否か（フレーム要因があるか否か）を監視している。
【００４３】
次に、エッジ要因の監視について説明する。ＣＰＵ１１は、レジスタ１４を定期的に参照して、パルス信号情報が格納されているか否かを確認する。つまり、パルスエッジが入力されたか否か（エッジ要因があるか否か）を監視している。
【００４４】
尚、マイコン１０は、Ｓ１２０→ＹＥＳの場合、実行するプログラムをスリープ準備状態時のプログラムに切り換えて、Ｓ１３０及びＳ１４０の処理を実現する。
Ｓ１４０でフレーム要因或いはエッジ要因があると判定すると（Ｓ１４０：ＹＥＳ）、Ｓ１５０に移行し、スリープ復帰処理を実行する。具体的には、マイコン１０の実行プログラムを、ウェイクアップ状態時のプログラムに切り換える。そしてその後、Ｓ１１０に移行する。
【００４５】
一方、Ｓ１４０でフレーム要因或いはエッジ要因がない（例えば、所定期間フレーム要因或いはエッジ要因がない）と判定すると（Ｓ１４０：ＮＯ）、Ｓ１６０に移行し、スリープ処理を実行してスリープ状態に移行する。具体的に、マイコン１０の実行プログラムを、スリープ状態時のプログラムに切り換える。
【００４６】
次にＳ１７０に進み、エッジ要因があるか否かを判定し、エッジ要因があると判定すると（Ｓ１７０：：ＹＥＳ）、１５０に移行して実行プログラムをウェイクアップ状態時のプログラムに切り換える。
【００４７】
一方、Ｓ１７０でエッジ要因がないと判定すると（Ｓ１７０：ＮＯ）、再度Ｓ１７０の処理を実行する。つまり、エッジ要因の監視を続ける。
次に、図４は、マイコン１０の状態遷移図である。以下、図３の処理との対応をとりながら説明する。
【００４８】
まず、初期状態（例えば、マイコン１０が完全に動作を停止した状態、或いはスリープ状態）において、起動条件が成立する（例えば、マイコンに動作電圧が供給される／イグニションスイッチがオンされる、など）と、ウェイクアップ状態（通常モード）に移行する（Ｓ１１０）。ウェイクアップ状態では、フレーム要因のみを監視しており、フレーム要因がある限り（Ｓ１２０：ＮＯ）、ウェイクアップ状態を維持する。
【００４９】
一方、ウェイクアップ状態で、スリープ要因が発生したと判定すると（Ｓ１２０：ＹＥＳ）、スリープ準備状態に移行する（Ｓ１３０、Ｓ１４０）。スリープ準備状態とは、前述のように通常モードの一種であり、フレーム要因及びエッジ要因の両方を監視する状態である。
【００５０】
スリープ準備状態において、フレーム要因又はエッジ要因があると判定すると（Ｓ１４０：ＹＥＳ）、ウェイクアップ状態に移行する（Ｓ１５０、Ｓ１１０）。
一方、スリープ準備状態において、フレーム要因及びエッジ要因があると判定しなくなると（Ｓ１４０：ＮＯ）、スリープ状態（スリープモード）に移行する（Ｓ１６０）。
【００５１】
スリープ状態では、エッジ要因のみを監視しており、エッジ要因があると判定すると（Ｓ１７０：ＹＥＳ）、ウェイクアップ状態に移行する（Ｓ１５０、Ｓ１１０）。
つまり、本実施形態では、フレーム要因のみを監視するウェイクアップ状態からエッジ要因のみを監視するスリープ状態に移行するまでの間に、従来と異なり、一旦、フレーム要因及びエッジ要因を監視するスリープ準備状態に移行するようになっている。言い換えると、通常モードにおいて、フレーム要因及びエッジ要因の両方を監視する期間を設けている。
【００５２】
図５は、本実施形態の作用を表すシーケンスチャートである。尚、図５において、ＣＡＮドライバ１０ｂは、前述のようにソフトウェアの一種である。そして、このＣＡＮドライバ１０ｂは、ＣＡＮトランシーバ２０の動作状態を制御する。具体的に、マイクロプロセッサ（ＣＰＵ１１）がソフトウェアとしてのＣＡＮドライバ１０ｂの機能を実現することで、ＣＡＮトランシーバ２０の動作を制御する。またここで、ソフトウェア１０ａは、マイコン１０の動作状態の制御を実現するものである。
【００５３】
まず、ウェイクアップ状態において、ソフトウェア１０ａは、スリープ要因が発生すると（Ｓ１２０：ＹＥＳ）、スリープ準備処理（スリープ準備状態における処理であり、具体的に、Ｓ１３０及びＳ１４０）を要求するメッセージをＣＡＮドライバ１０ｂに出力する。
【００５４】
ＣＡＮドライバ１０ｂは、スリープ準備処理のメッセージをソフトウェア１０ａから受け取ると、同じくスリープ準備処理のメッセージをマイクロプロセッサに出力する。
マイクロプロセッサは、ＣＡＮドライバ１０ｂからスリープ準備処理のメッセージを受け取ると、スリープ準備処理を実行する（Ｓ１３０、Ｓ１４０）。つまり、マイコン１０がスリープ準備状態に移行する。
【００５５】
マイコン１０がスリープ準備状態に移行すると、ＣＡＮドライバ１０ｂは、ソフトウェア１０ａに、スリープ準備処理が成功した旨のメッセージを出力する。
ソフトウェア１０ａは、ＣＡＮドライバ１０ｂからスリープ準備処理成功のメッセージを受け取ると共に、その後フレーム要因及びエッジ要因がないと判定したならば（Ｓ１７０：ＮＯ）、スリープ処理のメッセージをＣＡＮドライバ１０ｂに出力する。
【００５６】
ＣＡＮドライバ１０ｂは、ソフトウェア１０ａからスリープ処理のメッセージを受け取ると、同じくスリープ処理のメッセージをマイクロプロセッサに出力する。
マイクロプロセッサは、ＣＡＮドライバ１０ｂからスリープ処理のメッセージを受け取ると、スリープ処理（Ｓ１６０）を実行して、ＣＡＮトランシーバ２０及びマイコン１０をスリープ状態（スリープモード）に移行させる。
【００５７】
マイコン１０（及びＣＡＮトランシーバ２０）がスリープ状態に移行すると、ＣＡＮドライバ１０ｂは、ソフトウェア１０ａに、スリープ処理が成功した旨のメッセージを出力する。
【００５８】
さらに、図６を用いて本実施形態の効果を説明する。
図６に示すように、ウェイクアップ状態では、フレーム要因を取得可能である。また、スリープ準備状態では、フレーム要因及びエッジ要因を取得可能である。また、スリープ状態では、エッジ要因を取得可能である。
【００５９】
つまり、本実施形態では、前述した通り、マイコン１０が、スリープ状態（スリープモード）に移行する前に、そのマイコン１０がフレーム要因及びエッジ要因の両方を監視するスリープ準備状態（通常モードの一種）の期間を設けている。尚、これに対し従来は、スリープ状態に移行する直前まではフレーム要因のみを監視し、スリープ状態に移行した後はエッジ要因のみを監視するようにしていた。
【００６０】
この点、本実施形態では、マイコン１０は、通常モードのときに、動作モードを通常モードに維持するための通信フレームを検出した場合のみならず、動作モードをスリープモードから通常モードに移行させるためのエッジ要因を検出した場合にも、動作モードを通常モードに維持するようになっている。
【００６１】
このため、例えば何らかの原因でマイコン１０が通信フレームを検出できなかった、というような場合でも、エッジ要因が検出されればマイコン１０は通常モードを維持するため、マイコン１０が誤ってスリープモードに移行してしまう確率を低減させることができる。よって、マイコン１０の信頼性を向上させることができる。
【００６２】
尚、上記実施形態において、通常モードが第１のモードに相当し、スリープモードが第２のモードに相当し、フレーム要因が維持要因に相当し、エッジ要因が移行要因に相当している。
〈参考実施例〉
さらに、参考として他の実施例を、図７を用いて説明する。図７は、ウェイクアップ状態からスリープ状態に移行する場合を表す模式図であり、従来技術の例及び本実施形態の例の２つの例を記載したものである。また、ここでは、周知のスマートエントリシステムを例にとり説明する。
【００６３】
例えばスマートエントリシステムでは、そのスマートエントリシステム用のＥＣＵは、消費電力の低減のため、ＣＡＮバスにメッセージ（通信フレーム）がないと判断したときはウェイクアップ状態からスリープ状態に移行するようになっている。スマートエントリシステム全体をウェイクアップ状態からスリープ状態に移行させるときには、消費電力の低減のため、ＣＡＮトランシーバ２０の動作モードも、フレームを受信するフレーム受信モード（通常モード）から、エッジを取得するためのエッジ取得モード（スリープモード）に移行させる。
【００６４】
この場合に、図７の従来技術のように、ウェイクアップ状態では、通信フレームの監視を行うことによりスリープ状態に移行するか否かを判断し、一方、スリープ状態では、エッジの入力を監視することにより、スリープ状態から復帰するか否かを判断する。
【００６５】
そして、スマートエントリシステムにおいて、例えば通常モードからスリープモードに移行する際、ハードウェア（具体的に、ＣＡＮトランシーバ２０）の状態を切り替えるための期間やノイズが発生するような期間（例えば図７の「ノイズ発生期間」）が存在する。その期間では、通信フレーム及びエッジの両方とも取得できなくなり、その期間にウェイクアップ要因が発生しても、スリープ状態から復帰できなくなってしまい、そのため誤動作が懸念される。
【００６６】
例えば、図７において、ノイズ発生期間においては、フレーム要因の受信・識別はできなくなってしまう。尚、この点は、従来技術の例でも本実施形態の例でも同じである。
一方で、図７の本実施例では、マイコン１０は、ウェイクアップ状態からスリープ状態に移行する際には、一旦必ず、フレーム要因とエッジ要因とを監視可能なスリープ準備状態に移行すると共に、フレーム要因を検出できた場合は勿論、エッジ要因を検出できた場合にも、ウェイクアップ状態を維持するようになっている。
【００６７】
つまり、従来技術と本実施例とを比較すると、両方ともノイズが発生するような期間でフレーム要因及びエッジ要因の両方ともが取得できないことはしょうがないにしても、本実施例では、フレーム要因及びエッジ要因の両方を監視する期間を設けることで、全体としては、マイコン１０が誤ってスリープ状態に移行する確率を低減させることができる。よって、マイコン１０の信頼性が向上する。
【００６８】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の技術範囲内において種々の形態をとることができる。
例えば上記実施形態において、マイコン１０のどのような動作モードについても、本発明を適用することができる。
【００６９】
また、上記実施形態において、フレーム要因が本発明（特許請求の範囲）の維持要因に相当し、エッジ要因が本発明の移行要因に相当しているが、維持要因はフレーム要因に限られるものではなく、また、移行要因はエッジ要因に限られるものではない。
【００７０】
また、上記実施形態では、ＥＣＵ２が備えるマイコン１０について説明したが、どのようなマイコンにも本発明を適用することができる。
【図面の簡単な説明】
【００７１】
【図１】本実施形態の車両用ネットワークシステム１の構成図である。
【図２】本実施形態のＥＣＵ２のより詳細なハード構成図である。
【図３】ＥＣＵ２のマイコン１０が実行する処理のフローチャートである。
【図４】マイコン１０の状態遷移図である。
【図５】本実施形態の作用を表すシーケンスチャートである。
【図６】本実施形態の効果を説明する説明図である。
【図７】従来例と本実施例との比較図である。
【符号の説明】
【００７２】
１…車両用ネットワークシステム、４…バッテリ、５…センサ／スイッチ群、６…アクチュエータ、１０…マイコン、１０ａ…ソフトウェア、１０ｂ…ＣＡＮドライバ、１１…ＣＰＵ、１２…ＲＯＭ、１３…ＲＡＭ、１４…レジスタ、１５…受信バッファ、１６…送信バッファ、２０…ＣＡＮトランシーバ、３０…電源回路、４０…入出力回路。
【図１】
2008222051.tif 000003
【図２】
2008222051.tif 000004
【図３】
2008222051.tif 000005
【図４】
2008222051.tif 000006
【図５】
2008222051.tif 000007
【図６】
2008222051.tif 000008
【図７】
2008222051.tif 000009