(57)【要約】【課題】マスタとバスを介して接続される複数のスレーブとの間で非同期通信を行う際にバスのドライブレベルが「３」以上の複数規定されている場合でも、１ビット期間の測定を正確に行う。【解決手段】ＳｂＷ通信を行うスレーブ１１は、コンパレータ１２に３段階のドライブレベルに対応するしきい値Ａ，Ｂ，Ｃを設定し、立上りパルス発生部２９はバス３のドライブレベルが各しきい値Ａ〜Ｃを夫々を超えた場合に夫々ワンショットパルスを発生させ、立下りパルス発生部３０はバス３のドライブレベルがしきい値Ａを下回った場合にワンショットパルスを発生させる。そして、ＲＳフリップフロップ２３を、立上りパルス発生部２９より出力されるパルスのＯＲ条件でセットして立下りパルス発生部３０より出力されるパルスでリセットし、１ビット期間を計測するカウンタ２６をＲＳフリップフロップ２３がリセット状態で且つ前記パルスのＯＲ条件が成立した場合にクリアする。【選択図】図１
2007181035.tif 000002
【特許請求の範囲】
【請求項１】
マスタと、このマスタにバスを介して接続される複数のスレーブとの間で非同期通信を行うもので、
前記マスタが前記バスに電源を供給する電源供給期間と、前記マスタ又は前記スレーブが前記バスをドライブして１ビットのデータを当該バス上に出力するデータ期間とを併せてなる１ビット期間の連続により通信を行うプロトコルを採用する通信システムにおいて、
データの内容に応じて前記バスのドライブレベルが「３」以上の複数である場合に、前記スレーブは、各ドライブレベルに対応する複数のしきい値を設定し、前記バスのドライブ波形の立上り期間において、前記複数のしきい値の内直前のドライブレベルに最も近い値を超えた時点から、次回に前記複数のしきい値の内直前のドライブレベルに最も近い値を超えた時点までの時間を計測して、前記１ビット期間を計測することを特徴とする通信システム。
【請求項２】
前記スレーブは、
カウントクロックに基づき連続的にカウント動作を行なうカウンタと、
前記バスのドライブレベルが、前記複数のしきい値を夫々を超えた場合にパルスを発生させる立上りパルス発生部と、
前記バスのドライブレベルが、前記複数のしきい値の内最も高いレベルを下回った場合にパルスを発生させる立下りパルス発生部と、
この立上りパルス発生部によって出力されるパルスのＯＲ条件によってセットされると共に、前記立下りパルス発生部によって出力されるパルスによってリセットされるフリップフロップとを備え、
前記フリップフロップがリセット状態であり、且つ前記パルスのＯＲ条件が成立した場合に、前記カウンタをクリアするように構成されていることを特徴とする請求項１記載の通信システム。
【請求項３】
前記マスタによって前記バス上に出力される通信開始信号の期間長が、前記１ビット期間に対して所定の比率を有するように定められている場合に、
前記カウンタによって前回カウントされた前記１ビット期間のカウント値を保持するためのレジスタと、
このレジスタによって保持されたカウント値と、今回前記カウンタによってカウントされた前記１ビット期間のカウント値とを比較する比較回路とを備えることを特徴とする請求項２記載の通信システム。
【請求項４】
請求項１乃至３の何れかの通信システムにおいて、前記スレーブとして使用されることを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタと、このマスタにバスを介して接続される複数のスレーブとの間で非同期通信を行う通信システム、及びその通信システムでスレーブとして使用される通信装置に関する。
【背景技術】
【０００２】
車両内部の配線で使用される通信プロトコルの１つとして、ＳｂＷ（Safe by Wire）がある。ＳｂＷは、例えばエアバッグ制御のように、断線が発生する可能性を低下させることが好ましいものに適用するため、電源の供給並びに通信を２本の配線のみで行うようにしたプロトコルである。
図４には、１つのマスタ（例えば、車両用のＥＣＵ）１と、複数のスレーブ２（１〜６７）とを、バス３（＋，−）を介して列状に接続した構成を示す。尚、各スレーブ２の内部に存在するスイッチ４は、後続のスレーブ２に故障が発生した場合に、当該スレーブ２に対するバス３の接続を切り離し、正常なスレーブ２のみで通信を続行するために設けられている。
【０００３】
また、図５には、ＳｂＷによる通信でデータを送信する場合に、マスタ１若しくはスレーブ２がバス３をドライブする場合の電圧波形を示す。ＳｂＷでは、マスタ１は、先ず電源供給期間（Power Phase）においてバス３を電圧レベルＶＬＰでドライブすることで、各スレーブ２に動作用電源を供給する。そして、電源供給期間に続くデータ期間（Data Phase）が、マスタ１若しくはスレーブ２が１ビットのデータを送信する期間となり、双方の期間を加えたものが１ビット期間（１００％bit）として定義されている。また、この１ビット期間の長さによって通信速度が決まるようになっており、１つのシステムにおいてダイナミックに通信速度が変更される場合もある。
【０００４】
データ期間においてマスタ１がデータを送信する場合は、バス３を電圧レベルＶＬ０，ＶＬ１の何れかにドライブする。これらの電圧レベルは、夫々データ「０，１」に対応する。また、スレーブ２がデータを送信する期間では、マスタ１はデータ期間でバス３を電圧レベルＶＬ０にドライブする。尚、電源供給期間，データ期間の期間長は、等しくなるように規定されている。
この時、スレーブ２側がバス３をドライブしなければ電圧レベルはＶＬ０のままとなり、データ「０」を送信したことになる。そして、スレーブ２側がバス３を電圧レベルがＶＬ０よりも低いＶＬ１にドライブすれば、データ「１」を送信したことになる。また、スレーブ２側がバス３を電圧レベルがＶＬ１よりも低いＶＬＳ０にドライブした場合は、マスタ１に対して割り込みを発生させることを意味する。
【０００５】
また、図６には、マスタ１−スレーブ２間におけるデータ通信の一例を示す。マスタ１は、その時点での通信レートにおける１ビット期間の２倍の長さ（２００％bit）でバス３をＶＬＰ，ＶＬ０にドライブすることで、通信の開始を示すＳＯＦ（Start Of Frame）を送信する。スレーブ２は、バス３にＳＯＦが送信されたことにより、各々が通信の開始を認識する。
それから、マスタ１は通信モードを指定するため、ＭＳＡ，ＳＥＬの２データビットを送信すると、以降はスレーブ２側がデータを送信する期間となる。即ち、Slot1＿data及びそれに続くＣＲＣは、マスタ１（１）のデータ送信期間であり、ＣＲＣ（Cyclic Redundancy Check）は、Slot1＿dataについて付された誤り検出符号である。以降同様に、他のスレーブ２により、Slot2＿data，Slot3＿data，・・・Slot＿n＿dataが順次送信される。尚、通信が行われないアイドル期間においては、マスタ１はバス３をＶＬＰ，ＶＬ０に交互にドライブする状態を繰り返している。
【０００６】
以上のように、ＳｂＷでは、２本のバス３（＋，−）によってマスタ１が電源供給期間に電源を供給しながら、スレーブ２との間の通信も行うシリアル通信システムである。
この通信システムを車両に搭載されるエアバッグ装置に適用することを想定すると、複数のスレーブ２が、車両の各部に配置されている加速度センサに対応する。そして、何れかの加速度センサが事故の衝撃を検出すると、その検出信号がスレーブ２からマスタ１に送信される。すると、マスタ１は、図示しないエアバッグ装置のインフレータに点火指令を出力してガスを発生させ、エアバッグを展開させる。
【０００７】
以上の通信システムでは、各スレーブ２は、マスタ１によりＳＯＦが出力されたことを認識するために、基準となるバス３上の１ビット期間長を常時測定しておく必要がある。例えば、特許文献１は、一般的な非同期のシリアル通信を取り扱うＵＡＲＴ（Universal Asynchronous Receiver Transmitter）を想定したものと推察されるビット同期回路について、デューティが崩れたデータを抽出する技術が開示されている。即ち、この特許文献１では、入力データ波形の立上り，立下りを検出してデータ幅を求め、そのデータ幅に応じてデータの抽出タイミングを決定するようにしている。
【特許文献１】特開２００２−３７４２３４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
特許文献１に開示されている技術は、基本的に通信速度がシステム毎に予め一定で、また、データレベルはハイ，ロウの２値であることを前提としている。ところが、上述したようにＳｂＷのような通信システムでは、通信速度が可変であると共にバス３のドライブレベルがデータの種類に応じて４値（ＶＬＰを基準とすれば３値）あるため、単一のしきい値を設定してドライブレベルと比較を行い１ビット期間長を測定しようとすると、前回と今回のドライブレベルが異なる場合には立上り，立下りの傾きも異なるため、図７に示すように測定誤差が発生してしまう。そして、ＳｂＷでは、波形の立上り，立下り期間における傾きについては規定されていない。
【０００９】
本発明は上記事情に鑑みてなされたものであり、その目的は、マスタとバスを介して接続される複数のスレーブとの間で非同期通信を行う際に、バスのドライブレベルが「３」以上の複数規定されている場合でも、１ビット期間の測定を正確に行うことができる通信システム、及びその通信システムでスレーブとして使用される通信装置を提供することにある。
【課題を解決するための手段】
【００１０】
請求項１記載の通信システムによれば、スレーブは、「３」以上の複数のドライブレベルに対応する複数のしきい値を設定し、バスのドライブ波形の立上り期間において、複数のしきい値の内直前のドライブレベルに最も近い値を超えた時点から、次回に複数のしきい値の内直前のドライブレベルに最も近い値を超えた時点までの時間を計測することにより１ビット期間を計測する。即ち、複数のドライブレベルに対応して異なるしきい値を設定すれば、ドライブレベルが異なることに伴いドライブ波形の立上りの傾きが異なる場合でも、検出タイミングを略一定にすることができる。従って、１ビット期間の計測をより正確に行うことが可能となる。
【００１１】
請求項２記載の通信システムによれば、立上りパルス発生部は、バスのドライブレベルが、複数のしきい値を夫々を超えた場合にパルスを発生させ、立下りパルス発生部は、バスのドライブレベルが複数のしきい値の内最も高いレベルを下回った場合にパルスを発生させる。そして、フリップフロップを、立上りパルス発生部によって出力されるパルスのＯＲ条件によってセットし、立下りパルス発生部によって出力されるパルスによってリセットし、カウントクロックに基づき連続的にカウント動作を行なうカウンタを、フリップフロップがリセット状態で且つ前記パルスのＯＲ条件が成立した場合にクリアする。
【００１２】
即ち、ドライブレベルが最低の状態からドライブ波形が立ち上がる場合を想定すると、レベルの上昇に応じて立上がりパルスは順次出力されるが、直前のドライブレベルに最も近いしきい値を超えて最初の立上がりパルスが出力されるとフリップフロップはセットされるので、カウンタは、上記立上がりパルスの出力タイミングでクリアされる。従って、それ以降に出力される立上がりパルスは無効化される
また、ドライブ波形の立下がり期間では、次回のドライブレベルが何れであっても、複数のしきい値の内最も高いレベルは確実に下回ることになる。従って、上記の立下りパルスによってフリップフロップをリセットすれば、その次の立上り期間における計測に確実に対応することができる。
【００１３】
請求項３記載の通信システムによれば、マスタによってバス上に出力される通信開始信号の期間長が１ビット期間に対して所定の比率を有するように定められている場合、カウンタによって前回カウントされた１ビット期間のカウント値を保持し、その保持されたカウント値と、今回カウンタによってカウントされた１ビット期間のカウント値とを比較する。即ち、今回測定された１ビット期間が、前回に測定された１ビット期間に対して予め定められた比率の期間長を有していれば前者は通信開始信号に他ならない。従って、通信開始信号が出力されたか否かを確実に検出することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明をＳｂＷにより通信を行うシステムに適用した場合の一実施例について図１乃至図３を参照して説明する。図１は、本実施例におけるスレーブ（通信装置）１１の構成を、本発明の要旨に係る部分について示す回路図であり、図２はその動作タイミングチャートである。バス３は、コンパレータ１２の入力端子に接続されており、コンパレータ１２は、マスタ１又は他のスレーブ１１によりドライブされるバス３のレベルを、３つのレベルＶＬ０，ＶＬ１，ＶＬＳ０に応じて設定される３つのしきい値Ａ，Ｂ，Ｃと比較する（図２（ａ）参照）。そして、ドライブレベルが各しきい値を超えると、ハイレベルの入力データＡ，Ｂ，Ｃを、フリップフロップ１３，１４，１５のＤ入力端子に夫々出力するようになっている（図２（ｃ），（ｄ），（ｅ）参照）。
【００１５】
Ｄフリップフロップ１３，１４，１５の次段には、Ｄフリップフロップ１６，１７，１８が夫々接続されており、Ｄフリップフロップ１６，１７，１８のＱ出力端子は、ＡＮＤゲート１９，２０，２１の負論理入力端子に接続されている。ＡＮＤゲート１９，２０，２１の他方の入力端子は、Ｄフリップフロップ１３，１４，１５のＱ出力端子に接続されている。
【００１６】
ＡＮＤゲート１９，２０，２１の出力端子は、３入力ＯＲゲート２２の入力端子に夫々接続されており、ＯＲゲート２２の出力端子は、ＲＳフリップフロップ２３のＳ入力端子に接続されている。また、Ｄフリップフロップ１３，１６のＱ出力端子は、ＡＮＤゲート２４の負論理入力端子，正論理入力端子に夫々接続されており、ＡＮＤゲート２４の出力端子は、ＲＳフリップフロップ２３のＲ入力端子に接続されている。ＲＳフリップフロップ２３のＱ出力端子は、ＡＮＤゲート２５の負論理入力端子に接続されており、ＡＮＤゲート２５の他方の入力端子は、ＯＲゲート２２の出力端子に接続されている。
【００１７】
ＡＮＤゲート２５の出力端子は、カウンタ２６のクリア入力端子ＣＬＲに接続されており、カウンタ２６のカウントデータは、次段のＨＯＬＤレジスタ２７と比較回路２８とに与えられている。また、ＡＮＤゲート２５の出力端子は、ＨＯＬＤレジスタ２７並びに比較回路２８のイネーブル端子ＥＮにも接続されている。比較回路２８は、カウンタ２６のカウント値と、ＨＯＬＤレジスタ２７によってＨＯＬＤされたデータとを比較する。
そして、Ｄフリップフロップ１３〜１８，ＲＳフリップフロップ２３，カウンタ２６，ＨＯＬＤレジスタ２７のクロック入力端子には、例えば８ＭＨｚ程度のクロック信号ＣＬＫが与えられている。
【００１８】
カウンタ２６は、クロック信号ＣＬＫの立上りエッジでアップカウント動作を行ない、ＡＮＤゲート２５より出力される信号ＵＰ＿ＥＤＧＥがハイレベルになると、その次の立上りエッジでゼロクリアされる。ＨＯＬＤレジスタ２７も、イネーブル端子ＥＮに与えられている信号ＵＰ＿ＥＤＧＥがハイレベルになると、次の立上りエッジでカウンタ値をホールドする。尚、カウンタ２６がゼロクリアされるタイミングは、レジスタ２７におけるホールドのタイミングよりも若干遅れるため。ＨＯＬＤレジスタ２７はゼロクリアされる直前の最大カウント値をホールドすることができる。そして、比較回路２８は、信号ＵＰ＿ＥＤＧＥがハイレベルになると、その時点におけるカウンタ２６のカウント値と、ＨＯＬＤレジスタ２７の出力データとを比較し、前者が後者の２倍の値である場合にＳＯＦ検出信号を出力するようになっている。
尚、以上の構成において、Ｄフリップフロップ１３〜１８及びＡＮＤゲート１９〜２１は立上りパルス発生部２９を構成しており、Ｄフリップフロップ１３，１６及びＡＮＤゲート２４は立上りパルス発生部３０を構成している。
【００１９】
次に、本実施例の作用について図２及び図３も参照して説明する。上述したように、ＳｂＷにおいて通信が行われる場合、若しくはアイドル状態の場合の何れにおいても、バス３はマスタ１又はスレーブ１１によってドライブされている。図２（ａ）に示す例では、バス３が前回のデータ期間でＶＬ０にドライブされ、電力供給期間を経た次のデータ期間でＶＬＳ０にドライブされている。
【００２０】
コンパレータ１２が、ドライブ波形の立上がり期間に入力データＡ，Ｂ，Ｃを順次出力すると、Ｄフリップフロップ１３，１４，１５はそれらをクロック同期させる。そして、ＡＮＤゲート１９，２０，２１は、入力データＡ，Ｂ，Ｃの立上りに応じてクロック信号ＣＬＫの１周期分のワンショットパルスＵＰ＿Ａ，ＵＰ＿Ｂ，ＵＰ＿Ｃを出力する（図２（ｆ），（ｈ），（ｉ）参照）。ＯＲゲート２２は、それらのＯＲ信号であるＵＰ＿ＯＲを出力してＲＳフリップフロップ２３をセットするので、信号ＦＩＬＬがハイレベルとなる（図２（ｋ）参照）。
【００２１】
また、ＡＮＤゲート２４は、入力データＡの立下がりに応じたワンショットパルスＤＷＮ＿Ａを出力して（図２（ｇ）参照）ＲＳフリップフロップ２３をリセットするので、信号ＦＩＬＬがロウレベルとなる（図２（ｋ）参照）。従って、図２（ａ）の最初の立上り期間では、前提として、前回のデータ期間のドライブレベルがＶＬ０であるから、そのドライブの際の立下り期間で信号ＦＩＬＬがロウレベルとなっている。その状態から、ドライブレベルがしきい値Ａを超えると入力データＡがハイレベルとなり（図２（ｃ）参照）、ＵＰ＿Ａ，ＵＰ＿ＯＲがアクティブとなる（図２（ｆ），（ｊ）参照）。
【００２２】
すると、その時点でＡＮＤゲート２５の出力端子がハイレベルとなって信号ＵＰ＿ＥＤＧＥがアクティブとなるが、ＲＳフリップフロップ２３は次のクロックの立上りエッジでセットされるので（ＦＩＬＬ：Ｈ）、信号ＵＰ＿ＥＤＧＥもワンショットパルスとして出力される（図２（ｌ）参照）。そして、カウンタ２６は、次のクロックの立上りエッジでゼロクリアされる（図２（ｍ）参照）。
【００２３】
この時点を起点として、１ビット期間の測定動作を説明する。信号ＵＰ＿ＥＤＧＥがアクティブになると、カウンタ２６はゼロクリアされてアップカウントを継続する。バス３のドライブレベルは、電源供給期間のＶＬＰから、次のデータ期間のドライブレベルＶＬＳ０に向って立下がるが、その立下りの過程で、入力データＡ，Ｂ，Ｃのレベルは順次ハイからロウに変化する（図２（ｃ），（ｄ），（ｅ）参照）。そして、入力データＡの立下がりで信号ＤＷＮ＿Ａが出力され（図２（ｇ）参照）、信号ＦＩＬＬがロウレベルとなる（図２（ｋ）参照）。
【００２４】
次のデータ期間におけるバスドライブが終了すると、ドライブレベルはＶＬＳ０から次の電源供給期間のレベルＶＬＰに向って立ち上がる。すると、今度はその立ち上がりの過程で入力データＣ，Ｂ，Ａが順次立上り、信号ＵＰ＿Ｃ，ＵＰ＿Ｂ，ＵＰ＿Ａが順次アクティブとなる（図２（ｉ），（ｈ），（ｆ）参照）。この時、信号ＵＰ＿ＯＲは連続的にハイレベルを示すが（図２（ｊ）参照）、このケースでは、最初に信号ＵＰ＿Ｃが出力された時点で信号ＵＰ＿ＥＤＧＥが出力された後（図２（ｌ）参照）信号ＦＩＬＬがハイレベルとなるので（図２（ｋ）参照）、信号ＵＰ＿Ｂ，ＵＰ＿Ａの出力は無効化される。
【００２５】
そして、信号ＵＰ＿ＥＤＧＥが出力されると、比較回路２８は、その時点におけるカウンタ２６のカウント値「２０」と、ＨＯＬＤレジスタ２７の出力データ、即ち、前回カウンタ２６によってカウントされた最大値データとを比較する。また、ＨＯＬＤレジスタ２７はカウンタ２６のカウント値「２０」をホールドし（ｎ）、カウンタ２６は、次のクロック信号ＣＬＫの立上りエッジでゼロクリアされる（ｍ）。即ち、信号ＵＰ＿ＥＤＧＥが出力される間隔が１ビット期間に対応しており、カウンタ２６がクリアされる直前の最大カウント値が、その１ビット期間に対応するカウントデータになる。
【００２６】
ここで、比較回路２８における比較において、カウンタ２６のカウント値が「４０」であり、ＨＯＬＤレジスタ２７の出力データが「２０」であるとすれば、今回測定された１ビット期間は前回測定された期間の２倍に相当するから、マスタ１によってＳＯＦがバス３上に出力されたことが検出される。そして、スレーブ１１は、ＳＯＦが検出されたことで通信の開始を認識し、通信処理に対応する動作を行なうことになる。
【００２７】
また、通信が開始された場合に出力される信号ＵＰ＿ＥＤＧＥ（状態遷移トリガ）は、１ビット期間の区切りを示す信号であるから、ＳＯＦの出力を起点として信号ＵＰ＿ＥＤＧＥの出力数をカウントすれば、バス３上に出力されているデータビット数を把握することができる。従って、各スレーブ１２は、マスタ１に対して自身がデータを送信するための期間などを判定して通信処理を行なうことが可能となる。
そして、上記のように１ビット期間の測定を行うことで、図３（ａ）に示すように、各データ期間のドライブレベルが異なることでドライブ波形の立上りの傾きが異なる場合でも、各レベルに対応したしきい値を夫々設定すれば各しきい値を超えるタイミングが同一となり、測定が正確になる。
【００２８】
以上のように本実施例によれば、ＳｂＷ通信システムのスレーブ１１は、コンパレータ１２において３段階のドライブレベルに対応する複数のしきい値Ａ，Ｂ，Ｃを設定し、バス３のドライブ波形の立上り期間において、複数のしきい値Ａ〜Ｃの内直前のドライブレベルに最も近い値を超えた時点から、次回に複数のしきい値の内直前のドライブレベルに最も近い値を超えた時点までの時間を計測して１ビット期間を計測するようにした。従って、ドライブレベルが異なることに伴いドライブ波形の立上りの傾きが異なる場合でも、検出タイミングを略一定にすることができ、１ビット期間の計測をより正確に行うことが可能となる。
【００２９】
具体的には、立上りパルス発生部２９は、バス３のドライブレベルが、各しきい値Ａ〜Ｃを夫々を超えた場合に夫々ワンショットパルスを発生させ、立下りパルス発生部３０は、バス３のドライブレベルが最も高いしきい値Ａを下回った場合にワンショットパルスを発生させる。そして、ＲＳフリップフロップ２３を、立上りパルス発生部２９によって出力されるパルスのＯＲ条件でセットし、立下りパルス発生部３０によって出力されるパルスによってリセットし、カウンタ２６を、ＲＳフリップフロップ２３がリセット状態で且つ前記パルスのＯＲ条件が成立した場合にクリアするようにした。
【００３０】
従って、直前のドライブレベルに最も近いしきい値を超えて最初の立上がりパルスが出力されるとＲＳフリップフロップ２３がセットされて、カウンタ２６は上記立上がりパルスの出力タイミングでクリアされるので、それ以降に出力される立上がりパルスを無効化することができる。そして、上記の立下りパルスによってＲＳフリップフロップ２３をリセットすることで、その次の立上り期間における１ビット期間の計測に確実に対応することができる。
また、マスタ１によってバス３上に出力されるＳＯＦの期間長が１ビット期間の２倍である場合、カウンタ２６によって前回カウントされた１ビット期間のカウント値をＨＯＬＤレジスタ２７で保持し、その保持されたカウント値と、今回カウンタ２６によってカウントされた１ビット期間のカウント値とを比較回路２８で比較するので、ＳＯＦが出力されたか否かを確実に検出することができる。
【００３１】
本発明は上記し又は図面に記載した実施例にのみ限定されるものではなく、以下のような変形が可能である。
クロック信号ＣＬＫの周波数は８ＭＨｚに限ることはない。
エアバッグ装置に適用するものに限ることなく、複数のスレーブを介して得られる情報をマスタに送信する必要がある通信システムであれば、適用が可能である。
マスタと複数のスレーブとのバス接続形態は、その他、ツリー形式やリング形式などであっても良い。
通信プロトコルは、ＳｂＷに限ることはない。少なくとも、マスタとバスを介して接続される複数のスレーブとの間で非同期通信を行うもので、マスタがバスに電源を供給する電源供給期間と、マスタ又はスレーブがバスをドライブして１ビットのデータを当該バス上に出力するデータ期間とを併せてなる１ビット期間の連続により通信を行うプロトコルを採用する通信プロトコルであれば適用が可能である。
バスのドライブレベルは、データの種類に応じて３段階若しくは５段階以上であっても良い。
【図面の簡単な説明】
【００３２】
【図１】本発明をＳｂＷにより通信を行うシステムに適用した場合の一実施例であり、スレーブの構成を本発明の要旨に係る部分について示す回路図
【図２】スレーブの動作タイミングチャート
【図３】１ビット期間を測定する際に、異なるドライブレベルに応じて複数のしきい値を設定することの効果を説明する図
【図４】従来の通信システムの一例を示す図
【図５】ＳｂＷによる通信でデータを送信する場合に、マスタ若しくはスレーブがバスをドライブする場合の電圧波形を示す図
【図６】マスタ−スレーブ間におけるデータ通信の一例を示す図
【図７】従来技術の問題を説明する図
【符号の説明】
【００３３】
図面中、１はマスタ、３はバス、１１はスレーブ（通信装置）、１２はコンパレータ、２２はＯＲゲート、２３はＲＳフリップフロップ、２６はカウンタ、２７はＨＯＬＤレジスタ、２８は比較回路、２９は立上りパルス発生部、３０は立上りパルス発生部を示す。
【図１】
2007181035.tif 000003
【図２】
2007181035.tif 000004
【図３】
2007181035.tif 000005
【図４】
2007181035.tif 000006
【図５】
2007181035.tif 000007
【図６】
2007181035.tif 000008
【図７】
2007181035.tif 000009