(57)【要約】【課題】  シリアル通信によるデータの送受信を行う電子デバイスを備えた電子装置であって、高効率なデータ伝送を維持したまま、通信期間の誤認及び送信側と受信側のハンドシェイクができないことによる通信エラーを防止し、且つ、信号線の増加によるプリント基板上の占有面積の増加の抑止が測られた電子装置の提供。【解決手段】  基本状態でハイレベルに維持されるＲＤＹ線１５を備えさせ、これを送信側ＩＣ１１によってローレベルにドライブすることによって、送信要求を受信側ＩＣ１２へと伝え、これを受けた受信側ＩＣ１２は、自己の受信準備が整うまでＲＤＹ線１５をローレベルにドライブし、送信側ＩＣ１１は送信要求送出後ＲＤＹ線１５がハイレベルとなるまでデータの送信を行わないことによって、送信側ＩＣ１１と受信側ＩＣ１２とのハンドシェイクを行う。【選択図】  図１
2007036424.tif 000002
【特許請求の範囲】
【請求項１】
相互にシリアル通信によってデータの送受信を行う複数の電子デバイスを備えた電子装置であって、データ送受信用の信号線であるデータ伝送ラインの他に、送信側デバイスと受信側デバイスとの間で送信の停止・再開などの制御を行うための信号線となる制御信号伝送ラインを１本備えることにより、前記電子デバイス間でデータの送受信を行う際には、基本状態においてハイレベル若しくはローレベルに維持されている前記制御信号伝送ラインを、送信側デバイスによって、少なくとも受信側デバイスに信号が到達するまでの期間以上となる所定期間の間、ローレベル若しくはハイレベルとし、当該制御信号伝送ラインがローレベル若しくはハイレベルとなったことを前記受信側デバイスが検知した場合に、当該受信側デバイスにおいてデータ受信の準備ができていない場合には、前記制御信号伝送ラインを、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル若しくはハイレベルとし、前記所定期間の経過後、前記制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、データの送信処理を行うことを特徴とするシリアル通信を行う電子デバイスを備えた電子装置。
【請求項２】
前記データの送信処理時には、１単位分のデータの送信を行い、前記受信側デバイスが当該１単位分のデータを受信した際には、当該受信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、次の１単位分のデータの送信処理を行うことを特徴とする請求項１記載のシリアル通信を行う電子デバイスを備えた電子装置。
【請求項３】
前記データ伝送ラインを２本とし、前記受信側デバイスにおける前記データ受信の準備ができるまでの期間を、前記受信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間とし、当該期間の経過時に、前記制御信号伝送ラインをハイレベル若しくはローレベルとした後に前記受信側デバイスからもデータ送信を行うことにより、前記送信側デバイスと前記受信側デバイス間において、全二重通信を行うことを特徴とする請求項１又は請求項２に記載のシリアル通信を行う電子デバイスを備えた電子装置。
【請求項４】
前記送信側デバイスが、前記受信側デバイスからの１単位分のデータを受信した際には、当該送信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ送受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを検知した場合に、前記送信側デバイス及び前記受信側デバイスが共に１単位分のデータの送受信処理を行うことを特徴とする請求項３記載のシリアル通信を行う電子デバイスを備えた電子装置。
【請求項５】
データ送受信用の信号線であるデータ伝送ラインの他に、送信側デバイスと受信側デバイスとの間で送信の停止・再開などの制御を行うための信号線となる制御信号伝送ラインを１本備えた電子デバイス間におけるシリアル通信方法であって、前記電子デバイス間でデータの送受信を行う際には、基本状態においてハイレベル若しくはローレベルに維持されている前記制御信号伝送ラインを、送信側デバイスによって、少なくとも受信側デバイスに信号が到達するまでの期間以上となる所定期間の間、ローレベル若しくはハイレベルとし、当該制御信号伝送ラインがローレベル若しくはハイレベルとなったことを前記受信側デバイスが検知した場合に、当該受信側デバイスにおいてデータ受信の準備ができていない場合には、前記制御信号伝送ラインを、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル若しくはハイレベルとし、前記所定期間の経過後、前記制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、データの送信処理を行うことを特徴とするシリアル通信方法。
【請求項６】
前記データの送信処理時には、１単位分のデータの送信を行い、前記受信側デバイスが当該１単位分のデータを受信した際には、当該受信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、次の１単位分のデータの送信処理を行うことを特徴とする請求項５記載のシリアル通信方法。
【請求項７】
前記データ伝送ラインを２本とし、前記受信側デバイスにおける前記データ受信の準備ができるまでの期間を、前記受信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間とし、当該期間の経過時に、前記制御信号伝送ラインをハイレベル若しくはローレベルとした後に前記受信側デバイスからもデータ送信を行うことにより、前記送信側デバイスと前記受信側デバイス間において、全二重通信を行うことを特徴とする請求項５又は請求項６に記載のシリアル通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シリアル通信によってデータの送受信を行う電子デバイスを備えた電子装置に関し、特に、当該シリアル通信の高効率化が図られた電子装置に関する。
【背景技術】
【０００２】
電子装置には、電子デバイス（ＩＣ等）を複数備えたものが多数存在しており、装置としての動作を行うために、これらの電子デバイス間でデータの送受信を行う必要がある。これらの電子デバイスがプリント基板上に実装される場合には、相互にデータを送受信するためのデータ伝送線が、プリント基板上に形成される銅箔パターンによって構成される場合が多く、装置の小型化やコスト低減などの要請により、基板面積は限られたものとなるため、電子デバイス間でデータの送受信をシリアル通信方式によって行うことが広く採用されている（パラレル通信によると、信号線を多数必要と（銅箔パターン面積が増大）することとなり、基板面積及びコストの増大を招くため）。
【０００３】
このようなシリアル通信方式に関する従来技術が、特許文献１〜特許文献４などによって開示されている。
【０００４】
【特許文献１】特開平５−２６５９４８号公報
【特許文献２】特開２０００−２０１１９８号公報
【特許文献３】特開２００１−１２７８２６号公報
【特許文献４】特開２００３−１８７５２６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
シリアル通信方式においては、データ伝送用の信号線（全二重通信を行う場合には２本必要）と、データの同期を取るためのクロック信号伝送用の信号線と、を基本的な構成として用いるが、これらの信号線のみで通信を行う場合には、図１３（上記構成における従来のシリアル通信のタイミングチャートの一例）に示されるように、スレーブ（受信）側デバイス１３０２においては、通信期間（特に受信開始時）を、クロック信号があったことによって判断することとなるため、クロック信号ライン１３０３にノイズ混入などによるパルスが発生すると、スレーブ側による通信期間の誤認が生じ、通信エラーを生じるものとなる。また、マスタ（送信）側デバイス１３０１とスレーブ側デバイス１３０２のハンドシェイクを行うことができないため、スレーブ側デバイス１３０２の受信準備ができていない（Ｂｕｓｙ）期間に、マスタ側デバイス１３０１からデータ送信が行われた場合には受信エラーを生じるものとなる。
【０００６】
これに対し、図１４に示されるように、通信期間を宣言するための信号線１４０３と、ハンドシェイクを行うための信号線１４０４と、を別途設けることにより、上記問題を解決するものがあるが、信号線を２本増加させるものであると共に当該電子デバイス（マスタ側デバイス１４０１及びスレーブ側デバイス１４０２）の端子数を増加させるものであるため、当該電子デバイスが実装されるプリント基板の基板面積の有効活用が図れなくなるものであった。一方、通信期間を宣言するための信号線１４０３等を設けることなく、データ伝送用の信号線１４０６上において、送受信されるデータの前後に通信開始や終了を示す情報を付加して通信を行う方法があるが、この場合、データの伝送効率が低下してしまうものであった。
【０００７】
本発明は、上述した点に鑑み、シリアル通信によるデータの送受信を行う電子デバイスを備えた電子装置であって、高効率なデータ伝送を維持したまま、通信期間の誤認及び送信側と受信側のハンドシェイクができないことによる通信エラーを防止し、且つ、信号線の増加によるプリント基板上の占有面積の増加の抑止が図られた電子装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
請求項１のシリアル通信を行う電子デバイスを備えた電子装置は、相互にシリアル通信によってデータの送受信を行う複数の電子デバイスを備えた電子装置であって、データ送受信用の信号線であるデータ伝送ラインの他に、送信側デバイスと受信側デバイスとの間で送信の停止・再開などの制御を行うための信号線となる制御信号伝送ラインを１本備えることにより、前記電子デバイス間でデータの送受信を行う際には、基本状態においてハイレベル若しくはローレベルに維持されている前記制御信号伝送ラインを、送信側デバイスによって、少なくとも受信側デバイスに信号が到達するまでの期間以上となる所定期間の間、ローレベル若しくはハイレベルとし、当該制御信号伝送ラインがローレベル若しくはハイレベルとなったことを前記受信側デバイスが検知した場合に、当該受信側デバイスにおいてデータ受信の準備ができていない場合には、前記制御信号伝送ラインを、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル若しくはハイレベルとし、前記所定期間の経過後、前記制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、データの送信処理を行うことを特徴とする。
【０００９】
上記構成によれば、送信側デバイスがデータの送信を行う際には、基本状態においてハイレベル（若しくはローレベル）に維持されている制御信号伝送ラインが、送信側デバイスによって、所定期間（少なくとも受信側デバイスに信号が到達するまでの期間以上）の間、ローレベル（若しくはハイレベル）とされるため、受信側デバイスにおいて通信期間（通信の開始時）を認識することができ、且つ、受信側デバイスにおいてデータ受信の準備ができていない場合には、制御信号伝送ラインが、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル（若しくはハイレベル）とされるため、送信側デバイスにおいて受信側デバイスが受信できない状態（ビジー状態など）であるか否かを判別することができる（即ちハンドシェイクを行うことができる）。
【００１０】
請求項２のシリアル通信を行う電子デバイスを備えた電子装置は、請求項１記載のシリアル通信を行う電子デバイスを備えた電子装置であって、前記データの送信処理時には、１単位分のデータの送信を行い、前記受信側デバイスが当該１単位分のデータを受信した際には、当該受信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、次の１単位分のデータの送信処理を行うことを特徴とする。
【００１１】
上記構成によれば、１単位分のデータの送受信があるごとに、送信側デバイスと受信側デバイスの間でハンドシェイクが行われる。なお、“１単位分”とは、システムの構成に応じて適宜定められるものであり、例えば、レジスタが１６ビット構成である場合には１６ビットのデータを“１単位分”のデータとするものである。
【００１２】
請求項３のシリアル通信を行う電子デバイスを備えた電子装置は、請求項１又は請求項２に記載のシリアル通信を行う電子デバイスを備えた電子装置であって、前記データ伝送ラインを２本とし、前記受信側デバイスにおける前記データ受信の準備ができるまでの期間を、前記受信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間とし、当該期間の経過時に、前記制御信号伝送ラインをハイレベル若しくはローレベルとした後に前記受信側デバイスからもデータ送信を行うことにより、前記送信側デバイスと前記受信側デバイス間において、全二重通信を行うことを特徴とする。
【００１３】
上記構成によれば、送信側デバイスからのデータ送信要求があった（制御信号伝送ラインがローレベル（若しくはハイレベル）となった）際には、受信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間、受信側デバイスによって制御信号伝送ラインをローレベル（若しくはハイレベル）とし、受信側デバイスの準備が整った際に、制御信号伝送ラインをハイレベル（若しくはローレベル）とすると共に、受信側デバイスからもデータ送信を行うことにより、送信側デバイスと受信側デバイス間において全二重通信が行われる。
【００１４】
請求項４のシリアル通信を行う電子デバイスを備えた電子装置は、請求項３記載のシリアル通信を行う電子デバイスを備えた電子装置であって、前記送信側デバイスが、前記受信側デバイスからの１単位分のデータを受信した際には、当該送信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ送受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを検知した場合に、前記送信側デバイス及び前記受信側デバイスが共に１単位分のデータの送受信処理を行うことを特徴とする。
【００１５】
上記構成によれば、受信側デバイスからのデータ送信もある場合（全二重通信の場合）には、送信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間、送信側デバイスによって制御信号伝送ラインをローレベル（若しくはハイレベル）とし、送信側デバイスの準備が整った際に、制御信号伝送ラインをハイレベル（若しくはローレベル）とするため、送信側デバイス及び受信側デバイスの双方からのハンドシェイクが行われることとなる。
【００１６】
請求項５のシリアル通信方法は、データ送受信用の信号線であるデータ伝送ラインの他に、送信側デバイスと受信側デバイスとの間で送信の停止・再開などの制御を行うための信号線となる制御信号伝送ラインを１本備えた電子デバイス間におけるシリアル通信方法であって、前記電子デバイス間でデータの送受信を行う際には、基本状態においてハイレベル若しくはローレベルに維持されている前記制御信号伝送ラインを、送信側デバイスによって、少なくとも受信側デバイスに信号が到達するまでの期間以上となる所定期間の間、ローレベル若しくはハイレベルとし、当該制御信号伝送ラインがローレベル若しくはハイレベルとなったことを前記受信側デバイスが検知した場合に、当該受信側デバイスにおいてデータ受信の準備ができていない場合には、前記制御信号伝送ラインを、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル若しくはハイレベルとし、前記所定期間の経過後、前記制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、データの送信処理を行うことを特徴とする。
【００１７】
請求項６のシリアル通信方法は、請求項５記載のシリアル通信方法であって、前記データの送信処理時には、１単位分のデータの送信を行い、前記受信側デバイスが当該１単位分のデータを受信した際には、当該受信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、次の１単位分のデータの送信処理を行うことを特徴とする。
【００１８】
請求項７のシリアル通信方法は、請求項５又は請求項６に記載のシリアル通信方法であって、前記データ伝送ラインを２本とし、前記受信側デバイスにおける前記データ受信の準備ができるまでの期間を、前記受信側デバイスにおけるデータ受信及びデータ送信の準備ができるまでの期間とし、当該期間の経過時に、前記制御信号伝送ラインをハイレベル若しくはローレベルとした後に前記受信側デバイスからもデータ送信を行うことにより、前記送信側デバイスと前記受信側デバイス間において、全二重通信を行うことを特徴とする。
【発明の効果】
【００１９】
本発明の請求項１の、相互にシリアル通信によってデータの送受信を行う複数の電子デバイスを備えた電子装置であって、データ送受信用の信号線であるデータ伝送ラインの他に、送信側デバイスと受信側デバイスとの間で送信の停止・再開などの制御を行うための信号線となる制御信号伝送ラインを１本備えることにより、前記電子デバイス間でデータの送受信を行う際には、基本状態においてハイレベル若しくはローレベルに維持されている前記制御信号伝送ラインを、送信側デバイスによって、少なくとも受信側デバイスに信号が到達するまでの期間以上となる所定期間の間、ローレベル若しくはハイレベルとし、当該制御信号伝送ラインがローレベル若しくはハイレベルとなったことを前記受信側デバイスが検知した場合に、当該受信側デバイスにおいてデータ受信の準備ができていない場合には、前記制御信号伝送ラインを、当該受信側デバイスによって、データ受信の準備ができるまでの期間ローレベル若しくはハイレベルとし、前記所定期間の経過後、前記制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、データの送信処理を行うことを特徴とするシリアル通信を行う電子デバイスを備えた電子装置によれば、送信側デバイスがデータの送信を行う際には、受信側デバイスにおいて通信期間（通信の開始時）を認識することができ、且つ、送信側デバイスと受信側デバイスとの間でハンドシェイクを行うことができるため、ノイズ等を原因とする通信エラーが生じることを防止できると共に、“通信期間を認識させるための信号線”と“送信側と受信側のハンドシェイクのための信号線”とを１本の信号線（制御信号伝送ライン）によって構成することができるため、信号線の増加による基板効率の低下を最小限に抑止することができる。また、データ伝送ライン上に制御信号を流す必要がないため、制御信号によってデータ伝送路を占有されることによるデータ伝送効率の低下を招くこともない。
【００２０】
本発明の請求項２の、前記データの送信処理時には、１単位分のデータの送信を行い、前記受信側デバイスが当該１単位分のデータを受信した際には、当該受信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを前記送信側デバイスが検知した場合に、次の１単位分のデータの送信処理を行うことを特徴とする請求項１記載のシリアル通信を行う電子デバイスを備えた電子装置によれば、１単位分のデータの送受信があるごとに、送信側デバイスと受信側デバイスの間でハンドシェイクが行われるため、より通信の信頼性を高めることができる。
【００２１】
本発明の請求項４の、前記送信側デバイスが、前記受信側デバイスからの１単位分のデータを受信した際には、当該送信側デバイスによって、前記制御信号伝送ラインをローレベル若しくはハイレベルとし、次のデータ送受信の準備ができた時点において前記制御信号伝送ラインをハイレベル若しくはローレベルとし、当該制御信号伝送ラインがハイレベル若しくはローレベルとなっていることを検知した場合に、前記送信側デバイス及び前記受信側デバイスが共に１単位分のデータの送受信処理を行うことを特徴とする請求項３記載のシリアル通信を行う電子デバイスを備えた電子装置によれば、全二重通信の場合には、送信側デバイス及び受信側デバイスの双方からのハンドシェイクが行われることとなるため、より通信の信頼性を高めることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の具体的実施例について、図面を参照しながら説明する。なお、以下の実施態様は、本発明を具体化する際の一形態であって、本発明をその範囲内に限定するためのものではない。
【実施例１】
【００２３】
図１は、本実施例の複数の電子デバイス（ＩＣ）を備えた電子装置の本発明に関する部分（ＩＣ間においてシリアル通信行うための配線）の概略を示したブロック図である。図２は、本発明に関するシリアル通信の概念を説明するためのタイミングチャートである。
【００２４】
図１に示されるように、本実施例の電子装置は、複数の電子デバイス（ＩＣ１１、ＩＣ１２）を備えており、それぞれのＩＣには、データの同期をとるためのクロック信号を伝送するクロック信号ライン１６が接続されるＣＬＫ端子１１２・ＣＬＫ端子１２２と、送受信されるデータを伝送するためのデータ伝送ライン１７が接続されるＤａｔａ端子１１３・Ｄａｔａ端子１２３と、通信の制御のための制御信号を伝送するための制御信号伝送ライン１５が接続されるＲＤＹ端子１１１・ＲＤＹ端子１２１などが備えられる。
【００２５】
制御信号伝送ライン１５は、本実施例では、抵抗を介して定電圧源（例えば５Ｖの電源ライン）に接続される等により、基本状態においてハイレベルに維持されるものであり、ＩＣ１１若しくはＩＣ１２は、ＲＤＹ端子１１１・ＲＤＹ端子１２１によって当該制御信号伝送ライン１５の電圧レベルを監視すると共に、必要に応じて制御信号伝送ライン１５をローレベルにドライブする。
【００２６】
以下、ＩＣ１１を送信側デバイス、ＩＣ１２を受信側デバイスとして、両ＩＣ間におけるデータの送受信処理の動作概念を説明する。図３は送信側デバイスとなるＩＣ１１の本発明に関する部分の処理の概念を示したフローチャートである。図４は受信側デバイスとなるＩＣ１２の本発明に関する部分の処理の概念を示したフローチャートである。
【００２７】
図３及び図４を参照しつつ、本発明に関するシリアル通信の概念を説明する。送信側のＩＣ１１においてデータ送信要求が発生した場合には、データ送信の準備（送信するデータを、ＩＣ１１に備えられる送信用バッファに格納する処理など）を行い、これが完了した際には（図３：ステップ３０１）、ＩＣ１１によって制御信号伝送ライン１５をローレベルにドライブする（ステップ３０２）。受信側のＩＣ１２では、制御信号伝送ライン１５がローレベルとなったか否か（即ち、ＩＣ１１からの送信要求の有無）を監視しており（図４：ステップ４０１）、これがローレベルとなった際にはデータ受信が可能な状態であるか否か（例えば、ＩＣ１２が他の処理でＢｕｓｙ状態でないかどうか、受信用バッファが空いているか否か等）を判別し（ステップ４０２）、受信可能でない場合には受信可能となるまで制御信号伝送ライン１５をＩＣ１２によってローレベルにドライブする（ステップ４０２〜ステップ４０３）。
【００２８】
送信側のＩＣ１１では、ステップ３０２におけるＩＣ１１による制御信号伝送ライン１５のローレベルドライブの後に、所定期間（少なくともＩＣ１２に信号が到達する（制御信号伝送ライン１５がローレベルになったことをＩＣ１２が検知できる）までの期間以上となる期間であり、装置の仕様等に応じて予め定められる）の経過を待ち（図３：ステップ３０３）、これが経過した後に、制御信号伝送ライン１５のＩＣ１１によるローレベルドライブを停止する（ステップ３０４）。次に、制御信号伝送ライン１５がハイレベルとなっているか否か（即ち、ＩＣ１２によって制御信号伝送ライン１５がローレベルとされているか否か、言い換えればＩＣ１２が受信可能状態であるか否か）を判別し（ステップ３０５）、ハイレベルである場合に、データの送信処理を行う（ステップ３０６）。一方、受信側のＩＣ１２においても、制御信号伝送ライン１５がハイレベルとなっているか否かを判別し（図４：ステップ４０４）、これがハイレベルになった場合は、ＩＣ１１からのデータ送信処理があることを意味するため、ステップ４０５においてデータの受信処理を行う。それぞれのＩＣでは、データの送受信処理（ステップ３０６（図３）若しくはステップ４０５（図４）の処理）の後、ステップ３０１若しくはステップ４０１へと戻って、上記処理を繰返す。
【００２９】
次に図２を参照しつつ、上記の処理概念について説明を加える。図２（ａ）は、送信側ＩＣ１１による制御信号伝送ライン１５への制御信号波形を示すものであり、同（ｂ）は、受信側ＩＣ１２による制御信号伝送ライン１５への制御信号波形、同（ｃ）は、上記送信側ＩＣ１１及び受信側ＩＣ１２による制御信号によって制御信号伝送ライン１５上に発生する波形を示す図である。図２（ｄ）は、クロック信号ライン１６上の波形を、図２（ｅ）は、データ伝送ライン１７上のデータ送信のタイミングを示す図である。
【００３０】
時刻ｔ１において、送信側のＩＣ１１においてデータ２０１の送信要求が発生し、ｔ１〜ｔ３の所定期間の間、送信側ＩＣ１１によって制御信号伝送ライン１５がローレベルにドライブされる（図３：ステップ３０２〜ステップ３０３）。時刻ｔ２に、制御信号伝送ライン１５がローレベルとなったことを検出した受信側ＩＣ１２は（図４：ステップ４０１）、この時データ受信可能状態であったため、制御信号伝送ライン１５をローレベルドライブすることなく（ステップ４０２）、ステップ４０４へと移行する。時刻ｔ３に至ると、送信側ＩＣ１１は制御信号伝送ライン１５に対するローレベルドライブを停止する（図３：ステップ３０４）。このとき、制御信号伝送ライン１５はハイレベルとなるため、データ２０１の送信処理（クロック信号ライン１６へのクロック信号の送出及びデータ伝送ライン１７へのデータ２０１の送出処理）を行う（ステップ３０６）。受信側ＩＣ１２では、時刻ｔ３において制御信号伝送ライン１５がハイレベルとなったことを検知した（図４：ステップ４０４）際に、データ受信処理を行う（ステップ４０５）。
【００３１】
時刻ｔ４においてデータ２０２の送信要求が発生した際に、時刻ｔ５で制御信号伝送ライン１５がローレベルとなったことを検出した受信側ＩＣ１２は、この時データ受信できない状態であったため、制御信号伝送ライン１５をローレベルにドライブしている（図４：ステップ４０２〜ステップ４０３）。ｔ４から“所定期間”経過後の時刻ｔ６において、送信側ＩＣ１１は制御信号伝送ライン１５に対するローレベルドライブを停止するが、受信側ＩＣ１２によって制御信号伝送ライン１５がローレベルとされているため、ステップ３０５（図３）において、ハイレベルとなるのを待つ。受信側ＩＣ１２が受信可能となった時刻ｔ７において、受信側ＩＣ１２が制御信号伝送ライン１５に対するローレベルドライブを停止すると、制御信号伝送ライン１５はハイレベルとなり、データ２０２の送受信処理が行われる（ステップ３０５〜３０６（図３）、及び、ステップ４０４〜４０５（図４））。
【００３２】
以上のごとく、本実施例によれば、受信側ＩＣ１２において送信側ＩＣ１１のデータ送信開始時期を把握することが可能であると共に、送信側ＩＣ１１において受信側ＩＣ１２が受信可能状態であるか否かを判別することが可能（ハンドシェイクが可能）であるため、データの送受信処理におけるエラーの発生を低減させることができる。即ち、例えば図１３に示した従来例のように、クロック信号の有無によってデータ送信の有無を判別するものにおいては、クロック信号ライン１３０３にノイズ等によるパルスが発生した場合に、これを「データ送信の開始」と誤判別すること等が生じ得るため、通信エラーを生じるものとなるが、本実施例ではデータ送信開始時期を把握することが可能であり、このようなエラーの発生を防止できるのである。また、図１３に示した従来例では、スレーブ（受信）側デバイス１３０２が受信可能状態であるか否かをマスタ（送信）側デバイス１３０１において判別することができないため、スレーブ側デバイス１３０２がＢｕｓｙ状態である場合や、受信用バッファに前のデータが残っている状態等であるにも拘わらず、データ送信を行ってしまい、スレーブ側デバイス１３０２においてデータの受信に失敗するということが生じ得るが、本実施例では、送信側のＩＣ１１と受信側のＩＣ１２とのハンドシェイクが可能であり、このような受信エラーの発生を防止できるのである。
【００３３】
さらに、上記の問題に対して“通信期間を認識させるための信号線”と“送信側と受信側のハンドシェイクのための信号線”とをそれぞれ別個に形成したもの（図１４に示した従来例）と比して、本実施例では必要とする信号線の数が少ないため、ＩＣの端子数の増加及び信号線の増加による基板効率の低下（基板の大型化）を最小限に抑止することができる。また、“通信期間を認識させるための信号線”や“送信側と受信側のハンドシェイクのための信号線”を別個に形成するのではなく、データ伝送ライン上に制御信号を付加して送信することによって上記問題に対応するというものに比して、本実施例によれば、データ伝送ライン上に制御信号を流す必要がないため、制御信号によってデータ伝送路を占有されることによるデータ伝送効率の低下を招くこともない。
【００３４】
なお、本実施例では、制御信号伝送ライン１５を「基本状態でハイレベル」とし、必要に応じてＩＣ１１若しくはＩＣ１２によってローレベルにドライブされることにより、制御信号の伝達を行うものとしているが、それぞれの正負を逆とし、「基本状態でローレベル」とするものであっても構わない（ただし、この場合には、デバイスのドライブ（ハイレベルドライブ）能力の制限などの理由により、制御信号伝送ライン１５に接続するプルダウン抵抗値を大きくする必要があり、これにより制御信号伝送ライン１５の立ち上がり遅延が生じ、通信速度（クロック周波数）を高くすることができなくなるため、本実施例の方が好適である）。
【実施例２】
【００３５】
図５は、本実施例の複数の電子デバイス（ＩＣ）を備えた電子装置の本発明に関する部分（ＩＣ間においてシリアル通信行うための配線）の概略を示したブロック図である。図６は、本発明に関するシリアル通信の概念を説明するためのタイミングチャートである。なお、実施例１と同様の構成要素については実施例１と同様の符号を使用し、ここでの説明を省略する。
【００３６】
図５に示されるように、本実施例は、基本的に実施例１（図１）と同様の構成であるが、データ伝送ライン１７を２本（データ伝送ライン１７ａ及び１７ｂ）備えることにより、ＩＣ１１とＩＣ１２との間で全二重通信を行えるように構成されている。
【００３７】
以下、ＩＣ１１をマスタ（送信）側デバイス、ＩＣ１２をスレーブ（受信）側デバイスとして、両ＩＣ間におけるデータの送受信処理の動作概念を説明する。図７はマスタ側デバイスとなるＩＣ１１の本発明に関する部分の処理の概念を示したフローチャートである。図８はスレーブ側デバイスとなるＩＣ１２の本発明に関する部分の処理の概念を示したフローチャートである。なお、実施例１（図３又は図４）と同様の処理概念となるものについては実施例１と同様の符号を使用し、ここでの説明を省略若しくは簡略化する。
【００３８】
ステップ７０１（図７）では、マスタ側ＩＣ１１におけるデータ送信要求の発生を待ち、これがあった場合には、ステップ７０２で全送信データの準備を行い、当該全送信データの単位量（本実施例では８ビット（１バイト）分のデータを“１単位”とするため、例えば全送信データのデータ量が５６ビットである場合には、“単位量”は７となる）を変数ｎに代入する。続くステップ３０２で制御信号伝送ライン１５をローレベルにドライブした後に、１単位（１バイト）分の送信データをＩＣ１１に備えられる送信用バッファ（特に図示せず）に格納し（ステップ７０４）、制御信号伝送ライン１５をローレベルにドライブした後の所定期間の経過を待って（ステップ３０３）、ローレベルドライブを停止する（ステップ３０４）。なお、「１単位分の送信データを送信用バッファに格納した」（即ち、送信準備が完全に整った）後に、制御信号伝送ライン１５をローレベルにドライブする処理（ステップ７０４をステップ３０２の前とする）としてもよいが、本実施例では、制御信号伝送ライン１５をローレベルにドライブした後の、ステップ３０３における待機時間の間に「１単位分の送信データを送信用バッファに格納」する処理を行うことで、処理の効率化を図っている。
【００３９】
スレーブ側ＩＣ１２では、制御信号伝送ライン１５のレベルを監視（図８：ステップ４０１）し、ローレベルを検出した際には、ステップ４０３において一旦制御信号伝送ライン１５をローレベルにドライブし（データ受信が可能な状態であるか否かに拘わらず、スレーブ側ＩＣ１２によって、必ず一旦制御信号伝送ライン１５をローレベルにドライブする）、データ受信が可能な状態であるか否かと共に、スレーブ側ＩＣ１２側からのデータ送信の準備が整ったか否かを判別し、（ステップ８０１）、これらが整うまで制御信号伝送ライン１５をローレベルにドライブする（ステップ４０３〜ステップ８０２）。
【００４０】
マスタ側ＩＣ１１では、ステップ３０５（図７）において制御信号伝送ライン１５がハイレベルと判別された場合に、ステップ７０５へと移行して、１単位分のデータの送受信処理を行い、続くステップ７０６でｎのデクリメントを行って、ｎが０となったか否か（即ち、全ての送信データの送信が終わったか否か）を判別し（ステップ７０７）、０でない場合にはステップ７０８で次の１単位分の送信データを送信用バッファにセットしてステップ３０５へと戻って処理を繰返す。一方、ステップ７０７の判断が肯定（全データ送信終了）であった場合には、ステップ７０１へと戻って処理を繰返す。
【００４１】
スレーブ側ＩＣ１２では、ステップ８０２（図８）における制御信号伝送ライン１５に対するローレベルドライブ停止処理の際（即ち、制御信号伝送ライン１５がハイレベルとなり、マスタ側ＩＣ１１からクロック信号とデータの送出が開始される際）に、１単位分のデータの送信（マスタ側ＩＣ１１からのクロック信号に同期させてデータの送信を行う）処理及び受信処理を行い（ステップ８０３）、続くステップ８０４では、受信したデータが最後のデータであるか否かの判別を行い、これが最後でなかった場合には、ステップ４０３へと戻って処理を繰返し、最後のデータであった場合には、ステップ４０１へと戻って処理を繰返す。なお、「最後のデータであるか否かの判別」は、マスタ側ＩＣ１１において、最後のデータにその旨の情報を付加して送信し、これをスレーブ側ＩＣ１２で判別するようにしても良いし、最初に、送信するデータの単位量（ｎの値）をマスタ側ＩＣ１１からスレーブ側ＩＣ１２へと送信し、スレーブ側ＩＣ１２側においても図７のステップ７０６〜ステップ７０７と同様の処理を行うことによって判別するようにしてもよい。
【００４２】
次に図６を参照しつつ、上記の処理概念について説明を加える。時刻ｔ１において、マスタ側ＩＣ１１においてデータ６０１の送信要求が発生し、ｔ１〜ｔ３の所定期間の間、マスタ側ＩＣ１１によって制御信号伝送ライン１５がローレベルにドライブされる。時刻ｔ２に、制御信号伝送ライン１５がローレベルとなったことを検出したスレーブ側ＩＣ１２は、データの受信及びデータ送信の準備が整うｔ４まで、制御信号伝送ライン１５をローレベルにドライブしている（図８：ステップ８０１及びステップ４０３）。なお、データ送受信が可能な状態であるか否かに拘わらず、スレーブ側ＩＣ１２によって、制御信号伝送ライン１５は、少なくともｔ３（“所定期間”）を経過するまでの間、必ず一旦ローレベルにドライブされる。ｔ１から“所定期間”経過後の時刻ｔ３において、マスタ側ＩＣ１１は制御信号伝送ライン１５に対するローレベルドライブを停止するが、スレーブ側ＩＣ１２によって制御信号伝送ライン１５がローレベルとされているため、ステップ３０５（図７）において、ハイレベルとなるのを待つ。スレーブ側ＩＣ１２が送受信可能となった時刻ｔ４において、スレーブ側ＩＣ１２が制御信号伝送ライン１５に対するローレベルドライブを停止すると、制御信号伝送ライン１５はハイレベルとなり、１単位分のデータ（データ６０１ａ及びデータ６０２ａ）の送受信処理が行われる。
【００４３】
１単位分のデータ（データ６０１ａ及びデータ６０２ａ）の受信及び送信処理を行ったスレーブ側ＩＣ１２は、次のデータの受信及びデータ送信の準備が整うｔ６まで、制御信号伝送ライン１５をローレベルにドライブする（図８：ステップ８０１及びステップ４０３）。ここでも、データ送受信が可能な状態であるか否かに拘わらず、スレーブ側ＩＣ１２によって、制御信号伝送ライン１５は、必ず一旦ローレベルにドライブされる（図８：ステップ４０３）。マスタ側ＩＣ１１では、当該スレーブ側ＩＣ１２の送受信準備完了を待ち（図７：ステップ３０５）、時刻ｔ６において制御信号伝送ライン１５がハイレベルとなったのを受けて１単位分のデータ（データ６０１ｂ及びデータ６０２ｂ）の送受信処理を行う。以下、同様の処理を繰返すことにより、データ６０１及びデータ６０２の送受信処理を行う。
【００４４】
以上のごとく、本実施例によれば、信号線の数の増加を最小限に留めながら、２つのデバイス（ＩＣ）間で、通信エラーの発生を防止しつつ全二重送信を行うことができるため、基板面積の使用効率に優れると共に、高効率なデータの送受信を行うことができる。また、１単位分のデータの送受信があるごとに、送信側デバイスと受信側デバイスの間でハンドシェイクが行われるため、より通信の信頼性を高めることができる。なお、実施例１のごとく、受信側ＩＣ１２においてデータ受信可能状態である場合には、制御信号伝送ライン１５をローレベルドライブしないものとする処理（図４：ステップ４０２〜４０３）も考えられるが、この場合、実際のシステムでは、送信側ＩＣ１１において制御信号伝送ライン１５をポーリングによりモニタする必要があり（制御信号伝送ライン１５がローレベルでないことを確認する必要があるため）、デバイス（ＩＣ１１）の仕様上、各ポーリングの間隔に一定以上の時間を必要とするような場合には、１単位分のデータの送受信間隔をそれ以上短くすることはできないこととなる。これに対し、本実施例のごとく（図６に示されるように）受信側ＩＣ１２において必ず一旦制御信号伝送ライン１５をローレベルドライブさせる処理とすれば、送信側ＩＣ１１においてＲＤＹ端子１１１を“外部割込対象端子”（立ち上がりエッジで割込み発生）とさせることができ（ポーリングによりモニタする必要が無い）、上記のような制限を受けないため、“仕様上、各ポーリングの間隔に一定以上の時間を必要とする”ようなデバイス（ＩＣ１１）である場合には、実施例１の方式に比してより高速なデータ送受信処理を行わせることが可能になる。
【実施例３】
【００４５】
図９は、本発明に関するシリアル通信の概念を説明するためのタイミングチャートである。なお、本実施例の複数の電子デバイス（ＩＣ）を備えた電子装置の構成の概略は実施例２（図５）と同様であり、必要があるときは図５を参照しつつ説明する。
【００４６】
以下、ＩＣ１１（図５）をマスタ（送信）側デバイス、ＩＣ１２をスレーブ（受信）側デバイスとして、両ＩＣ間におけるデータの送受信処理の動作概念を説明する。図１０及び図１１はマスタ側デバイスとなるＩＣ１１の本発明に関する部分の処理の概念を示したフローチャートである。図１２はスレーブ側デバイスとなるＩＣ１２の本発明に関する部分の処理の概念を示したフローチャートである。なお、実施例１（図３又は図４）若しくは実施例２（図７又は図８）と同様の処理概念となるものについては実施例１若しくは実施例２と同様の符号を使用し、ここでの説明を省略若しくは簡略化する。
【００４７】
マスタ側ＩＣ１１の処理（図１０及び図１１）は、基本的に実施例２（図７）と同様であるが、ステップ７０７（図１１）における判断が否定であった（未だ送信すべきデータが残っている）場合には、ステップ１００１において、マスタ側ＩＣ１１がデータ受信可能であるか（受信用バッファからデータの取込が終了しているか（マスタ側ＩＣ１１の受信用バッファが空いているか）や、他の処理でＢｕｓｙ状態でないか等）及びデータ送信準備（１単位分のデータを送信用バッファにセットする処理など）が完了したかを判別し、これが整うまで、マスタ側ＩＣ１１によって制御信号伝送ライン１５をローレベルにドライブする（ステップ１００２）。ステップ１００１における判断が肯定であった（データ送受信の準備ができた）場合には、ステップ３０５へと移行して処理を繰返す。
【００４８】
スレーブ側ＩＣ１２の処理（図１２）も、基本的に実施例２（図８）と同様であるが、ステップ８０１における判断が肯定であった（スレーブ側ＩＣ１２の送受信準備が終了した）場合の制御信号伝送ライン１５へのローレベルドライブ停止処理（ステップ８０２）の後に、ステップ４０４において、制御信号伝送ライン１５がハイレベルとなるのを待ち、制御信号伝送ライン１５がハイレベルとなった後にステップ８０３に移行する。なお、スレーブ側ＩＣ１２からは、必ずしも毎回データの送信処理がある訳ではなく、データの送信がない場合には、ステップ８０１（図１２）における処理では、データの受信準備の処理のみが行われ、同様に、ステップ８０３ではデータ受信処理のみが行われる。よって、マスタ側ＩＣ１１のステップ７０５（図１１）においても、データ送信処理のみが行われる場合がある。
【００４９】
図９を参照しつつ、上記の処理概念について説明を加える。時刻ｔ１〜ｔ４までの処理概念は実施例２（図６）と同様である。なお、図９では、最初の１単位分のデータ（データ９０１ａ）の送信時には、スレーブ側ＩＣ１２からのデータの送信はない。最初の１単位分のデータの送受信処理が終わった際（時刻ｔ５）には、マスタ側ＩＣ１１及びスレーブ側ＩＣ１２のそれぞれにおいて、次の１単位分のデータの送受信準備を行い、これが整うまでそれぞれ制御信号伝送ライン１５をローレベルにドライブする（図１１：ステップ１００１〜ステップ１００２、及び、図１２：ステップ８０１〜ステップ４０３）。時刻ｔ６ではマスタ側ＩＣ１１の準備が整い、マスタ側ＩＣ１１からのローレベルドライブは終了するが、未だスレーブ側ＩＣ１２からローレベルドライブされているため、制御信号伝送ライン１５はローレベルに保たれる。時刻ｔ７に至ると、スレーブ側ＩＣ１２の準備も整い、スレーブ側ＩＣ１２からのローレベルドライブも終了するため、制御信号伝送ライン１５はハイレベルとなり、マスタ側ＩＣ１１及びスレーブ側ＩＣ１２のそれぞれにおいて、１単位分のデータ（データ９０１ｂ及びデータ９０２）の送受信処理が行われる（図１１：ステップ３０５を介したステップ７０５、及び、図１２：ステップ４０４を介したステップ８０３）。
【００５０】
１単位分のデータの送受信処理が終わった時刻ｔ８では、マスタ側ＩＣ１１及びスレーブ側ＩＣ１２のそれぞれにおいて、次の１単位分のデータの送受信準備を行い、これが整うまでそれぞれ制御信号伝送ライン１５をローレベルにドライブする。時刻ｔ９では、スレーブ側ＩＣ１２の方が早く送受信準備を終えており、時刻ｔ１０でマスタ側ＩＣ１１の準備が終えた段階で、１単位分のデータの送受信処理が行われる。以下、上記処理を繰返すことによって、データの送受信処理が行われる。
【００５１】
以上のごとく、本実施例に拠れば、送信側デバイス（ＩＣ１１）及び受信側デバイス（ＩＣ１２）の双方からのハンドシェイクが行われることとなる（スレーブ側ＩＣ１２においても、マスタ側ＩＣ１１の状態（送受信可能状態であるか否か）を判別できる）ため、より通信の信頼性を高めることができる。
【図面の簡単な説明】
【００５２】
【図１】実施例１の電子デバイス（ＩＣ）を備えた電子装置の本発明に関する部分の概略を示したブロック図
【図２】実施例１のシリアル通信の概念を説明するためのタイミングチャート
【図３】実施例１の送信側デバイスの本発明に関する処理の概念を示したフローチャート
【図４】実施例１の受信側デバイスの本発明に関する処理の概念を示したフローチャート
【図５】実施例２の電子デバイス（ＩＣ）を備えた電子装置の本発明に関する部分の概略を示したブロック図
【図６】実施例２のシリアル通信の概念を説明するためのタイミングチャート
【図７】実施例２のマスタ側デバイスの本発明に関する処理の概念を示したフローチャート
【図８】実施例２のスレーブ側デバイスの本発明に関する処理の概念を示したフローチャート
【図９】実施例３のシリアル通信の概念を説明するためのタイミングチャート
【図１０】実施例３のマスタ側デバイスの本発明に関する処理の概念を示したフローチャート
【図１１】図１０に続くフローチャート
【図１２】実施例３のスレーブ側デバイスの本発明に関する処理の概念を示したフローチャート
【図１３】従来のシリアル通信方式の概念を説明するための図
【図１４】従来の別のシリアル通信方式の概念を説明するための図
【符号の説明】
【００５３】
１１    ＩＣ（送信側電子デバイス）
１２    ＩＣ（受信側電子デバイス）
１５    制御信号伝送ライン
１６    クロック信号ライン
１７    データ伝送ライン
【図１】
2007036424.tif 000003
【図２】
2007036424.tif 000004
【図３】
2007036424.tif 000005
【図４】
2007036424.tif 000006
【図５】
2007036424.tif 000007
【図６】
2007036424.tif 000008
【図７】
2007036424.tif 000009
【図８】
2007036424.tif 000010
【図９】
2007036424.tif 000011
【図１０】
2007036424.tif 000012
【図１１】
2007036424.tif 000013
【図１２】
2007036424.tif 000014
【図１３】
2007036424.tif 000015
【図１４】
2007036424.tif 000016