(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023154165
(43)【公開日】2023-10-19
(54)【発明の名称】USB接続検知装置およびUSB接続検知方法
(51)【国際特許分類】
G06F 1/26 20060101AFI20231012BHJP
【FI】
G06F1/26 306
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022063298
(22)【出願日】2022-04-06
(71)【出願人】
【識別番号】000107642
【氏名又は名称】スター精密株式会社
(74)【代理人】
【識別番号】100105784
【弁理士】
【氏名又は名称】橘 和之
(72)【発明者】
【氏名】牧田 莉奈
【テーマコード(参考)】
5B011
【Fターム(参考)】
5B011DA01
5B011EA08
5B011EB03
5B011GG03
(57)【要約】
【課題】より多くの組み合わせでUSB搭載機器の接続を検知できるようにする。
【解決手段】タイプCでポートタイプがソース・ホストのUSB-C搭載機器(自機)のVBUS端子の電圧に応じて他のUSB搭載機器(他機)が接続されたか否かを判定するVBUS監視部11と、自機および他機のCC端子の電圧に応じて他機が接続されたか否かを判定するCC監視部12と、VBUS端子の電圧の監視により他機の接続が検知された場合に自機のポートタイプをシンク・デバイスに自動的に切り替えるポートタイプ切替部13とを備え、VBUS端子の電圧の監視によりUSB-A搭載機器の接続を検知可能にするとともに、ポートタイプをシンク・デバイスに切り替えることで電源供給および通信を実行可能にする一方、CC端子の監視によりUSB-B搭載機器またはUSB-C搭載機器の接続を検知可能にする。
【選択図】
図3
【特許請求の範囲】
【請求項1】
タイプCでポートタイプがデフォルトでソース・ホストのUSB搭載機器である自機において他のUSB搭載機器である他機との接続を検知する装置であって、
上記自機の電源供給用のVBUS端子の電圧を監視し、当該監視した電圧に応じて上記他機が接続されたか否かを判定するVBUS監視部と、
上記自機のコンフィギュレーション用のCC端子の電圧および上記他機のコンフィギュレーション用のCC端子の電圧を監視し、当該監視した電圧に応じて上記他機が接続されたか否かを判定するCC監視部と、
上記VBUS監視部により上記他機の接続が検知された場合に、上記自機のポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えるポートタイプ切替部とを備えた
ことを特徴とするUSB接続検知装置。
【請求項2】
上記VBUS監視部は、上記VBUS端子の電圧を定期的に確認し、当該電圧が高レベルの場合に上記他機が接続されたことを検知し、
上記CC監視部は、上記VBUS監視部により上記他機の接続が検知されない場合に、上記CC端子の電圧を確認し、当該電圧に応じて上記他機の接続の有無を判定する
ことを特徴とする請求項1に記載のUSB接続検知装置。
【請求項3】
上記ポートタイプ切替部は、上記自機のCC端子の電圧および上記他機のCC端子の電圧が何れも高レベルであることが上記CC監視部により検知された場合に、上記自機のポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えることを特徴とする請求項1または2に記載のUSB接続検知装置。
【請求項4】
タイプCでポートタイプがデフォルトでソース・ホストのUSB搭載機器である自機において他のUSB搭載機器である他機との接続を検知する方法であって、
上記自機のUSBドライバが、電源供給用のVBUS端子の電圧を監視し、当該監視した電圧に応じて上記他機が接続されたか否かを判定するとともに、上記自機のコンフィギュレーション用のCC端子の電圧および上記他機のコンフィギュレーション用のCC端子の電圧を監視し、当該監視した電圧に応じて上記他機が接続されたか否かを判定する監視ステップと、
上記監視ステップにおいて上記VBUS端子の電圧に基づき上記他機の接続が検知された場合に、上記自機のUSBドライバが、上記自機のポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えるポートタイプ切替ステップとを有する
ことを特徴とするUSB接続検知方法。
【請求項5】
上記監視ステップは、
上記USBドライバのVBUS監視部により上記VBUS端子の電圧を定期的に確認し、当該電圧が高レベルの場合に上記他機が接続されたことを検知する第1のステップと、
上記VBUS監視部により上記他機の接続が検知されない場合に、上記USBドライバのCC監視部により上記CC端子の電圧を確認し、当該電圧に応じて上記他機の接続の有無を判定する第2のステップとを有する
ことを特徴とする請求項4に記載のUSB接続検知方法。
【請求項6】
上記ポートタイプ切替ステップでは、上記自機のCC端子の電圧および上記他機のCC端子の電圧が何れも高レベルであることが上記監視ステップにおいて検知された場合にも、上記自機のポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えることを特徴とする請求項4または5に記載のUSB接続検知方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、USB接続検知装置およびUSB接続検知方法に関し、特に、USB搭載機器がUSBケーブルを介して接続されたことを検知するための装置および方法に用いて好適なものである。
【背景技術】
【0002】
現在、シリアル通信インタフェースの1つであるUSB(Universal Serial Bus)が多くの電子機器に搭載されている。USBケーブルを介して2つの電子機器のUSBコネクタ間を接続すると、ソース側の機器からシンク側の機器に電源が供給されるため、シンク側の機器にACアダプタ等を介して電源を供給することが不要である。USBには、タイプA、タイプBおよびタイプCの3つのタイプが存在する。以下では、これらUSBの3つのタイプをそれぞれUSB-A、USB-B、USB-Cと表記する。
【0003】
USB-Aは、電源供給用のVBUS端子、データ転送用のD-端子とD+端子、および接地用のGND端子を有するものであり、例えばパーソナルコンピュータやその周辺機器等に広く使われている。USB-Bは、USB-Aの4つの端子に加え、ホストまたはデバイスの何れとして動作するかを認識するためのID端子を有するものであり、用途によってホストになったりデバイスになったりすることのあるスマートフォンやデジタルカメラ等に広く使われている。
【0004】
USB-Cは、単一の構造のコネクタでホストおよびデバイスの接続を可能にすることを目的として作られたものであり、コンフィギュレーション用のCC端子や、通信速度を上げるためのSuper Speed端子などを含めてUSB-A,Bにはない幾つかの端子を有している。USB-Cは、USB-A,Bの問題点を解消するために開発されたものであり、今後ますます普及していく可能性がある。
【0005】
USBでは、2つの電子機器をUSBケーブルで接続すると、接続されたことが自動で検知され、通信が可能な状態となる。USB-AおよびUSB-Bでは、D-端子またはD+端子に印加される電圧の状態を監視することによって接続が検知される。例えば、USB-Aコネクタを搭載した電子機器(以下、USB-A搭載機器という)のUSB-Aコネクタと、USB-Bコネクタを搭載した電子機器(以下、USB-B搭載機器という)のUSB-BコネクタとをUSBケーブルを介して接続すると、USB-A搭載機器からUSB-B搭載機器にVBUS端子を介して電源が供給され、これに応じてUSB-B搭載機器のD+端子がHighにプルアップされることにより、接続されたことが検知される。
【0006】
一方、USB-Cでは、CC端子に印加される電圧の状態を監視することによって接続が検知される。非接続時のCC端子の状態は、USB-Cのポートタイプによって決まる。ポートタイプとは、デフォルトではソース・ホスト(DFP:Downstream Facing Port)として機能するもの、デフォルトではシンク・デバイス(UFP:Upstream Facing Port)として機能するもの、ソースとシンクの両方の能力を持つDRP(Dual-Role-Power)、ソース・ホストのみとして機能するもの、シンク・デバイスのみとして機能するものの何れかである。例えば、USB-Cコネクタを搭載した電子機器(以下、USB-C搭載機器という)のうち、接続時のポートタイプがソース・ホストのUSB-C搭載機器と、接続時のポートタイプがシンク・デバイスのUSB-C搭載機器を接続すると、ソース・ホストのUSB-C搭載機器のCC端子がHigh、シンク・デバイスのUSB-C搭載機器のCC端子がLowとなることにより、接続されたことが検知される。接続が検知されると、ソース側のUSB-C搭載機器からシンク側のUSB-C搭載機器にVBUS端子を介して電源が供給される。
【0007】
USB-Cは、これまで多く使われてきたUSB-A,Bとの接続互換性も考慮して設計されている。しかしながら、全ての組み合わせで接続互換性が保証されているわけではなく、接続を検知できない場合があるという問題があった。
【0008】
例えば、USB-C搭載機器とUSB-A搭載機器とを接続する場合、USB-C搭載機器から見て、USB-A搭載機器はCC端子がHighのUSB-C搭載機器であるかのように見える。そのため、USB-C搭載機器の接続時のポートタイプがシンク・デバイスまたはDRPの何れかであれば、CC端子を監視することにより、ポートタイプがソース・ホストのUSB-C搭載機器が接続されたかのようにUSB-A搭載機器との接続を検知することが可能である。しかしながら、USB-C搭載機器の接続時のポートタイプがソース・ホストの場合、USB-C搭載機器とUSB-A搭載機器との双方がソース・ホストとして振る舞うため、USB-C搭載機器はCC端子を監視してもUSB-A搭載機器との接続を検知することができない。
【0009】
また、USB-C搭載機器とUSB-B搭載機器とを接続する場合、USB-C搭載機器から見て、USB-B搭載機器はCC端子がLowのUSB-C搭載機器であるかのように見える。そのため、USB-C搭載機器の接続時のポートタイプがソース・ホストまたはDRPの何れかであれば、CC端子を監視することにより、ポートタイプがシンク・デバイスのUSB-C搭載機器が接続されたかのようにUSB-B搭載機器との接続を検知することが可能である。しかしながら、USB-C搭載機器の接続時のポートタイプがシンク・デバイスの場合は、USB-C搭載機器はCC端子を監視してもUSB-B搭載機器との接続を検知することができない。
【0010】
USB-C搭載機器どうしを接続する場合であれば、CC端子の監視によって接続を検知することは可能である。しかしながら、一方のUSB-C搭載機器のポートタイプがDRPで、他方のUSB-C搭載機器が急速充電のUSB-PD(Power Delivery)に非対応の場合は、DRPタイプのUSB-C搭載機器がソース・ホストまたはシンク・デバイスの何れで動作するかを固定できないという問題がある。
【0011】
なお、従来、USBポートのVBUS端子電圧が高レベルであればUSBポートにホスト機器が接続されている場合に対応した処理を行う一方、VBUS端子電圧が低レベルであればUSBポートにホスト機器が接続されていない場合に対応した処理を行うようにしたデータ処理装置が知られている(例えば、特許文献1参照)。しかしながら、この特許文献1に記載の技術では、VBUS端子電圧の低レベルが検出された場合には、実際にはUSBポートに何らかのUSB搭載機器が接続されていてもそれを検知することができないという問題がある。
【0012】
また、電子機器をソースとして機能させるか、またはシンクとして機能させるかを、ユーザが任意のタイミングで意図的に切り替えることができるようにした技術も知られている(例えば、特許文献2参照)。この特許文献2に記載の電子機器は、自分自身が接続先の電子機器との関係でソースとして機能しているかシンクとして機能しているかを示す通知画面を表示部に表示する。この通知画面を確認したユーザは、タッチパネルや操作ボタンを操作することにより、電子機器のソース/シンクを切り替えることが可能である。しかしながら、この特許文献2に記載の技術は、既に2つのUSB搭載機器が接続されて両者がソースまたはシンクとして動作している状態において、ユーザの希望に応じてソース/シンクを切り替えることができるのみであり、接続の検知に関する技術ではない。
【先行技術文献】
【特許文献】
【0013】
【特許文献1】特開2009-116724号公報
【特許文献2】特許6900232号公報
【発明の概要】
【発明が解決しようとする課題】
【0014】
本発明は、以上のような問題を解決するために成されたものであり、タイプCのUSB搭載機器と他のUSB搭載機器とを接続する場合に、より多くの組み合わせで接続を検知できるようにすることを目的とする。
【課題を解決するための手段】
【0015】
上記した課題を解決するために、本発明では、タイプCでポートタイプがデフォルトでソース・ホストのUSB搭載機器である自機と他のUSB搭載機器である他機との接続を検知する際に、自機の電源供給用のVBUS端子の電圧を監視し、当該監視した電圧に応じて他機が接続されたか否かを判定するとともに、自機のコンフィギュレーション用のCC端子の電圧および他機のコンフィギュレーション用のCC端子の電圧を監視し、当該監視した電圧に応じて他機が接続されたか否かを判定する。そして、VBUS端子の電圧の監視により他機の接続が検知された場合には、自機のポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えるようにしている。
【発明の効果】
【0016】
上記のように構成した本発明によれば、タイプCでポートタイプがデフォルトでソース・ホストの自機に対して他機としてタイプAのUSB搭載機器が接続された場合は、VBUS端子の電圧が高レベルであることを確認して他機の接続を検知することが可能である。この場合、自機のポートタイプがソース・ホストからシンク・デバイスに自動的に切り替えられるので、ソース・ホストとして振る舞うタイプAのUSB搭載機器との間で電源供給および通信の動作を問題なく実行することができる。一方、タイプCでポートタイプがデフォルトでソース・ホストの自機に対して他機としてタイプBのUSB搭載機器またはタイプCのUSB搭載機器が接続された場合は、自機のCC端子の電圧が高レベル、他機のCC端子の電圧が低レベルであることを確認して他機の接続を検知することが可能である。以上のように、本発明によれば、タイプCでポートタイプがデフォルトでソース・ホストのUSB搭載機器(自機)と他のUSB搭載機器(他機)とを接続する場合に、他機がタイプA、タイプBおよびタイプCの何れの場合であっても接続を検知することができ、より多くの組み合わせで接続を検知することができる。
【図面の簡単な説明】
【0017】
【
図1】本実施形態のUSB接続検知装置が実装されるUSB搭載機器(自機)およびこれに接続される他のUSB搭載機器(他機)を示す図である。
【
図2】本実施形態のUSB接続検知装置が実装されるUSB-C搭載機器のハードウェア構成例を示す図である。
【
図3】本実施形態によるUSB接続検知装置の機能構成例を示すブロック図である。
【
図4】本実施形態によるUSB接続検知装置の動作例を示すフローチャートである。
【
図5】フォントを小さくして用紙の使用量を節約する機能を説明するための図である。
【発明を実施するための形態】
【0018】
以下、本発明の一実施形態を図面に基づいて説明する。
図1は、本実施形態のUSB接続検知装置が実装されるUSB搭載機器(以下、これを自機という)およびこれに接続される他のUSB搭載機器(以下、これを他機という)を示す図である。
【0019】
本実施形態のUSB接続検知装置が実装されるUSB搭載機器100Cは、タイプCでポートタイプがデフォルトでソース・ホストとして機能するDFPのUSB-C搭載機器である。USB-C搭載機器100Cには、タイプAのUSB-A搭載機器101A、タイプBのUSB-B搭載機器101BまたはタイプCのUSB-C搭載機器101Cの何れも接続することが可能である。特に、本実施形態では、タイプAのUSB-A搭載機器101Aとの接続を検知可能にした点に特徴を有する。
【0020】
図2は、本実施形態のUSB接続検知装置が実装されるUSB-C搭載機器100Cのハードウェアを含む構成例を示す図である。
図2に示すように、本実施形態のUSB-C搭載機器100Cは、CPUコアを2つ有するデュアルコアマイコンを備えている。それぞれのCPUコアのもとで2つのオペレーティングシステム(OS)が動作する。また、それぞれのOSのもとで、SPI(Serial Peripheral Interface)やUART(Universal Asynchronous Receiver/Transmitter)などの通信インタフェース、ADC(Analog to Digital Converter)および各種ドライバが動作する。この各種ドライバの1つとして、USBドライバが存在する。本実施形態のUSB接続検知装置は、このUSBドライバの動作によって実現されるものである。
【0021】
図3は、本実施形態によるUSB接続検知装置10の機能構成例を示すブロック図である。
図3に示すように、本実施形態のUSB接続検知装置10は、機能構成として、VBUS監視部11、CC監視部12およびポートタイプ切替部13を備えている。本実施形態のUSB接続検知装置10は、これらの機能ブロック11~13により、当該USB接続検知装置10が実装されたUSB-C搭載機器100C(以下の説明において、自機100Cと記すこともある)と、USB-A搭載機器101A、USB-B搭載機器101BまたはUSB-C搭載機器101Cの何れかである他機との接続を検知する。
【0022】
上記機能ブロック11~13は、RAMやROM、ハードディスクまたは半導体メモリ等の記憶媒体に記憶されたUSBドライバのプログラムが動作することによって実現される。なお、上記機能ブロック11~13は、ハードウェアまたはDSP(Digital Signal Processor)により構成することも可能である。
【0023】
VBUS監視部11は、自機100CのUSBコネクタ20が有する電源供給用のVBUS端子の電圧を監視し、当該監視した電圧に応じてUSB-A搭載機器101Aが接続されたか否かを判定する。自機100Cに対する他機としてUSB-A搭載機器101Aが接続されると、USB-A搭載機器101Aから自機100Cに対してVBUS端子を介して電源が供給されるため、VBUS端子の電圧がHigh(高レベル)になる。そこで、VBUS監視部11は、VBUS端子の電圧を監視し、当該監視した電圧がHighであった場合に、USB-A搭載機器101Aが接続されたことを検知する。
【0024】
例えば、VBUS監視部11は、VBUS端子の電圧を定期的に確認し、当該電圧がHighの場合にUSB-A搭載機器101Aが接続されたことを検知する。なお、ここでは「USB-A搭載機器101Aが接続された」と表現しているが、自機100Cに対して他機が接続されたことを検知できればよく、接続された他機のUSBタイプがタイプAであることまで特定することを必要とするものではない。
【0025】
CC監視部12は、自機100CのUSBコネクタ20が有するコンフィギュレーション用のCC端子の電圧および他機のコンフィギュレーション用のCC端子の電圧を監視し、当該監視した電圧に応じて他機が接続されたか否かを判定する。ここでCC監視部12は、VBUS監視部11により他機(USB-A搭載機器101A)の接続が検知されない場合に、CC端子の電圧を確認し、当該電圧に応じて他機の接続の有無を判定する。
【0026】
ここで、自機100Cはポートタイプがデフォルトでソース・ホストのUSB-C搭載機器であるから、自機100CのCC端子の電圧はHigh(高レベル)にプルアップされている。この自機100Cに対して他機としてUSB-B搭載機器101Bが接続された場合、USB-B搭載機器101BにCC端子は存在しないので、自機100Cから見てUSB-B搭載機器101BはCC端子がLowのUSB-C搭載機器であるかのように見える。また、自機100Cに対して他機としてポートタイプがシンク・デバイスまたはDRPのUSB-C搭載機器101Cが接続された場合、当該USB-C搭載機器101CのCC端子の電圧はLow(低レベル)にプルダウンされている。
【0027】
よって、CC監視部12は、自機100CのCC端子の電圧がHigh、他機のCC端子の電圧がLowであることを確認して、他機(USB-B搭載機器101BまたはUSB-C搭載機器101Cの何れか)が接続されたことを検知することが可能である。CC監視部12においても、自機100Cに対して他機が接続されたことを検知できればよく、接続された他機のUSBタイプがタイプBまたはタイプCであることまで特定することを必要とするものではない。
【0028】
ポートタイプ切替部13は、VBUS監視部11により他機の接続が検知された場合に、自機100Cのポートタイプをソース・ホストからシンク・デバイスに自動的に切り替える。VBUS監視部11により他機の接続が検知された場合、その他機はUSB-A搭載機器101Aであるから、自機100Cも他機のUSB-A搭載機器101Aもソース・ホストとして動作しようとする。このままでは、VBUS端子を介して電源を供給することもD-,D+端子(
図3では図示せず)を介して通信をすることもできない。そこで、ポートタイプ切替部13が自機100Cのポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えることにより、USB-A搭載機器101Aとの間で電源の供給および通信が可能な状態にする。なお、USB-A搭載機器101Aとの間で電源の供給および通信が可能な状態にする方法としては、VBUS端子に対してD+端子をプルアップし、続けて自機100Cがデバイスとして通信を継続すればよい。
【0029】
図4は、上記のように構成した本実施形態によるUSB接続検知装置10の動作例を示すフローチャートである。
図4に示すフローチャートは、USB接続検知装置10の電源がオンとなっている間、一定の周期で定期的に実行される。
【0030】
まず、VBUS監視部11は、VBUS端子の電圧がHighか否かを判定する(ステップS1)。ここで、VBUS端子の電圧がHighであった場合、VBUS監視部11は、自機100Cに対して他機(USB-A搭載機器101A)が接続されたことを検知する(ステップS2)。そして、ポートタイプ切替部13は、自機100Cのポートタイプをソース・ホストからシンク・デバイスに自動的に切り替える(ステップS3)。これにより、
図4に示すフローチャートの動作が終了する。
【0031】
一方、上記ステップS1においてVBUS端子の電圧がHighではないと判定された場合、すなわち、VBUS監視部11により他機の接続が検知されなかった場合、CC監視部12は、自機100CのCC端子の電圧がHighで、他機のCC端子の電圧がLowであるか否かを判定する(ステップS4)。CC端子の電圧がこのような状態になっている場合、CC監視部12は、自機100Cに対して他機(USB-B搭載機器101BまたはUSB-C搭載機器101C)が接続されたことを検知する(ステップS5)。これにより、
図4に示すフローチャートの動作が終了する。
【0032】
一方、CC端子の電圧が上述の状態になっていないと判定された場合、CC監視部12は、自機100Cに対して他機が接続されていないと判断し(ステップS6)、
図4に示すフローチャートの動作が終了する。なお、例として自機100Cに対して他機が接続されていない場合、自機100CのCC端子のプルアップ電圧が見えるため、CC端子の電圧はHighを示すこととなる。
【0033】
以上詳しく説明したように、本実施形態のUSB接続検知装置10によれば、タイプCでポートタイプがデフォルトでソース・ホストのUSB-C搭載機器100Cである自機に対して他機としてタイプAのUSB-A搭載機器101Aが接続された場合は、VBUS端子の電圧が高レベルであることを確認して他機の接続を検知することが可能である。この場合、自機100Cのポートタイプがソース・ホストからシンク・デバイスに自動的に切り替えられるので、ソース・ホストとして振る舞うタイプAのUSB-A搭載機器101Aとの間で電源供給および通信の動作を問題なく実行することができる。
【0034】
なお、自機100Cのポートタイプがソース・ホストからシンク・デバイスに自動的に切り替えられた後に他機との接続が切断された場合、すなわち、VBUS端子の電圧が高レベルでなくなった場合は、再び自機100Cのポートタイプをソース・ホストに戻し、次の接続に備えるとよい。その際も再びVBUS端子の電圧監視を行うことで、前述同様の接続監視を行うことが可能となる。
【0035】
一方、タイプCでポートタイプがデフォルトでソース・ホストのUSB-C搭載機器100Cである自機に対して他機としてタイプBのUSB-B搭載機器101BまたはタイプCのUSB-C搭載機器101C(ポートタイプがシンク・デバイスまたはDRPのもの)が接続された場合は、自機100CのCC端子の電圧が高レベル、他機(USB-B搭載機器101BまたはUSB-C搭載機器101C)のCC端子の電圧が低レベルであることを確認して他機の接続を検知することが可能である。
【0036】
以上のように、本実施形態によれば、タイプCでポートタイプがデフォルトでソース・ホストのUSB-C搭載機器100C(自機)と他のUSB搭載機器101A~101C(他機)とを接続する場合に、他機がタイプA、タイプBおよびタイプCの何れの場合であっても接続を検知することができ、より多くの組み合わせで接続を検知することができる。また、自機のUSB-C搭載機器100CのポートタイプがDRPではなくソース・ホストであるから、急速充電のUSB-PDに非対応のUSB-C搭載機器が他機として接続された場合でも、自機100Cがソース・ホストまたはシンク・デバイスの何れで動作するかを固定できないという問題は生じない。
【0037】
なお、上記実施形態では、自機100CのCC端子の電圧がHighで、他機のCC端子の電圧がLowではないとCC監視部12により判定された場合に、自機100Cに対して他機が接続されていないと判断する例について説明したが、これに限定されない。例えば、自機100CのCC端子の電圧がHigh、他機のCC端子の電圧もHighであることが確認された場合に、自機100Cに対して他機(ポートタイプがソース・ホストのUSB-C搭載機器)が接続されたことを検知し、自機100Cのポートタイプをソース・ホストからシンク・デバイスに自動的に切り替えるようにしてもよい。自機が、タイプCでポートタイプがデフォルトでソース・ホストのUSB-C搭載機器100Cであるため、他機がタイプCのうちのソース・ホストのみとして機能するものであっても、自機100Cがシンク・デバイスとして機能できるため問題なく接続可能である。なお、自機100Cのポートタイプをソース・ホストからシンク・デバイスに切り替える方法としては、CC端子の電圧を低レベルにすればよい。
【0038】
なお、本実施形態のUSB接続検知装置10を実装したUSB-C搭載機器100Cと、当該USB-C搭載機器100Cに接続される他のUSB搭載機器101A~101Cは、どのような電子機器であってもよい。一例として、USB-C搭載機器100Cとしてレシートプリンタを用い、これにUSB-Aを搭載したPOS端末等のホスト装置を接続することが可能である。この場合、レシートプリンタに実装されたUSB接続検知装置10は、VBUS端子の電圧を確認してホスト装置との接続を検知することが可能である。接続が検知された後は、ホスト装置からレシートプリンタに電源を供給し、所定の制御信号を送信してレシートプリンタの動作を制御することが可能となる。
【0039】
例えば、レシートプリンタは以下のような機能を有し、ホスト装置はこの機能の動作を制御することが可能である。
【0040】
(1)印字する際のフォントを小さくして用紙の使用量を節約する機能
これは、プリンタの設定ユーティリティを用いてあらかじめ文字フォントの高さを縮小する設定にしておくことで、印刷アプリケーションを変更することなく、用紙を節約できるようにする機能である。
図5(a)に示すように、所定の演算により文字部分(有色ドット部分)のラインを縦方向(紙送り方向)に縮小するモードを備えてもよい。また、
図5(b)に示すように、スペース部分(無色ドット部分)のラインを縦方向(紙送り方向)に間引くように削除を行う縮小するモードであってもよい。さらに
図5(a)、
図5(b)の両方の縮小を併用するモードがあってもよい。
【0041】
図5(a)の場合、所定の演算により、例えば3行目、6行目、9行目、16行目、18行目および19行目が間引かれ、11行目と12行目は1行に合成されることで縮小を行っている。また、
図5(b)の20行目で示されるベースラインは、一行中に並ぶ文字列の中にサイズの異なる文字があった場合でも、その位置を揃えることで、違和感がないように変換するとよい。
【0042】
(2)トリガボタンによる定型印刷機能
これは、定型画像(開封防止ラベルや店舗ロゴラベル等の画像)をプリンタにあらかじめ保存し、プリンタに備え付けられるトリガボタンを押すと定型画像を印刷する機能である。例えば、定型画像をホスト装置からプリンタに送信して保存することが可能である。
【0043】
なお、トリガボタンに複数の機能を割り当てるようにしてもよい。例えば、トリガボタンに3つの機能を割り当て、それぞれに対して、ロゴの印刷+用紙のフルカット(第1の機能)、ロゴの印刷+用紙のパーシャルカット(第2の機能)、ロゴの印刷+単なる紙送り(第3の機能)を設定可能にしてもよい。例えば、トリガボタンを1回押下したときは第1の機能を実行し、トリガボタンを連続して2回押下したときは第2の機能を実行し、トリガボタンを連続して3回押下したときは第3の機能を実行する。また、トリガボタンを所定時間以上連続して長押しした場合に第1~第3の機能を全て実行するようにしてもよい。
【0044】
また、プリンタのパネルに表示されるユーザインタフェースの操作により、トリガボタンの有効/無効を切り替えられるようにしてもよい。例えば、トリガボタンを無効に設定した場合は、トリガボタンの押下により紙送りを行う。一方、トリガボタンを有効に設定した場合は、トリガボタンの操作状態に応じて上述した第1の機能、第2の機能、第3の機能の何れかを実行する。
【0045】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【0046】
10 USB接続検知装置
11 VBUS監視部
12 CC監視部
13 ポートタイプ切替部
100C USB-C搭載機器(自機)
101A USB-A搭載機器(他機)
101B USB-B搭載機器(他機)
101C USB-C搭載機器(他機)