JP4924472B2 - ホスト機器 - Google Patents
ホスト機器 Download PDFInfo
- Publication number
- JP4924472B2 JP4924472B2 JP2008044631A JP2008044631A JP4924472B2 JP 4924472 B2 JP4924472 B2 JP 4924472B2 JP 2008044631 A JP2008044631 A JP 2008044631A JP 2008044631 A JP2008044631 A JP 2008044631A JP 4924472 B2 JP4924472 B2 JP 4924472B2
- Authority
- JP
- Japan
- Prior art keywords
- usb
- serial
- data
- serial converter
- standard data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 claims description 59
- 238000012546 transfer Methods 0.000 claims description 53
- 238000012545 processing Methods 0.000 claims description 32
- 238000012790 confirmation Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 6
- 238000000034 method Methods 0.000 description 49
- 230000008569 process Effects 0.000 description 43
- 230000008859 change Effects 0.000 description 21
- 238000010586 diagram Methods 0.000 description 13
- 230000005540 biological transmission Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 2
- 101001042125 Eisenia hortensis Chymotrypsin inhibitor Proteins 0.000 description 1
- 238000001994 activation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Landscapes
- Information Transfer Systems (AREA)
Description
このようにすると、通信アプリケーションが読出しコマンドを発行する周期は、デバイスドライバが確認コマンドを発行する周期よりも長いために、変更後の確認コマンドを発行する周期が変更前に比べて長くなる。なお、USBシリアル変換器のバッファに蓄積されたデータについては、通信アプリケーションが読出しコマンドを発行する度に、USBシリアル変換器からホスト機器にデータ転送されるので、バッファの空き容量が無くなることはない。したがって、USBシリアル変換器に蓄積されたデータを速やかに読み出しながら、ホスト機器の処理負担を軽減することができる。
[第一実施形態]
図1はUSBシリアル変換器を用いてホスト機器とシリアル機器とを接続する例を示す説明図である。また、図2はホスト機器およびUSBシリアル変換器の構成を示すハードブロック図である。また、図3はホスト機器の構成を示すソフトブロック図である。なお、USB機器とは、USB規格のデータを処理可能な電子機器であり、シリアル機器とは、シリアル規格のデータを処理可能な電子機器である。
USBシリアル変換器20は、USB機器を接続可能なUSB(B)コネクタ21と、USBシリアル変換LSI22と、シリアル機器を接続可能なシリアルコネクタ23と、を備える。なお、USBシリアル変換器20内部では、USB(B)コネクタ21とUSBシリアル変換LSI22のUSBデバイスコントローラ回路ブロック22a(後述)とが接続され、USBシリアル変換LSI22のシリアル回路ブロック22c(後述)とシリアルコネクタ23とが接続されている。
ホスト機器10は、複数のソフトウェアに基づく処理を時分割で並列に実行するCPU11と、PCチップセット12と、USB機器に対してホストとして各種処理を実行するUSBホストコントローラLSI13と、USB機器を接続可能なUSB(A)コネクタ14と、シリアル機器を接続可能なシリアルコネクタ15と、を備え、USB機器として機能する。なお、本実施形態のホスト機器10は、4個のUSB(A)コネクタ14および1個のシリアルコネクタ15を備える。
なお、本実施形態のホスト機器10のその他の構成については、公知技術に従っているので、ここでは詳細な説明は省略する。
次に、USBシリアル変換器20を用いてホスト機器10とシリアル機器30とを接続し、ホスト機器10とシリアル機器30との間でデータの送受信を行う際の従来のプロセスを(1)OPENコマンド発行、(2)READコマンド発行、(3)WRITEコマンド発行、および(4)CLOSEコマンド発行の順に、図4を参照して説明する。なお、図4は従来のホスト機器10とシリアル機器30とのデータ送受信プロセスを説明するシーケンス図である。
通信アプリケーション101とUSBシリアル変換器20との間でデータの送受信を開始する際には、通信アプリケーション101がOPENコマンドを発行する。すなわち、通信アプリケーション101が、USBシリアル変換器20とのデータの送受信を開始するためにOPENコマンドを発行すると、そのOPENコマンドはシリアルAPI102を介してUSBシリアル変換器デバイスドライバ103に送信される。USBシリアル変換器デバイスドライバ103では、OPENコマンドを受信するとOPEN返値を発行する。このOPEN返値は、シリアルAPI102を介して通信アプリケーション101へ送信される。また、USBシリアル変換器デバイスドライバ103では、USBシリアル変換器20に対してコマンドを発行する。このコマンドは、USBホストコントローラデバイスドライバ105を介してUSBシリアル変換器20へ送信される。USBシリアル変換器20では、コマンドを受信するとコマンド返信割込を発行する。コマンド返信割込は、USBホストコントローラデバイスドライバ105を介してUSBシリアル変換器デバイスドライバ103へ送信される。以上のプロセスにより、通信アプリケーション101とUSBシリアル変換器20との間でデータの送受信が開始される。
(2)READコマンド発行
通信アプリケーション101では、所定の周期でREADコマンドを発行するように設定されており、この周期にてREADコマンドを発行する。なお、READコマンドとは、USBシリアル変換器20のバッファに蓄積されたデータを読み出すためのコマンドであり、USBシリアル変換器20のバッファの空き容量が無くならないように設定された周期で発行される。なお、この周期については通信アプリケーション101によって設定される。
他のアプリケーションからの指示によってシリアル機器にデータを送信する場合には、通信アプリケーション101が、USBシリアル変換器20のバッファにデータを書き込むためにWRITEコマンドを発行する。すなわち、通信アプリケーション101が、USBシリアル変換器20のバッファにデータを書き込むためにWRITEコマンドを発行すると、そのWRITEコマンドはシリアルAPI102を介してUSBシリアル変換器デバイスドライバ103に送信される。一方、USBシリアル変換器デバイスドライバ103では、WRITEコマンドを受信するとWRITE返値を発行する。このWRITE返値は、シリアルAPI102を介して通信アプリケーション101へ送信される。そして、通信アプリケーション101が、USBシリアル変換器20のバッファに書き込みたいデータをシリアルAPI102などを介してUSBシリアル変換器20へ送信する。USBシリアル変換器20では、受信したデータをバッファへ一旦保管した後にシリアル規格に変換してシリアル機器へ送信する。
通信アプリケーション101とUSBシリアル変換器20との間でデータの送受信を終了する際には、通信アプリケーション101がCLOSEコマンドを発行する。すなわち、通信アプリケーション101が、USBシリアル変換器20とのデータの送受信を終了するためにCLOSEコマンドを発行すると、そのCLOSEコマンドはシリアルAPI102を介してUSBシリアル変換器デバイスドライバ103に送信される。一方、USBシリアル変換器デバイスドライバ103では、CLOSEコマンドを受信すると、これまで定期的に行ってきたポーリングを停止するとともにCLOSE返値を発行する。このCLOSE返値は、シリアルAPI102を介して通信アプリケーション101へ送信される。
以下に、USBシリアル変換器デバイスドライバ103により実行されるポーリング周期変更処理の処理(1)手順を図5のフローチャートおよび図6に基づいて説明する。なお、図6はポーリング周期変更処理(1)を説明するシーケンス図である。
まず、USBシリアル変換器デバイスドライバ103によるコマンド発行であるドライバコールが開始されると、そのドライバコールの種別に応じてファンクション分岐が行われる。本実施形態では、(A)ドライバコールの種別がOPENコマンドである場合、(B)ドライバコールの種別がCLOSEコマンドである場合、(C)ドライバコールの種別がREADコマンドである場合、(D)ドライバコールの種別がWRITEコマンドである場合、(E)ドライバコールの種別がボーレート設定コマンドである場合を説明する。
この処理では、設定内容を初期化するよう指示する初期化コマンドを発行する。初期化コマンドが発行されると、タイマ処理の設定を初期化する。本実施形態ではポーリング周期が16msecに設定される。そして、ドライバコールを終了する。
この処理では、タイマ処理の設定を解除する。このことにより、タイマ処理が実行されなくなり、以後READコマンドが発行されなくなる。また、上述のようなCLOSEコマンドの発行によってポーリングも停止する。そして、ドライバコールを終了する。
この処理では、READデータの出力処理を実行する。具体的には、USBシリアル変換器デバイスドライバ103内のバッファからデータを読み出す。読み出したデータについては、そのデータを必要とするアプリケーションの指示によって処理される。さらに、タイマ処理の再設定を行う。具体的には、処理を実行する度に内蔵するメモリ(図示省略)に記憶された処理時刻記録を参照して、前回の処理時刻から今回の処理時刻までの時間を計算した計算結果を新しいポーリング周期として設定する。一例を挙げると、前回READコマンドを発行した時刻から今回READコマンドを発行した時刻までの時間が250msecである場合には、ポーリング周期を250msecに設定すると云った具合である。そして、ドライバコールを終了する。
この処理では、WRITEデータの入力処理を実行する。具体的には、USBシリアル変換器デバイスドライバ103内のバッファにデータが書き込まれるとともに、USBシリアル変換器20のバッファに書き込まれる。そして、WRITEコマンドを発行し、上述のようにタイマ処理の再設定を行う。そして、ドライバコールを終了する。
この処理では、ボーレート設定コマンドを発行する。なお、ボーレート(bps:Bits Per Second)とは、RS232Cのシリアル通信速度であり、シリアル変換器30との間でデータ転送を行う際の単位時間当たりのデータ転送量である。このボーレートについては通信アプリケーション101によって設定される。そして、ドライバコールを終了する。
(1)このように第一実施形態のホスト機器10によれば、READコマンドを発行する間隔を計算した計算結果を新しいポーリング周期として設定する。このように計算したポーリング周期は、USBシリアル変換器20のバッファの容量およびUSBシリアル変換器20との間でデータ転送を行う際の単位時間当たりの最大データ転送量に応じて予め設定されたポーリング周期の初期値よりも長いために、変更後のポーリング周期が変更前に比べて長くなる。なお、USBシリアル変換器20のバッファに蓄積されたデータについては、通信アプリケーション101がREADコマンドを発行する度に、USBシリアル変換器20からホスト機器10にデータ転送されるので、USBシリアル変換器20のバッファの空き容量が無くなることはない。したがって、USBシリアル変換器20に蓄積されたデータを速やかに読み出しながら、ホスト機器10の処理負担を軽減することができる。
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、以下のような様々な態様にて実施することが可能である。
Claims (3)
- シリアル規格のデータを処理可能な電子機器であるシリアル機器とUSB規格のデータを処理可能な電子機器であるUSB機器との間に接続された際に、前記シリアル機器が前記USB機器へ送信したシリアル規格のデータを内蔵するバッファに一時的に蓄積するとともにUSB規格のデータに変換して前記USB機器からの要求に応じて前記USB機器へ送信し、一方、前記USB機器が前記シリアル機器へ送信したUSB規格のデータをシリアル規格のデータに変換した後に前記シリアル機器へ送信し、前記シリアル機器と前記USB機器との間のデータ転送を中継するUSBシリアル変換器との間でUSB規格のデータを送受信可能であり、前記バッファに蓄積されるデータの有無を確認するための確認コマンドを、前記バッファの容量および前記USBシリアル変換器との間でデータ転送を行う際の単位時間当たりの最大データ転送量に応じて予め設定された周期にて前記USBシリアル変換器へ発行するデバイスドライバと、
前記USBシリアル変換器の前記バッファに蓄積されたデータを読み出すための読出しコマンドを前記デバイスドライバを介して前記USBシリアル変換器へ発行する通信アプリケーションと、
を備え、前記USB機器として機能するホスト機器であって、
前記デバイスドライバは、前記通信アプリケーションが前記読出しコマンドを発行する周期を計測し、前記確認コマンドを発行する周期を予め設定された周期からその計測した周期へ変更することを特徴とするホスト機器。 - シリアル規格のデータを処理可能な電子機器であるシリアル機器とUSB規格のデータを処理可能な電子機器であるUSB機器との間に接続された際に、前記シリアル機器が前記USB機器へ送信したシリアル規格のデータを内蔵するバッファに一時的に蓄積するとともにUSB規格のデータに変換して前記USB機器からの要求に応じて前記USB機器へ送信し、一方、前記USB機器が前記シリアル機器へ送信したUSB規格のデータをシリアル規格のデータに変換した後に前記シリアル機器へ送信し、前記シリアル機器と前記USB機器との間のデータ転送を中継するUSBシリアル変換器との間でUSB規格のデータを送受信可能であり、前記バッファに蓄積されるデータの有無を確認するための確認コマンドを、前記バッファの容量および前記USBシリアル変換器との間でデータ転送を行う際の単位時間当たりの最大データ転送量に応じて予め設定された周期にて前記USBシリアル変換器へ発行するデバイスドライバと、
前記USBシリアル変換器の前記バッファに蓄積されたデータを読み出すための読出しコマンドを前記デバイスドライバを介して前記USBシリアル変換器へ発行する通信アプリケーションと、
を備え、前記USB機器として機能するホスト機器であって、
前記通信アプリケーションは、前記シリアル機器との間でデータ転送を行う際の単位時間当たりのデータ転送量であるボーレートを設定可能であり、
前記デバイスドライバは、前記通信アプリケーションが設定したボーレートに対応する周期を算出し、前記確認コマンドを発行する周期を予め設定された周期からその算出した周期へ変更すること
を特徴とするホスト機器。 - シリアル規格のデータを処理可能な電子機器であるシリアル機器とUSB規格のデータを処理可能な電子機器であるUSB機器との間に接続された際に、前記シリアル機器が前記USB機器へ送信したシリアル規格のデータを内蔵するバッファに一時的に蓄積するとともにUSB規格のデータに変換して前記USB機器からの要求に応じて前記USB機器へ送信し、一方、前記USB機器が前記シリアル機器へ送信したUSB規格のデータをシリアル規格のデータに変換した後に前記シリアル機器へ送信し、前記シリアル機器と前記USB機器との間のデータ転送を中継するUSBシリアル変換器との間でUSB規格のデータを送受信可能であり、前記バッファに蓄積されるデータの有無を確認するための確認コマンドを、前記バッファの容量および前記USBシリアル変換器との間でデータ転送を行う際の単位時間当たりの最大データ転送量に応じて予め設定された周期にて前記USBシリアル変換器へ発行するデバイスドライバと、
前記USBシリアル変換器の前記バッファに蓄積されたデータを読み出すための読出しコマンドを前記デバイスドライバを介して前記USBシリアル変換器へ発行する通信アプリケーションと、
を備え、前記USB機器として機能するホスト機器であって、
前記確認コマンドの発行を停止する旨を入力するための入力手段を備え、
前記デバイスドライバは、前記確認コマンドの発行を停止する旨が入力手段から入力された場合には前記確認コマンドの発行を停止すること
を特徴とするホスト機器。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008044631A JP4924472B2 (ja) | 2008-02-26 | 2008-02-26 | ホスト機器 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008044631A JP4924472B2 (ja) | 2008-02-26 | 2008-02-26 | ホスト機器 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2009205271A JP2009205271A (ja) | 2009-09-10 |
| JP4924472B2 true JP4924472B2 (ja) | 2012-04-25 |
Family
ID=41147489
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008044631A Active JP4924472B2 (ja) | 2008-02-26 | 2008-02-26 | ホスト機器 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4924472B2 (ja) |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3994583B2 (ja) * | 1999-06-30 | 2007-10-24 | ブラザー工業株式会社 | シリアル通信方法、シリアル送信装置、シリアル受信装置およびシリアル通信システム |
| JP3409749B2 (ja) * | 1999-09-09 | 2003-05-26 | エヌイーシーマイクロシステム株式会社 | Usbファンクションの評価装置及びその方法 |
| JP2002197048A (ja) * | 2000-12-26 | 2002-07-12 | Kenwood Corp | 電子機器およびインタフェース変換方法 |
-
2008
- 2008-02-26 JP JP2008044631A patent/JP4924472B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2009205271A (ja) | 2009-09-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100456180B1 (ko) | 주변 기기 및 그 제어 방법 | |
| EP3462328B1 (en) | Serial connection between management controller and microcontroller | |
| CN102023954B (zh) | 具有多路i2c总线的装置、处理器、系统主板及工控计算机 | |
| CN110765058A (zh) | Gpio实现spi从机功能方法、系统、设备及介质 | |
| EP4323880A1 (en) | I2c bus architecture using shared clock and dedicated data lines | |
| JP2009048522A (ja) | データ転送装置の製造方法、試験方法、及びデータ転送装置 | |
| CN101393542B (zh) | 通过gpio端口支持usb接口的嵌入式设备及方法 | |
| JP6299260B2 (ja) | 情報処理装置および情報処理装置の制御方法 | |
| CN101937413B (zh) | 一种i2c总线的通信方法 | |
| JP2003241908A5 (ja) | ||
| CN101561790B (zh) | 一种主控机与从机通信的方法、系统及装置 | |
| JP4837659B2 (ja) | 分割トランザクションを処理するためのバス・コントローラ | |
| JP2003029804A (ja) | フィールドバスインタフェースボード | |
| JP5890648B2 (ja) | 情報処理装置、その制御方法、およびデバイス制御システム | |
| JP4924472B2 (ja) | ホスト機器 | |
| JP6418021B2 (ja) | 情報処理装置及び情報処理装置の制御方法 | |
| JP2007088775A (ja) | 無線通信システム、無線通信装置及び方法 | |
| US20210157764A1 (en) | Data conversion device and data conversion system | |
| CN116541329A (zh) | 一种数据传输方法、装置、设备及介质 | |
| JP3906838B2 (ja) | Usb対応型デジタル複合機 | |
| JP2006238209A (ja) | ハブ装置およびハブシステム | |
| JP2008204005A (ja) | 周辺装置の通信方法、コンピュータプログラム、及び周辺装置 | |
| KR20030044373A (ko) | 기억 장치 직접 접근 인터페이스를 지원하는 범용 직렬버스 장치 | |
| JP2010166309A (ja) | 光データリンク | |
| KR20070024600A (ko) | 호스트 제어기 및 그 동작 방법 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100118 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20120110 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120123 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150217 Year of fee payment: 3 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4924472 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |