(57)【要約】【課題】スリープモードの場合でもシリアル通信を行うことが可能なマイクロコンピュータを提供する。【解決手段】ＣＰＵの通常動作モードで生成するメインクロックとは別に、該通常動作モードよりも消費電力量が少ないスリープモードでサブクロックを生成し、スリープモードにおいてサブクロックにより動作し、周辺回路とのシリアル通信を行うシリアル通信手段と、受信データに基づいて、動作モードをスリープモードから通常動作モードに切り替えるウェイクアップが要求されるウェイクアップ要因が発生したか否かを判定するウェイクアップ要因判定手段と、ウェイクアップ要因が発生したと判定されたときに、動作モード切換手段に対し、動作モードをスリープモードから通常動作モードに切り替えるためのウェイクアップ信号を出力するウェイクアップ信号出力手段を備えることを特徴とする。【選択図】図３
2009169539.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを実行するＣＰＵと、
前記ＣＰＵの動作モードを通常動作モードと、該通常動作モードよりも消費電力量が少ないスリープモードとの間で切り替える動作モード切換手段と、
前記通常動作モードにて前記ＣＰＵを動作させるためのメインクロックを生成するメインクロック生成手段と、
前記メインクロック生成手段とは別に設けられ、前記スリープモードにおいてサブクロックを生成するサブクロック生成手段と、
前記スリープモードにおいて前記サブクロックにより動作し、周辺回路とのシリアル通信を行うシリアル通信手段と、
を備えることを特徴とするマイクロコンピュータ。
【請求項２】
前記受信データに基づいて、前記動作モードを前記スリープモードから前記通常動作モードに切り替えるウェイクアップが要求されるウェイクアップ要因が発生したか否かを判定するウェイクアップ要因判定手段と、
前記ウェイクアップ要因が発生したと判定されたときに、前記動作モード切換手段に対し、前記動作モードを前記スリープモードから前記通常動作モードに切り替えるためのウェイクアップ信号を出力するウェイクアップ信号出力手段と、
を備える請求項１に記載のマイクロコンピュータ。
【請求項３】
前記ウェイクアップ要因を設定するウェイクアップ要因設定手段を備える請求項１または請求項２に記載のマイクロコンピュータ。
【請求項４】
前記ウェイクアップ要因判定手段は、前記受信データが予め定められた内容である場合に、前記ウェイクアップ要因が発生したと判定する請求項２または請求項３に記載のマイクロコンピュータ。
【請求項５】
前記シリアル通信手段は、前記スリープモードにおいて、前記周辺回路に対し予め定められたデータを送信し、
前記ウェイクアップ要因判定手段は、前記送信されたデータに対応する前記周辺回路からの受信データの内容に基づいて前記ウェイクアップ要因が発生したか否かを判定する請求項１ないし請求項４のいずれか１項に記載のマイクロコンピュータ。
【請求項６】
前記シリアル通信手段による前記周辺回路に対するデータ送信のタイミングを設定するタイミング設定手段を備える請求項５に記載のマイクロコンピュータ。
【請求項７】
前記サブクロック生成手段は、ＣＲ発振回路を含む請求項１ないし請求項６のいずれか１項に記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロコンピュータに関し、特にマイクロコンピュータに含まれるシリアル通信回路の技術に関するものである。
【背景技術】
【０００２】
マイクロコンピュータ等が実装された電子制御装置（以下、ＥＣＵ：Electronic  Control  Unitと略称する）では、ＥＣＵ内部のマイクロコンピュータと周辺回路との通信や、ＥＣＵ間の通信に、シリアル通信が用いられている。
【０００３】
車両においても、各部の電子制御化に伴い、ＥＣＵは数多く搭載されるようになっているが、消費電力も増加し、バッテリの負担も増大している。そこで、通常動作モードと、該通常動作モードよりも消費電力量が少ないスリープモードとの間で切り替えが可能なマイクロコンピュータを用いることで、ＥＣＵ（マイクロコンピュータ）が非動作時のときには、マイクロコンピュータをスリープモードとして、消費電力量を抑制している。
【０００４】
しかし、マイクロコンピュータがスリープモードの場合にも、予め定められたタイミングで、周辺回路あるいは他のＥＣＵとの間で通信を行う必要がある。この場合、スリープモードから通常動作モードに遷移しなければならず、車両においては、バッテリへの充電が行われないエンジン停止時には、バッテリの消耗の度合いが大きくなる問題がある。
【０００５】
そこで、ＣＰＵの動作クロックであるメインクロックとは別にサブクロックを設け、サブクロックによりマイクロコンピュータが通常動作モードとスリープモードとを繰り返すように制御する間欠制御部を設けたマイクロコンピュータが考案されている（特許文献１参照）。
【０００６】
また、ＣＰＵの動作クロックであるメインクロックとは別にサブクロックを設け、ＣＰＵの動作を停止させた状態で、サブクロックを受けて動作する任意信号出力手段により、任意の周期およびデューティ比のパルス信号を当該マイコンの出力端子から繰り返し出力することができ、ひいては、任意の周期およびデューティ比のパルス信号を、より少ない消費電力で出力することができるマイクロコンピュータが考案されている（特許文献２参照）。
【０００７】
【特許文献１】特許第３７３６３４８号公報
【特許文献２】特許第３８７９５２３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１の例では、間欠動作によって消費電力は低減できるが、単に通信のみを行う場合でもマイクロコンピュータは通常動作モードで動作するため、通信回路以外でも電力を消費してしまうという問題が残る。
【０００９】
特許文献２の例では、ＣＰＵが停止状態となる前に設定された、任意の周期およびデューティ比のパルス信号を繰り返し出力するのみであり、それ以外の信号の出力処理や、周辺回路あるいは他のＥＣＵからの信号を受信した場合の処理については開示されていない。
【００１０】
従来のマイクロコンピュータの構成では、シリアル通信は通常動作モードでのみ行うことができる。スリープモードの場合に周辺回路からシリアル通信を受信した際には、シリアル通信の受信開始をトリガとして通常動作モードに移行してデータ受信を行う。よって、該マイクロコンピュータに関係のないデータを受信した場合でも、通常動作モードで動作してしまい、消費電力の増加につながってしまう。
【００１１】
上記問題を背景として、本発明の課題は、スリープモードの場合でもシリアル通信を行うことが可能なマイクロコンピュータを提供することにある。
【課題を解決するための手段および発明の効果】
【００１２】
上記課題を解決するためのマイクロコンピュータは、プログラムを実行するＣＰＵと、ＣＰＵの動作モードを通常動作モードと、該通常動作モードよりも消費電力量が少ないスリープモードとの間で切り替える動作モード切換手段と、通常動作モードにてＣＰＵを動作させるためのメインクロックを生成するメインクロック生成手段と、メインクロック生成手段とは別に設けられ、スリープモードにおいてサブクロックを生成するサブクロック生成手段と、スリープモードにおいてサブクロックにより動作し、周辺回路とのシリアル通信を行うシリアル通信手段と、を備えることを特徴とする。
【００１３】
上記構成によって、スリープモードにおいても通常動作モードに移行することなくシリアル通信を行うことが可能となる。そして、サブクロックはシリアル通信手段のみを動作させる能力さえあればよく、メインクロックよりも小規模な構成とすることができるので、シリアル通信時のマイクロコンピュータにおける消費電力を抑えることが可能となる。
【００１４】
また、本発明のマイクロコンピュータは、受信データに基づいて、動作モードをスリープモードから通常動作モードに切り替えるウェイクアップが要求されるウェイクアップ要因が発生したか否かを判定するウェイクアップ要因判定手段と、ウェイクアップ要因が発生したと判定されたときに、動作モード切換手段に対し、動作モードを通常動作モードに切り替えるためのウェイクアップ信号を出力するウェイクアップ信号出力手段と、を備えるように構成される。
【００１５】
シリアル通信の受信データの内容には、いわゆるｐｉｎｇのようなＥＣＵ存在問い合せコードも含まれている。このような場合、特許文献２の構成では、該存在問い合せコードに対する応答ができるとは限らない。また、同じデータを繰り返し送信することで、他のＥＣＵの動作の受信処理負荷を増大させるという問題もある。上記構成によって、必要なデータを受信した場合にのみスリープモードから通常動作モードに切り替えるため、マイクロコンピュータにおける消費電力を抑えることが可能となり、特に車両のエンジン停止時には、バッテリの消耗の度合いを小さくすることができる。
【００１６】
また、本発明のマイクロコンピュータは、ウェイクアップ要因を設定するウェイクアップ要因設定手段を備えるように構成される。
【００１７】
上記構成によって、ＥＣＵの構成に応じてウェイクアップ要因を設定することができる。そして、不要なウェイクアップ要求が発生しないので、電力消費を抑制することが可能となる。
【００１８】
また、本発明のマイクロコンピュータにおけるウェイクアップ要因判定手段は、受信データが予め定められた内容である場合に、ウェイクアップ要因が発生したと判定するように構成される。
【００１９】
上記構成によっても、不要なウェイクアップ要求が発生しないので、電力消費を抑制することが可能となる。
【００２０】
また、本発明のマイクロコンピュータにおけるシリアル通信手段は、スリープモードにおいて、周辺回路に対し予め定められたデータを送信し、ウェイクアップ要因判定手段は、送信されたデータに対応する周辺回路からの受信データの内容に基づいてウェイクアップ要因が発生したか否かを判定するように構成される。
【００２１】
上記構成によって、周期的にデータを送信してこない周辺回路や、データ要求信号を送信しないとデータを返送してこない周辺回路等と接続されている場合でも、スリープモード時にシリアル通信を行うことができるとともに、それら周辺回路の状態に応じてマイクロコンピュータの動作モードを切り替えることができる。
【００２２】
また、本発明のマイクロコンピュータは、シリアル通信手段による周辺回路に対するデータ送信のタイミングを設定するタイミング設定手段を備えるように構成される。
【００２３】
上記構成によって、周辺回路の構成に応じて適切なデータ送信のタイミングを設定できるので、無駄な通信を行うことがないため、電力消費を抑えることが可能となる。
【００２４】
また、本発明のマイクロコンピュータにおけるサブクロック生成手段は、ＣＲ発振回路を含むように構成される。
【００２５】
ＣＲ発振回路は、Ｃ（コンデンサ），Ｒ（抵抗），トランジスタあるいはオペアンプ等で構成され、水晶発信子が不要である。上記構成によって、比較的安価でサブクロック生成手段を構成することが可能となる。また、ＣＲ発振回路は集積化が可能なため、マイクロコンピュータに内蔵することも可能である。
【発明を実施するための最良の形態】
【００２６】
以下、本発明のマイクロコンピュータを、図面を参照しながら説明する。図１に、マイクロコンピュータ（以下、マイコンと略称する）１およびその周辺構成を示す。マイコン１は、基本的な構成要素として、プログラムを実行するＣＰＵ２と、プログラムやデータが予め格納されるＲＯＭ３と、ＣＰＵ２による演算結果を一時記憶するためのＲＡＭ４と、マイコン１の端子を介して周辺回路１０あるいは外部機器（図示せず）との通信を行うためのシリアル通信部７とを備えている。
【００２７】
そして、マイコン１は、その外部に設けられる発振素子６とによりＣＰＵ２の動作クロックであるメインクロック信号（例えば、数ＭＨｚ〜数十ＭＨｚ）を生成するメイン発振回路５と、上記メインクロック信号よりも周波数が低いサブクロック信号（例えば、数十ＫＨｚ）を生成するサブ発振回路８とを備えている。なお、メイン発振回路５，発振素子６が本発明のメインクロック生成手段に相当する。
【００２８】
ＣＰＵ２は、特定の命令を実行することによって自己の動作モードを、通常動作モードから、該通常動作モードよりも消費電力量が少ないスリープモードに切り替えることができるようになっている。なお、ＣＰＵ２が本発明の動作モード切換手段に相当する。
【００２９】
また、マイコン１は、外部との信号の入出力を行うための汎用入出力ポートや、Ａ／Ｄ変換入力ポート，ＰＷＭ出力ポート等の機能ポートおよびその動作回路を含むこともあるが、図１では省略してある。
【００３０】
周辺回路１０は、マイコン１と同一基板上に実装されるか、マイコン１と同一ＥＣＵ内に含まれる。周辺回路１０は、例えば、以下のような構成をとる。
・  周辺回路１０は、モータ，ソレノイド，バルブ等のアクチュエータや、ＬＣＤ，ＬＥＤ等の表示デバイスを駆動するためのドライバ回路として構成される。そして、周辺回路１０は、ＣＰＵ２からシリアル通信部７を介して送信される駆動指令に基づいてアクチュエータ等を駆動する。また、アクチュエータの動作状況を、ＣＰＵ２からの問い合せ要求あるいは所定のタイミングでＣＰＵ２へシリアル通信部７を介して送信する。
・  周辺回路１０は、温度，気圧，回転数，速度等の各種センサに接続され、これらセンサからの情報を収集し、収集したデータを、ＣＰＵ２からの問い合せ要求あるいは所定のタイミングでＣＰＵ２へシリアル通信部７を介して送信する。
【００３１】
また、シリアル通信部７が、周辺回路１０の他に、マイコン１が含まれるＥＣＵとは別のＥＣＵと通信可能な構成としてもよい。
【００３２】
電源回路９は、例えばバッテリ等の外部電源装置から、マイコン１の各部に電源を供給するためのものである。
【００３３】
図２に、サブ発振回路８の構成例を示す。サブ発振回路８は、周知のＣＲ発振回路により構成される。図２は、サブ発振回路８をウィーンブリッジ型発振回路で構成した例である。他に、ザルツァ型発振回路，移相型発振回路を用いてもよい。なお、サブ発振回路８が本発明のサブクロック生成手段に相当する。
【００３４】
図２の例では、抵抗Ｒ１，Ｒ２、コンデンサＣ１，Ｃ２、オペアンプＯＰが、発振回路の基本構成要素である。また、抵抗Ｒ３は振幅安定化用、抵抗Ｒ４は振幅調整用の抵抗である。出力端子ＳＩＮ  ＯＵＴから出力されるサブクロック信号の発振周波数ｆは、ｆ＝１／｛２π×（Ｃ１×Ｃ２×Ｒ１×Ｒ２）１／２｝となる。
【００３５】
図３に、シリアル通信部７の構成例を示す。シリアル通信部７はレジスタ群７１，制御回路群７２，およびボーレートジェネレータ７３を含んで構成される。これらの構成要素は図示しないデータバスにより、各部間のデータの転送ができるように接続されている。なお、シリアル通信部７が本発明のシリアル通信手段に相当する。
【００３６】
シリアル通信の通信速度は、ＣＰＵ２が実行するプログラム上で設定が行われる、ボーレート設定レジスタ７１ｇの設定内容に基づいて設定される。そして、ボーレートジェネレータ７３において、メイン発振回路５あるいはサブ発振回路８から供給されるクロック信号（図１のメインクロック信号，サブクロック信号）を分周する等して該通信速度に対応する、送信シフトレジスタ７１ａ，受信シフトレジスタ７１ｃの動作トリガ信号、あるいはＳＣＬＫ端子から出力されるシリアルクロック信号を生成する。
【００３７】
データ送信時には、送信データレジスタ７１ｂに送信データが書き込まれて、例えば送信データレジスタ７１ｂに含まれる送信指示フラグをセットすることにより送信指示が行われると、送信データレジスタ７１ｂの内容が送信シフトレジスタ７１ａに転送される。そして、ボーレートジェネレータ７３からの動作トリガ信号に基づいて、送信データが１ビットずつ、シリアルクロック信号あるいはボーレートジェネレータ７３からの動作トリガ信号に基づいて、ＳＯＵＴ端子から周辺回路１０に出力される。
【００３８】
周辺回路１０からのデータ受信時には、シリアルクロック信号あるいはボーレートジェネレータ７３からの動作トリガ信号に基づいて、ＳＩＮ端子からの信号が受信シフトレジスタ７１ｃにデータが１ビットずつ書き込まれ、全ビットにデータが書き込まれると、受信シフトレジスタ７１ｃの内容が受信データレジスタ７１ｄに転送される。
【００３９】
ＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅは、ＣＰＵ２をスリープモードから通常動作モードへ遷移（ウェイクアップ）させるためのウェイクアップ要因を設定するためのもので、ＣＰＵ２が実行するプログラム上で設定が行われる。なお、ＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅが本発明のウェイクアップ要因設定手段に相当する（詳細については後述）。
【００４０】
送信間隔設定レジスタ７１ｆは、スリープモード時に周辺回路１０に対してデータを送信する間隔を設定するためのもので、ＣＰＵ２が実行するプログラム上で設定が行われる。なお、送信間隔設定レジスタ７１ｆが本発明のタイミング設定手段に相当する（詳細については後述）。
【００４１】
図４および図５を用いて、本発明に係る、シリアル通信部７における送信制御について説明する。図４に、送受信制御回路７２ａの送信制御の構成を示す。図５に、送受信制御回路７２ａにおける送信制御時のタイミングチャートを示す。メイン発振回路５からのメインクロック信号、あるいはサブ発振回路８からのサブクロック信号に基づいて、ボーレートジェネレータ７３で送信シフトレジスタ７１ａ，受信シフトレジスタ７１ｃの動作トリガ信号、あるいはシリアルクロック信号が生成され、ＡＮＤ回路７２ａ２に入力される。また、ボーレートジェネレータ７３からの出力信号は分周回路７２ａ１に入力され、分周回路７２ａ１において送信間隔設定レジスタ７１ｆの設定内容に基づいて分周され、ＡＮＤ回路７２ａ２に入力される。この分周周期が送信間隔となる。
【００４２】
図５のタイミングチャートにおいて、ボーレートジェネレータ７３からの出力信号と、分周回路７２ａ１からの出力信号とがＡＮＤ回路７２ａ２に入力されると、ＡＮＤ回路７２ａ２の出力端子からは、分周回路７２ａ１からの出力信号がＨレベルのときのみ、ボーレートジェネレータ７３からの出力信号が送受信制御回路出力として、シリアル通信部７の各部に出力される。
【００４３】
シリアル通信部７の各部では、送受信制御回路出力に基づいて送受信の動作を行う。例えば、周知のクロック同期型シリアル通信の場合には、送受信制御回路出力波形（クロックパルス波形）の最初の立ち上がりで、送信データレジスタ７１ｂから送信シフトレジスタ７１ａに送信データが転送され、次のパルスの立ち上がりでマイコン１のＳＣＬＫ端子からシリアルクロック信号の出力が開始され、このシリアルクロック信号に同期して送信データがＳＯＵＴ端子から出力される（図６参照）。このときに、シリアルクロック信号に同期してＳＩＮ端子から周辺回路１０からのデータを受信して、受信シフトレジスタ７１ｃに書き込み、全ビットにデータが書き込まれると、受信シフトレジスタ７１ｃの内容が受信データレジスタ７１ｄに転送される（図７参照）。
【００４４】
なお、送信データは、ＣＰＵ２が通常動作モードからスリープモードに切り替る前に、送信データレジスタ７１ｂにセットし、スリープモード中には同一の送信データを繰り返し出力する方法でもよいし、送信データバッファ（図示せず）に複数個設定可能として、該送信データバッファから送信データレジスタ７１ｂに順次読み出してサイクリックに送信してもよい。
【００４５】
なお、データの送受信を同時に行わなくてもよい。すなわち、送信データレジスタにダミーデータをセットしておく。あるいは、マイコン１が、シリアル通信モードを、送信専用，受信専用，送受信の双方、のように切替設定可能な場合には、所望の通信モードに設定して通信を行う。
【００４６】
また、シリアル通信部７を、周知のＵＡＲＴ（Universal  Asynchronous  Receiver  Transmitter：汎用非同期送受信回路）を用いた調歩同期式、あるいは非同期式のシリアル通信（ＵＡＲＴ通信）を行う構成としてもよい。図８のように、ＵＡＲＴ通信では、データ（Ｄ０〜Ｄ７）の先頭にスタートビットＳＴ（Ｌレベル），末尾にストップビットＳＰ（Ｈレベル）が付加され、送信開始（同期）の合図を受信側で識別でき、送受信制御回路出力波形（クロックパルス波形）に基づいて通信を行うことができるので、マイコン１のＳＣＬＫ端子からシリアルクロック信号を出力しなくてもよい。
【００４７】
図９を用いて、ＷＡＫＥ  ＵＰ要因判定回路７２ｂの構成を説明する。ＷＡＫＥ  ＵＰ要因判定回路７２ｂは、ＸＯＲ（eXclusive  OR：排他的論理和）回路７２ｂ１，論理反転回路７２ｂ２，およびＡＮＤ回路７２ｂ３を含んで構成される。ＸＯＲ回路７２ｂ１および論理反転回路７２ｂ２は、受信データレジスタ７１ｄのビット数（ＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅのビット数も同じ）だけ用意され、それぞれのレジスタの対応するビット（例えば、Ｄ０同士，…，Ｄ７同士）が同じＸＯＲ回路７２ｂ１の入力端子に接続され、ＸＯＲ回路７２ｂ１の出力端子が論理反転回路７２ｂ２の入力端子に接続されている。なお、ＷＡＫＥ  ＵＰ要因判定回路７２ｂが本発明のウェイクアップ要因判定手段に相当する。
【００４８】
ＡＮＤ回路７２ｂ３の入力端子には、各ＸＯＲ回路７２ｂ１の出力端子と、受信シフトレジスタ７１ｃからの受信完了信号出力端子が接続される。受信完了信号は、データの受信が完了したとき、すなわち、データのビット数だけレジスタ内でのシフト動作が行われたときにＨレベルが出力される。
【００４９】
受信データレジスタ７１ｄの内容とＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅの内容とが一致する場合、全てのＸＯＲ回路７２ｂ１の出力端子はＬレベルとなるので、ＡＮＤ回路７２ｂ３にはＨレベルが入力される。そして、受信シフトレジスタ７１ｃからは受信完了信号時のみＨレベルが入力されるので、データ受信完了後の受信データとＷＡＫＥ  ＵＰ要因設定内容が一致した場合には、ＡＮＤ回路７２ｂ３の出力端子からはＨレベルが出力される。
【００５０】
ＷＡＫＥ  ＵＰ要因は複数設定可能としてもよい。この場合、シリアル通信部７には、ＷＡＫＥ  ＵＰ要因の個数が格納される格納レジスタ（図１３参照）が含まれる。そして、ＷＡＫＥ  ＵＰ要因の個数がカウンタ回路（図示せず）により読み出され、その個数（回数）だけ該格納レジスタから、カウンタ回路の動作（例えば、カウントアップ）に同期してＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅに順次転送される。
【００５１】
また、周辺回路（１０）が複数ある場合には、周辺回路毎にＷＡＫＥ  ＵＰ要因を設定可能としてもよい。図１４に設定レジスタの一例を示す。周辺回路毎にＩＤが設定され、周辺回路から送られてくるデータには、例えば１バイト目の上位４ビットに、このＩＤが含まれている。まず、受信データレジスタ７１ｄに記憶された受信データの１バイト目の上位４ビットとＩＤを比較する。次に、一致したＩＤに対応するＷＡＫＥ  ＵＰ要因が含まれるデータ位置（受信データの何バイト目にＷＡＫＥ  ＵＰ要因が含まれているかを示す）を、該設定レジスタから取得し、その位置に記憶されているデータ内容とＷＡＫＥ  ＵＰ要因とを比較する。この場合も、ＷＡＫＥ  ＵＰ要因は複数設定可能としてよい。
【００５２】
受信データとＷＡＫＥ  ＵＰ要因設定内容が一致しない場合には、ＡＮＤ回路７２ｂ３の出力端子からはＬレベルが出力されるので、このＬレベル信号をトリガとして上述のカウンタ回路でカウンタを更新して、更新されたカウンタ値に対応する格納レジスタの内容を、ＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅに転送する。一方、受信データとＷＡＫＥ  ＵＰ要因設定内容が一致した（ＡＮＤ回路７２ｂ３の出力端子からはＨレベルが出力された）場合には、ＡＮＤ回路７２ｂ３の出力端子からはＨレベルが出力されるので、このＨレベル信号をトリガとして、ＷＡＫＥ  ＵＰ要因判定の動作を停止する。
【００５３】
図９に戻り、割り込み回路７２ｃでは、ＡＮＤ回路７２ｂ３の出力内容に基づいてＣＰＵ２２対するＷＡＫＥ  ＵＰ割り込み指令が行われる。すなわち、ＡＮＤ回路７２ｂ３の出力端子からＨレベルが出力された場合には、ＷＡＫＥ  ＵＰ割り込み要求が発生したと判定し、ＣＰＵ２にＷＡＫＥ  ＵＰ割り込み要求信号（ウェイクアップ信号）を出力する。ＣＰＵ２は、該信号が入力された場合には、動作モードをスリープモードから通常動作モードに切り替える。なお、割り込み回路７２ｃが本発明のウェイクアップ信号出力手段に相当する。
【００５４】
上述の例は、受信データとＷＡＫＥ  ＵＰ要因設定内容が一致した場合に、ＷＡＫＥ  ＵＰ割り込み要求を発生するものであったが、受信データとＷＡＫＥ  ＵＰ要因設定内容が一致しない場合に、ＷＡＫＥ  ＵＰ割り込み要求を発生するようにしてもよい。この場合、受信データとＷＡＫＥ  ＵＰ要因設定内容が一致しない場合はＸＯＲ回路７２ｂ１がＨレベルを出力するため、図９のＷＡＫＥ  ＵＰ要因判定回路７２ｂでは、論理反転回路７２ｂ２が不要となる。
【００５５】
図１０に、周辺回路１０からデータを受信して、ＷＡＫＥ  ＵＰ割り込み要求を発生するまでの、マイコンの動作の流れを示す。まず、以下のいずれかの方法により、受信線（ＳＩＮ端子）にデータがあるか否かを判定する（Ｓ１１）。
・  クロック同期通信の場合、送受信モードあるいは受信モードのときに、シリアルクロック信号（ＣＬＫ）の出力を開始したとき、あるいはシリアルクロック信号を検出したときにデータありと判定。
・  ＵＡＲＴ通信の場合、スタートビットを検出したときにデータありと判定。
【００５６】
受信線にデータがあると判定された場合（Ｓ１１：Ｙｅｓ）、受信シフトレジスタ７１ｃにデータを取り込み、全てのデータを受信した後に、受信シフトレジスタ７１ｃの内容を受信データレジスタ７１ｄへ転送する（Ｓ１２）。
【００５７】
次に、上述したように、図９のＷＡＫＥ  ＵＰ要因判定回路７２ｂにおいて、受信データレジスタ７１ｄとＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅとの内容を比較し、同一内容であれば（Ｓ１３：Ｙｅｓ）、ＷＡＫＥ  ＵＰ要因が成立したと判定して、ＷＡＫＥ  ＵＰ割り込み要求を発生し、割り込み回路７２ｃからＣＰＵ２にＷＡＫＥ  ＵＰ割り込み要求信号が出力される（Ｓ１４）。
【００５８】
図１０の例は、周辺回路１０からのデータ受信がトリガとなるため、不定期動作であるが、マイコン１から周辺回路１０に対して定期的に問い合せ情報を送信し、該問い合せ情報に対応する応答情報の内容に応じてウェイクアップするようにしてもよい。図１１に、そのときの動作フローを示す。なお、図１１の動作が図１０の動作に先立って実施される。図４および図５で説明したように、送信間隔設定レジスタ７１ｆに設定された送信間隔で（Ｓ２１）、送信データレジスタ７１ｂに書き込まれたデータを送信する（Ｓ２２）。送信するデータの内容は、複数でもよい。この場合は、シリアル通信部７に、送信するデータを格納するための送信データバッファ，何番目のデータを送信すべきかを示す送信ポインタレジスタが別途含まれ（いずれも図示せず）、送信ポインタレジスタの内容に対応する送信データバッファの内容が送信データレジスタ７１ｂに転送される。
【００５９】
図１２のタイミングチャートを用いて、上記で説明した、マイコン１における動作モードの遷移の詳細について説明する。マイコン１は、スリープモード時においても、周辺回路１０からの、アクチュエータあるいはセンサの状態を受信する。そして、アクチュエータあるいはセンサの状態が異常であることを示すデータを受信した場合、ＷＡＫＥ  ＵＰ要求を発生して、通常動作モードに切り替える。
【００６０】
まず、通常動作モードでは、メイン発振回路５が動作しているのでＣＰＵ２，シリア通信部７等はメインクロックに基づいて動作する。ＣＰＵ２が特定の命令を実行することによって自己の動作モードを、通常動作モードからスリープモードに切り替えると、ＣＰＵ２の制御によりメイン発振回路５は停止するので、メインクロックの出力も止まる。その代わりに、サブ発振回路８が作動して、シリア通信部７にサブクロックが出力される。
【００６１】
スリープモードでは、送信間隔設定レジスタ７１ｆおよびボーレート設定レジスタ７１ｇの設定内容に基づいて送信データが、ＳＯＵＴ端子から周辺回路１０等に出力される。そして、周辺回路１０等から、送信データに対応する受信データが送られてくるのを待つ。
【００６２】
ＳＩＮ端子からデータを受信した場合、ＷＡＫＥ  ＵＰ要因判定回路７２ｂにて、受信データの内容をＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅの内容と比較する。図１２の例では、ＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅの設定内容は０ｘｆｆｆｆであり、最初の３番目までの受信データは０ｘ００００であるので、ＷＡＫＥ  ＵＰ要因なしと判定され、ＷＡＫＥ  ＵＰ要因判定回路７２ｂからはＷＡＫＥ  ＵＰ要求は出力されず、スリープモードを維持する。
【００６３】
一方、４番目の受信データは、０ｘｆｆｆｆでＷＡＫＥ  ＵＰ要因設定レジスタ７１ｅの設定内容と一致するので、ＷＡＫＥ  ＵＰ要因判定回路７２ｂから、ＷＡＫＥ  ＵＰ要求が割り込み回路７２ｃに出力される。そして、ＣＰＵ２でＷＡＫＥ  ＵＰ要因割り込みが発生し、ＣＰＵ２の制御によりサブ発振回路８が停止するとともにメイン発振回路５が作動を開始し、ＣＰＵ２の動作モードがスリープモードから通常動作モードに切り替えられる。
【００６４】
図１２の例では、シリアルクロック信号が図示されていないが、クロック同期シリアル通信の場合には、シリアル出力およびシリアル入力が行われる際に、シリアルクロック信号が出力あるいは入力される。
【００６５】
スリープモードから通常動作モードへの切り替えは、以下のいずれを用いてもよい。
・  割り込み回路７２ｃからＣＰＵ２あるいは電源回路９にリセット信号を出力し、ＣＰＵ２の動作をリセットして通常動作モードに遷移する。
・  ＣＰＵ２において、対応するＷＡＫＥ  ＵＰ要因割り込み処理を実行し、その処理内で、特定の命令を実行することによって自己の動作モードを、スリープモードから通常動作モードに切り替える。
【００６６】
動作異常等のため、周辺回路１０からデータが送られてこず無応答の場合は、ＳＩＮ端子の状態が変化しないため、受信データは０ｘｆｆｆｆ（あるいは０ｘ００００）のような値となるため、この値をＷＡＫＥ  ＵＰ要因として設定しておけば、周辺回路１０の動作異常をトリガとしてウェイクアップすることができる。
【００６７】
以上、本発明の実施の形態を説明したが、これらはあくまで例示にすぎず、本発明はこれらに限定されるものではなく、特許請求の範囲の趣旨を逸脱しない限りにおいて、当業者の知識に基づく種々の変更が可能である。
【図面の簡単な説明】
【００６８】
【図１】マイクロコンピュータおよびその周辺の構成を示す図。
【図２】サブ発振回路の構成例を示す図。
【図３】シリアル通信部の構成例を示す図。
【図４】図３の送受信制御回路の構成例を示す図。
【図５】図４の送受信制御回路の信号出力例を示すタイミングチャート。
【図６】クロック同期式シリアル通信のデータ送信例を示すタイミングチャート。
【図７】クロック同期式シリアル通信のデータ受信例を示すタイミングチャート。
【図８】ＵＡＲＴ通信時の送受信データの構成例を示す図。
【図９】図３のＷＡＫＥ  ＵＰ要因判定回路の構成例を示す図。
【図１０】図９のＷＡＫＥ  ＵＰ要因判定回路における動作を説明するフロー図。
【図１１】スリープモード時のシリアル送信動作を説明するフロー図。
【図１２】マイコンにおける動作モードの遷移について説明するタイミングチャート。
【図１３】ＷＡＫＥ  ＵＰ要因判設定の例を示す図。
【図１４】ＷＡＫＥ  ＵＰ要因判設定の別例を示す図。
【符号の説明】
【００６９】
１    マイクロコンピュータ
２    ＣＰＵ（動作モード切換手段）
７    シリアル通信部（シリアル通信手段）
５    メイン発振回路（メインクロック生成手段）
６    発振素子（メインクロック生成手段）
８    サブ発振回路（サブクロック生成手段）
１０    周辺回路
７１    レジスタ群
７１ａ  送信シフトレジスタ
７１ｂ  送信データレジスタ
７１ｃ  受信シフトレジスタ
７１ｄ  受信データレジスタ
７１ｅ  ＷＡＫＥ  ＵＰ要因設定レジスタ（ウェイクアップ要因設定手段）
７１ｆ  送信間隔設定レジスタ（タイミング設定手段）
７１ｇ  ボーレート設定レジスタ
７２    制御回路群
７２ａ  送受信制御回路
７２ｂ  ＷＡＫＥ  ＵＰ要因判定回路（ウェイクアップ要因判定手段）
７２ｃ  割り込み回路（ウェイクアップ信号出力手段）
【図１】
2009169539.tif 000003
【図２】
2009169539.tif 000004
【図３】
2009169539.tif 000005
【図４】
2009169539.tif 000006
【図５】
2009169539.tif 000007
【図６】
2009169539.tif 000008
【図７】
2009169539.tif 000009
【図８】
2009169539.tif 000010
【図９】
2009169539.tif 000011
【図１０】
2009169539.tif 000012
【図１１】
2009169539.tif 000013
【図１２】
2009169539.tif 000014
【図１３】
2009169539.tif 000015
【図１４】
2009169539.tif 000016