(57)【要約】【課題】ＬＩＮ通信プロトコルを用いたシリアル通信において、送信データのボーレートを変更することなく、シンクブレイク信号が送信できるようにする。【解決手段】マイコン１００は、メッセージフレームの送信開始時に、シンクブレイク専用ポートＰ１からハイレベルの信号を１３ビットの間出力する。シンクブレイク生成回路３００は、その出力によりシンクブレイク信号を生成し、ＬＩＮドライバ回路２００のＴＸ端子に入力する。この後、マイコン１００は、メッセージフレームのシンクブレイク信号を除く部分の信号をＬＩＮドライバ２００のＴＸ端子に入力する。【選択図】　　　　図１
2004139319.tif 000002
【特許請求の範囲】
【請求項１】
所定ビット数より大きいビット数の連続した同一レベルの信号と所定ビット数毎の信号からなるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路において、
入力されたメッセージフレームの送信信号により外部と通信を行うドライバ回路（２００）と、
第１の出力ポートと第２の出力ポートとを有し、前記所定ビット数毎の信号を前記第１の出力ポートから前記ドライバ回路（２００）に入力するとともに、前記所定ビット数より大きいビット数の連続した同一レベルの信号を生成させるための信号を前記第２の出力ポートから出力するマイクロコンピュータ（１００）と、
前記マイクロコンピュータ（１００）の前記第２の出力ポートから前記信号が出力されると、前記所定ビット数より大きいビット数の連続した同一レベルの信号を生成して前記ドライバ（２００）に入力する信号生成回路（３００）と、を備えたことを特徴とするシリアル通信回路。
【請求項２】
ＬＩＮ通信プロトコルによるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路において、
入力されたメッセージフレームの送信信号により外部と通信を行うドライバ回路（２００）と、
第１の出力ポートと第２の出力ポートを有し、前記メッセージフレームの送信信号のうちシンクブレイク信号を除く信号を前記第１の出力ポートから前記ドライバ回路（２００）に入力するとともに、前記シンクブレイク信号を生成させるための信号を前記第２の出力ポートから出力するマイクロコンピュータ（１００）と、
前記マイクロコンピュータ（１００）の前記第２の出力ポートから前記信号が出力されると、前記シンクブレイク信号を生成して前記ドライバ（２００）に入力するシンクブレイク生成回路（３００）と、を備えたことを特徴とするシリアル通信回路。
【請求項３】
前記シンクブレイク生成回路（３００）は、制御端子が前記マイクロコンピュータ（１００）の前記第２のポートに接続されたトランジスタ（３１０）を有し、このトランジスタ（３１０）の作動により、前記シンクブレイク信号を生成して前記ドライバ（２００）に入力するようになっていることを特徴とする請求項２に記載のシリアル通信回路。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、シリアル通信回路に関するもので、ＬＩＮ（Ｌｏｃａｌ　Ｉｎｔｅｒｃｏｎｎｅｃｔ　Ｎｅｔｗｏｒｋ）通信プロトコルによるシリアル通信回路に適用して好適である。
【０００２】
【従来の技術】
従来より、車両において、多種多様な信号が車内の機器同士でやりとりされている。この種の多重通信回路としては、部品点数を少なくし、通信回路の簡略化を図ったものがある（例えば、特許文献１参照）。
【０００３】
また、車両において、例えばエンジンを制御し、またエンジンの状態を検知して他の装置に通知するエンジン制御装置、受信した信号に基づいてブレーキを制御するブレーキ制御装置、エアサスペンションを制御し、またエアサスペンションの状態を検知して他の装置に通知するエアサス制御装置等が、車両ＬＡＮと呼ばれるＬＡＮ（ローカルエリアネットワーク）を介して通信をしている。そして、車内ＬＡＮの通信プロトコルのひとつとして、ＬＩＮ通信プロトコルが広く利用されている。
【０００４】
【特許文献１】
特開２００２−３３７４０号公報（段落「００１１」〜「００２５」）
【０００５】
【発明が解決しようとする課題】
上記したＬＩＮ通信プロトコルを用いたシリアル通信回路について、本発明者らが検討を行った回路構成を図２に示す。ＬＩＮ通信プロトコルは、マスタ／スレーブ型のシリアル通信方式であり、図２に示すマイクロコンピュータ（以下、単にマイコンという）１００およびＬＩＮドライバ２００をマスタとし、このＬＩＮドライバ２００のＬＩＮ端子のＬＩＮバスと対称にスレーブのＬＩＮドライバおよびマイコン（いずれも図示せず）が接続され、マスタのマイコン１００とスレーブのマイコン間で双方向のシリアル通信が行われる。
【０００６】
また、ＬＩＮドライバ２００のＬＩＮ端子には、複数のスレーブのＬＩＮドライバのＬＩＮ端子がマルチ接続され、マスタのマイコンは、これらのＬＩＮドライバにそれぞれ接続されたスレーブの各マイコンと通信を行っている。
【０００７】
図２に示すように、マイコン１００は、シリアル通信用のＵＡＲＴ１端子およびＵＡＲＴ２端子の２つのＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ　Ａｓｙｎｃｈｒｏｎｏｕｓ　Ｒｅｃｅｉｖｅｒ　Ｔｒａｎｓｍｉｔｔｅｒ）ポートを有しており、マイコン１００とＬＩＮドライバ２００間の通信は、これらのＵＡＲＴポートを使用して行われる。
【０００８】
図３に、ＬＩＮドライバ２００のＴＸ端子、ＲＸ端子およびＬＩＮ端子におけるＬＩＮ通信プロトコルのメッセージフレームの構成を示す。図に示すように、メッセージフレーム（ＭＥＳＳＡＧＥ　ＦＲＡＭＥ）は、シンクブレイク部（ＳＹＮＣＨ　ＢＲＡＫＥ）、シンク部（ＳＹＮＣＨ　ＦＩＥＬＤ）、識別部（ＩＤＥＮＴＩＦＩＲＥ　ＦＩＥＬＤ）からなるヘッダー（ＨＥＡＤＥＲ）と、複数のデータ部（ＤＡＴＡ　ＦＩＥＬＤ）およびチェックサム部（ＣＨＥＣＫＳＵＭ　ＦＩＥＬＤ）とからなるレスポンス（ＲＥＳＰＯＮＳＥ）により構成される。また、ヘッダーとレスポンス間には、レスポンススペース（ＲＥＳＰＯＮＳＥ　ＳＰＡＣＥ）が設けられている。
【０００９】
シンクブレイク部は、マスタのマイコン１００から送信されるメッセージフレームであることを示すための領域であり、ビット数は最小１３ビットである。なお、シンクブレイク部の最大ビット数についての規定はなく、メッセージフレーム全体の時間の規定により、シンクブレイク部の最大ビット数は制限される。
【００１０】
なお、ＬＩＮ通信において、デジタル信号の０はドミナント、デジタル信号の１はレセッシブとして表現される。
【００１１】
つまり、マスタのマイコン１００は、メッセージフレーム送信時にシンクブレイク部を最小１３ビットの連続したローレベル、すなわち、最小１３ビットの連続したドミナント信号として出力する。
【００１２】
また、識別部、各データ部、チェックサム部はそれぞれ８ビットで、それぞれには図４に示すようにローレベルのスタートビットとハイレベルのストップビットが付加される。
【００１３】
また、シンクブレイク部とシンク部間、シンク部と識別部間、各データ部間、データ部とチェックサム部間には任意ビットの間隔があり、この部分はハイレベルに設定される。また、ヘッダーとレスポンス間のレスポンススペースにおいてもハイレベルに設定される。
【００１４】
以下、上記したＬＩＮ通信プロトコルのメッセージフレームを、図２におけるマイコン１００により生成する例について示す。
【００１５】
マイコン１００は、ＵＡＲＴ１端子からの送信データの出力を停止すると、ＵＡＲＴ１端子の電圧レベルがハイレベルとなるように構成されており、メッセージフレームの送信終了から次のメッセージフレームの送信開始までの間と、ヘッダーとレスポンス間のレスポンススペースにおいて、ＵＡＲＴ１端子の出力が停止されることにより、ＬＩＮドライバ２００のＴＸ端子には、連続したハイレベルのデータが出力される。
【００１６】
なお、マイコン１００のＵＡＲＴ１端子からは、８ビットのデータ（１バイト）毎にシリアルデータが送信され、必要に応じてスタートビット、ストップビット、パリティビットを付加する構成となっている。
【００１７】
また、マイコン１００は、ＵＡＲＴ１端子およびＵＡＲＴ２端子のボーレートの設定（例えば、４８００ｂｐｓ、９６００ｂｐｓ、１９２００ｂｐｓ等）、ストップビットの付加を含めた送受信データフォーマット長（７ビットまたは８ビット）等の変更が可能となっている。
【００１８】
したがって、識別部、データ部およびチェックサム部の各８ビットのデータにローレベルのスタートビットとハイレベルのストップビットを付加し、それぞれ任意ビットの間隔を設けることにより、メッセージフレームのシンクブレイク部を除く部分が構成されるようになっている。
【００１９】
ところで、図４に示すように、スタートビットの直前のビットとストップビットはハイレベルとなっているため、連続してローレベルを生成できるビット数は、ストップビットと８ビットのデータを含む最長９ビットとなる。
【００２０】
つまり、マイコン１００のＵＡＲＴ１端子からは、８ビットのデータ（１バイト）毎にシリアルデータが送信される構成となっているため、マイコン１００のＵＡＲＴ１端子から１０ビット以上の連続したローレベルの信号を出力することができない。すなわち、最小１３ビットの連続したローレベルの信号であるシンクブレイク信号を出力することができないといった問題が生じる。
【００２１】
このため、メッセージフレームの途中でボーレートを低速にすることで、１ビットの当たりのビット幅を長くし、１３ビット以上の連続したローレベルの信号とみなすデータを生成する方法が考えられる。
【００２２】
例えば、シンクブレイク部を除く部分ではボーレートを９６００ｂｐｓに設定し、シンクブレイク部ではボーレートを４８００ｂｐｓに設定すると、シンクブレイク部における１ビットの幅はシンクブレイク部を除く部分と比較して２倍となる。
【００２３】
したがって、シンクブレイク部を８ビットとして、１／２のボーレートで送信すれば、２倍の１６ビット分の連続したローレベルの信号とみなすデータが送出される。
【００２４】
このようにして、１６ビットの連続したローレベルのシンクブレイク信号を生成することが可能である。
【００２５】
しかし、上記したようにメッセージデータの途中でボーレートの変更を行うようにすると構成が複雑になり、それをプログラムで行った場合には、別途プログラムを追加する必要があり、プログラムが複雑となってしまう。
【００２６】
また、上記したように、ＬＩＮ通信プロトコルを適用したシリアル通信において、シンクブレイク信号を出力することができないといった問題に限ることなく、所定ビット数より大きいビット数の連続した同一レベルの信号と所定ビット数毎の信号からなるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路において、所定ビット数より大きいビット数の連続した同一レベルの信号を出力することができないといった問題が生じうる。
【００２７】
本発明は上記問題に鑑みたもので、送信データのボーレートを変更することなく、所定ビット数より大きいビット数の連続した同一レベルの信号を送信することができるシリアル通信回路を提供することを目的とする。
【００２８】
【課題を解決するための手段】
上記目的を達成するため、請求項１に記載の発明では、所定ビット数より大きいビット数の連続した同一レベルの信号と所定ビット数毎の信号からなるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路において、入力されたメッセージフレームの送信信号により外部と通信を行うドライバ回路（２００）と、第１の出力ポートと第２の出力ポートとを有し、前記所定ビット数毎の信号を前記第１の出力ポートから前記ドライバ回路（２００）に入力するとともに、前記所定ビット数より大きいビット数の連続した同一レベルの信号を生成させるための信号を前記第２の出力ポートから出力するマイクロコンピュータ（１００）と、前記マイクロコンピュータ（１００）の前記第２の出力ポートから前記信号が出力されると、前記所定ビット数より大きいビット数の連続した同一レベルの信号を生成して前記ドライバ（２００）に入力する信号生成回路（３００）と、を備えたことを特徴としている。
【００２９】
このように信号生成回路（３００）を設けることにより、送信データのボーレートを変更することなく、メッセージフレームの送信信号における所定ビット数より大きいビット数の連続した同一レベルの信号を生成して、送信することができる。
【００３０】
請求項２に記載の発明では、ＬＩＮ通信プロトコルによるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路において、入力されたメッセージフレームの送信信号により外部と通信を行うドライバ回路（２００）と、第１の出力ポートと第２の出力ポートを有し、前記メッセージフレームの送信信号のうちシンクブレイク信号を除く信号を前記第１の出力ポートから前記ドライバ回路（２００）に入力するとともに、前記シンクブレイク信号を生成させるための信号を前記第２の出力ポートから出力するマイクロコンピュータ（１００）と、前記マイクロコンピュータ（１００）の前記第２の出力ポートから前記信号が出力されると、前記シンクブレイク信号を生成して前記ドライバ（２００）に入力するシンクブレイク生成回路（３００）と、を備えたことを特徴としている。
【００３１】
このようにシンクブレイク生成回路（３００）を設けることにより、送信データのボーレートを変更することなく、メッセージフレームの送信信号におけるシンクブレイク信号を生成して送信することができる。
【００３２】
この場合、シンクブレイク生成回路（３００）を、請求項３に記載の発明のように、制御端子が前記マイクロコンピュータ（１００）の前記第２のポートに接続されたトランジスタ（３１０）を有し、このトランジスタ（３１０）の作動により、前記シンクブレイク信号を生成して前記ドライバ（２００）に入力するように構成することができる。
【００３３】
なお、上記各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示すものである。
【００３４】
【発明の実施の形態】
（第１実施形態）
本発明の一実施形態に係るシリアル通信回路の構成を図１に示す。第１の実施形態では、図２に示したシリアル通信回路と比較して、シンクブレイク生成回路３００を備えた点が異なる。
【００３５】
図に示すように、シンクブレイク生成回路３００は、ＮＰＮ型バイポーラトランジスタ３１０、抵抗３１０ａ、３１０ｂおよびコンデンサ３２０により構成されている。
【００３６】
マイコン１００の第１の出力ポートとしてのＵＡＲＴ１端子は、ＬＩＮ通信プロトコルのメッセージフレームの送信用として使用され、抵抗１１０ｂを介してドライバ回路としてのＬＩＮドライバ２００のＴＸ端子に接続されている。
【００３７】
また、マイコン１００のＵＡＲＴ２端子は、ＬＩＮ通信プロトコルのメッセージフレームの受信用として使用され、抵抗１１０ａを介してＬＩＮドライバ２００のＲＸ端子に接続されている。
【００３８】
マイコン１００の第２の出力ポートとしてのシンクブレイク専用ポートＰ１は、抵抗３１０ａを介してトランジスタ３１０のベースに接続されている。
【００３９】
また、コンデンサ３２０はノイズ対策用であり、抵抗３１０ａ、３１０ｂは、トランジスタ３１０のベース電位の調整用である。
【００４０】
マイコン１１０のシンクブレイク専用ポートＰ１からローレベルの信号が出力されると、トランジスタ３１０はオフとなり、ＬＩＮドライバ２００のＴＸ端子にはマイコン１００のＵＡＲＴ１端子からのシリアルデータが入力される。
【００４１】
また、マイコン１００のシンクブレイク専用ポートＰ１からハイレベルの信号が出力されると、トランジスタ３１０はオンとなり、ＬＩＮドライバ２００のＴＸ端子にはローレベルの信号が入力される。
【００４２】
したがって、メッセージフレームのシンクブレイク部において、マイコン１００のシンクブレイク専用ポートＰ１の出力レベルをハイレベルにすることで、マイコン１００のＵＡＲＴ１端子の出力信号と関係なく、ＬＩＮドライバ２００のＴＸ端子に連続したローレベルの信号を入力することができる。
【００４３】
以下、マイコン１００からＬＩＮドライバ２００のＴＸ端子にＬＩＮ通信プロトコルのメッセージフレームを送信する手順について説明する。
【００４４】
マイコン１００にはＲＯＭが内蔵されており、このＲＯＭに予め書き込まれたデータによりボーレートが９６００ｂｐｓ、送受信データフォーマット長が８ビットとなるように設定される。
【００４５】
マイコン１００は、メッセージフレームの送信開始前は、ＵＡＲＴ１端子の出力を停止しており、メッセージフレームの送信開始時に、マイコン１００のシンクブレイク専用ポートＰ１からハイレベルの信号を１３ビットの間出力する。
【００４６】
トランジスタ３１０は、マイコン１００のシンクブレイク専用ポートＰ１からのハイレベルの信号によりオンとなり、ＬＩＮドライバ２００のＴＸ端子には、シンクブレイク部に相当する１３ビットの連続したローレベルの信号が入力される。
【００４７】
次に、マイコン１００は、シンクブレイク専用ポートＰ１の出力をローレベルに設定し、同時に、マイコン１００のＵＡＲＴ１端子から、ヘッダーのシンクブレイク部を除いた部分のシリアルデータを出力し、このシリアルデータがＬＩＮドライバ２００のＴＸ端子に入力される。
【００４８】
そして、マイコン１００は、ヘッダーとレスポンス間のレスポンススペースのビット数に相当する時間、ＵＡＲＴ１端子の出力を停止する。そして、ＬＩＮドライバ２００のＴＸ端子には、レスポンススペースとしてのハイレベルの信号が入力される。
【００４９】
次に、マイコン１００は、ＵＡＲＴ１端子から、各データ部およびチェックサム部を含むレスポンスのシリアルデータを送信する。
【００５０】
そして、マイコン１００は、レスポンスのチェックサム部の送信終了時に、ＵＡＲＴ１端子の出力を停止する。そして、ＬＩＮドライバ２００のＴＸ端子にはハイレベルの信号が入力される。
【００５１】
上記のように構成することによって、図３に示すシンクフィールド部のような最小１３ビットの連続したローレベルのドミナント信号であるシンクブレイク信号を送信することができる。
【００５２】
なお、ＬＩＮドライバ２００は、ＴＸ端子から入力されたメッセージフレームをＬＩＮバス入出力としてのＬＩＮ端子から送信する。そして、ＬＩＮ端子から送信されたメッセージフレームは、ＬＩＮバスに接続された複数のＬＩＮドライバを介して各ＬＩＮドライバに接続されたスレーブのマイコンに送信されるとともに、送信したメッセージフレームの正常性を確認するために、ＲＸ端子を介してマイコン１００のＵＡＲＴ２端子に入力される。
【００５３】
そして、スレーブのマイコンは、メッセージフレームの識別部のデータが、予め自分に割り当てられた識別番号である場合には、メッセージフレームのデータ部を取り込み、データ部の内容に応じて処理を行うとともに、マスタのマイコン１００に対してメッセージデータを送信する。
【００５４】
上記したように、この実施形態によれば、シンクブレイク信号の送信時に、第１の出力ポートから送信するシリアルデータに関わらず、シンクブレイク生成回路３００により生成されたシンクブレイク信号をＬＩＮドライバ２００に入力するようにしているので、送信データのボーレートを変更することなく、シンクブレイク信号を生成して送信することができる。
【００５５】
なお、メッセージフレームの識別部のデータが、予め自分に割り当てられた識別番号と異なる場合には、受信したメッセージフレームを廃棄する。
【００５６】
上記した実施形態では、ＬＩＮ通信プロトコルを適用したシリアル通信回路について説明したが、本発明はそのようなシリアル通信回路に限ることなく、所定ビット数より大きいビット数の連続した同一レベルの信号と所定ビット数毎の信号からなるメッセージフレームの送信信号を用いて外部と通信を行うシリアル通信回路に適用することができる。
【００５７】
なお、上記した実施形態において、ＮＰＮ型バイポーラトランジスタ３１０により、ＬＩＮドライバ２００のＴＸ端子のレベルをローレベルにする例を示したが、ＮＰＮ型バイポーラトランジスタに限ることなく、ＰＮＰ型バイポーラトランジスタで構成してもよい。なお、この場合、マイコン１００のシンクブレイク専用ポートＰ１の論理レベルの極性は逆極性となる。
【００５８】
また、バイポーラトランジスタに限ることなく、例えばＭＯＳトランジスタで構成してもよい。
【図面の簡単な説明】
【図１】本発明の第１実施形態におけるシリアル通信回路の構成を示す図である。
【図２】本発明者らが検討を行ったシリアル通信回路の構成を示す図である。
【図３】ＬＩＮ通信プロトコルのメッセージフレームの構成を示す図である。
【図４】シンク部、インデント部、データ部およびチェックサム部の構成を示す図である。
【符号の説明】
１００…マイコン、２００…ＬＩＮドライバ、
３００…シンクブレイク生成回路、３１０…トランジスタ。
【図１】
2004139319.tif 000003
【図２】
2004139319.tif 000004
【図３】
2004139319.tif 000005
【図４】
2004139319.tif 000006