(57)【要約】      （修正有）【課題】ホスト機器において、ファンクション機器は故障しているのでなく、現在他の処理を実行していることを把握することができ、ユーザ操作性を向上させることができるＵＳＢ接続システム、ＵＳＢファンクション機器、通信方法、並びにプログラム及び記憶媒体を提供する。【解決手段】ＵＳＢ接続システムは、カメラ１００とプリンタ２００とを備え、夫々がＵＳＢケーブル１５０で接続される。カメラ１００は、プリンタ２００によりカメラに印刷コマンドが発行された場合、即時に印刷データの送信をすることができないとき、印刷データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを印刷データの代わりにプリンタ２００に送信する。【選択図】図３
2006155240.tif 000002
【特許請求の範囲】
【請求項１】
互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器は前記ＵＳＢファンクション機器に対してコマンドを発行する発行手段を備え、前記ＵＳＢファンクション機器は前記コマンドの要求に従って処理を行う要求処理手段を備えるＵＳＢ接続システムにおいて、
前記発行手段で前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理手段で前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器は前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信手段をさらに備えることを特徴とするＵＳＢ接続システム。
【請求項２】
前記ＵＳＢファンクション機器は特定データの送信処理が可能となる時間を予測する時間予測手段をさらに備え、
前記送信手段は、前記予測された時間を通知する通知手段を備えることを特徴とする請求項１記載のＵＳＢ接続システム。
【請求項３】
前記送信手段は、前記ＵＳＢファンクション機器の処理に影響のない程度の短い間隔の時間経過後に前記発行されたコマンドの要求処理が可能である旨を通知する通知手段を備えることを特徴とする請求項１記載のＵＳＢ接続システム。
【請求項４】
前記ＵＳＢホスト機器は前記特定データを受信したときにその印刷処理を行うプリンタ装置であって、前記ＵＳＢファンクション機器は前記特定データを保持するストレージ装置であることを特徴とする請求項１乃至３のいずれか１項に記載のＵＳＢ接続システム。
【請求項５】
前記ＵＳＢホスト機器は前記特定データを受信したときにその印刷処理を行うプリンタ装置であって、前記ＵＳＢファンクション機器は前記特定データとして撮影画像を撮影する撮像装置であることを特徴とする請求項１乃至３のいずれか１項に記載のＵＳＢ接続システム。
【請求項６】
前記ＵＳＢホスト機器は前記特定データを受信したときにその記録保存を行うストレージ装置であって、前記ＵＳＢファンクション機器は前記特定データとして撮影画像を撮影する撮像装置であることを特徴とする請求項１乃至３のいずれか１項に記載のＵＳＢ接続システム。
【請求項７】
ＵＳＢ接続されているＵＳＢホスト機器で発行されたコマンドの要求に従って処理を行うＵＳＢファンクション機器において、
前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが前記ＵＳＢホスト機器で発行された場合、前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信手段を備えることを特徴とするＵＳＢファンクション機器。
【請求項８】
前記ＵＳＢファンクション機器は、特定データの送信処理が可能となる時間を予測する時間予測手段をさらに備え、
前記送信手段は、前記予測された時間を通知する通知手段を備えることを特徴とする請求項６記載のＵＳＢファンクション機器。
【請求項９】
前記送信手段は、前記ＵＳＢファンクション機器の処理に影響のない程度の短い間隔の時間経過後に前記発行されたコマンドの要求処理が可能である旨を通知する通知手段を備えることを特徴とする請求項６記載のＵＳＢファンクション機器。
【請求項１０】
前記ＵＳＢホスト機器は前記特定データを受信したときにその印刷処理を行うプリンタ装置であって、前記ＵＳＢファンクション機器は前記特定データを保持するストレージ装置であることを特徴とする請求項７乃至９のいずれか１項に記載のＵＳＢファンクション機器。
【請求項１１】
前記ＵＳＢホスト機器は前記特定データを受信したときにその印刷処理を行うプリンタ装置であって、前記ＵＳＢファンクション機器は前記特定データとして撮影画像を撮影する撮像装置であることを特徴とする請求項７乃至９のいずれか１項に記載のＵＳＢ接続システム。
【請求項１２】
前記ＵＳＢホスト機器は前記特定データを受信したときにその記録保存を行うストレージ装置であって、前記ＵＳＢファンクション機器は前記特定データとして撮影画像を撮影する撮像装置であることを特徴とする請求項７乃至９のいずれか１項に記載のＵＳＢファンクション機器。
【請求項１３】
互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器により、前記ＵＳＢファンクション機器に対してコマンドを発行する発行ステップと、前記ＵＳＢファンクション機器により、前記コマンドの要求に従って処理を行う要求処理ステップとを備えるＵＳＢ接続システムの通信方法において、
前記発行ステップで前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理ステップで前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器により、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信ステップを備えることを特徴とする通信方法。
【請求項１４】
互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器により、前記ＵＳＢファンクション機器に対してコマンドを発行する発行モジュールと、前記ＵＳＢファンクション機器により、前記コマンドの要求に従って処理を行う要求処理モジュールとを備えるＵＳＢ接続システムの通信方法を実行するコンピュータにより読み取り可能なプログラムにおいて、
前記発行モジュールで前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理モジュールで前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器により、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信モジュールを備えることを特徴とするプログラム。
【請求項１５】
前記プログラムを格納することを特徴とする請求項１２記載の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＳＢ接続システム、ＵＳＢファンクション機器、通信方法、並びにプログラム及び記憶媒体に関し、特にダイレクトプリントシステムにおけるＵＳＢ接続システム、ＵＳＢファンクション機器、通信方法、並びにプログラム及び記憶媒体に関する。
【背景技術】
【０００２】
ＵＳＢ接続システムにおいては、ホストであるＵＳＢホスト機器で発行されたコマンドがスレーブであるＵＳＢファンクション機器に送信され、ＵＳＢファンクション機器がこの送信されたコマンドの要求に従って処理を行うことにより、データ送受信を含む種々のシステム制御が行われている。
【０００３】
例えば、ＵＳＢホスト機器であるＰＣが、ＵＳＢファンクション機器であるデジタルカメラやプリンタとＵＳＢ接続されているとき、まずＰＣが画像を送信する旨要求するコマンドを発行し、このコマンドをデジタルカメラに対して送信する。このコマンドを受信したデジタルカメラは、コマンド要求に従って撮影された画像をＰＣ側に送信する。上記画像をデジタルカメラから受信すると、次にＰＣは上記画像を印刷する旨要求するコマンドを発行すると共に、このコマンド及び上記送信された画像をプリンタに対して送信する。このコマンド及び画像を受信したプリンタは、デジタルカメラが撮影した画像を印刷する。
【０００４】
一方、最近はＰＣを介さずに、デジタルカメラとプリンタがＵＳＢを介して直接接続するいわゆるダイレクトプリントシステムが製品化されている。このダイレクトプリントシステムは、例えばPictBrige規格に準拠したシステム制御が行われている（例えば、非特許文献１参照）。
【０００５】
例えば、このダイレクトプリントシステムでは、ＵＳＢファンクション機器であるデジタルカメラがＵＳＢホスト機器であるプリンタとＵＳＢ接続されているとき、まずプリンタが画像を送信する旨要求するコマンドを発行し、このコマンドをＵＳＢファンクション機器であるデジタルカメラに対して送信する。このコマンドを受信したデジタルカメラは、コマンド要求に従って撮影された画像をプリンタ側に送信する。上記画像をデジタルカメラから受信すると、次にプリンタは上記画像を取り込み、印刷する。これにより、ＰＣをＵＳＢホスト機器とした場合と同様の処理が行われる。
【０００６】
また、ＵＳＢ接続システムにおける規格上、スレーブ側がホスト側からのコマンドを受け付けることができない場合は、図４に示すように、スレーブ側の機器がホスト側にＮＡＣＫ信号を返す取り決めになっている。
【０００７】
ホスト側の機器は、送信したコマンドに対してＮＡＣＫ信号が返された場合、通常、同一のコマンドをその要求処理がスレーブ側で行われるまで送信するよう制御されている。
【０００８】
但し、ＵＳＢ接続システムにおける規格上、ホスト側の機器が上記コマンド送信を所定回数行ってもスレーブ側からＮＡＣＫ信号しか返されてこない場合、スレーブ側の機器は異常であるとみなしてそのコマンドの発行を停止するという取り決めになっている。
【０００９】
また、スキャナとプリンタをＵＳＢにてＰＣに繋いだ構成において、ＰＣとスキャナでプリンタ部の印刷部の使用権に優先順序をつけて管理することで、印刷部の動作の競合を避けるという方法が知られている（例えば、特許文献１参照）。
【特許文献１】特開２０００−２３１４５８号公報
【非特許文献１】http://www.cipa.jp/pictbridge/index_j.htmlカメラ映像機器工業会「White Paper of CIPA DC-001-2003 Digital Photo Solutions for Imaging Devices (日本語版/2003年2月3日発行)」
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、デジタルカメラ側のＣＰＵは、撮影のためのレンズの駆動処理や、撮影データ及び動画データのカードへの書込／読出処理等多くの制御を司っているため、プリンタから印刷用画像データを送信する旨要求するコマンドが送信されたときに、このコマンドを受けたタイミングで即時にデータを用意してプリンタ側に送信できない場合がある。
【００１１】
例えば、デジタルカメラ側のＣＰＵが上記レンズの駆動処理を行っているときに、プリンタからのコマンド要求の処理がきた場合、撮影チャンスを逃してしまう恐れがあるため、ＵＳＢホスト機器からのコマンド要求処理は、上記レンズの駆動処理よりその優先順位が通常低く設定されている。従って、かかる状況では、プリンタからのコマンド要求に応じた処理は撮影処理後となるので、すぐにはプリンタにコマンド要求のあった印刷用画像データを送出できない。
【００１２】
また、例えば、デジタルカメラ側のＣＰＵがカードにある動画データの読出処理を行って、読み取った画像を再生している場合、プリンタからの印刷用画像データを送信する旨要求するコマンドを受けたとき、動画データの読出処理を一旦停止してプリンタから指示のあった印刷用画像データをカードから読み出す必要があるので、すぐにはプリンタにコマンド要求のあった印刷用画像データを送出できない。また、このような場合は動画再生を優先的に行いたいとユーザが希望しても、デジタルカメラのＣＰＵで実行する処理の優先順位は予め決定されているので変更はできない。
【００１３】
また、上述したように、ＵＳＢファンクション機器で実行するコマンド処理の優先順位をＵＳＢホスト機器で決定する方法が知られているが、この方法はＵＳＢホスト機器としてＰＣを使用する必要があり、ダイレクトプリントシステムのようにＵＳＢホスト機器としてプリンタを使用する場合は適用することはできない。
【００１４】
以上のようにデジタルカメラがコマンドを受けたタイミングで即時にデータを用意してプリンタ側に送信できない場合、ＵＳＢシステムの規格通りデジタルカメラはＮＡＣＫ信号をプリンタ側に送信するので、デジタルカメラがプリンタ側にデータを送信が可能となるまでの間に、例えば、ユーザがプリンタ側からカメラ側に同じ印刷コマンドを所定回数送信してしまうことがある。このとき、プリンタはＵＳＢシステムの規格通りデジタルカメラが異常であるとみなして、印刷コマンドの発行が停止してしまうという問題があった。
【００１５】
さらに、かかるＵＳＢ接続システムでユーザが印刷を希望した場合、印刷できたりできなかったり、あるいは応答が遅かったりするため、ユーザの意図とは反してわかりにくく使いにくいものとなってしまうという問題があった。
【００１６】
ここで、プリンタ側に操作手段を設けず、カメラ側の操作手段から印刷指示を行うようにすれば、カメラが処理不可能なタイミングで印刷処理コマンドが発行されることがないので上述のような発生しないが、印刷用紙をセットしたら印刷指示ボタンを押すというのが、ユーザが印刷を希望する場合の自然な動作の流れであり、また、通常、カメラ本体は大きさの制限で操作ボタンの大きさや数も制約があるため、カメラ側の操作はわずらわしいという問題がある。
【００１７】
本発明の目的は、ＵＳＢファンクション機器が動画再生処理等を行っているときに、ＵＳＢホスト機器から何度も送信される同一の印刷処理コマンドを受信・応答する必要がなく、現在実行中の処理に専念することができる一方、ホスト機器は、同じコマンドを何度も送信せずに、ファンクション側で準備ができたころを見計らって、同じコマンドを再送すればよく、通信の無駄を防止することができ、且つ、ホスト機器において、ファンクション機器は故障しているのでなく、現在他の処理を実行していることを把握することができ、ユーザ操作性を向上させることができるＵＳＢ接続システム、ＵＳＢファンクション機器、通信方法、並びにプログラム及び記憶媒体を提供することにある。
【課題を解決するための手段】
【００１８】
上記目的を達成するために、請求項１記載のＵＳＢ接続システムは、互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器は前記ＵＳＢファンクション機器に対してコマンドを発行する発行手段を備え、前記ＵＳＢファンクション機器は前記コマンドの要求に従って処理を行う要求処理手段を備えるＵＳＢ接続システムにおいて、前記発行手段で前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理手段で前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器は前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信手段をさらに備えることを特徴とする。
【００１９】
請求項７記載のＵＳＢファンクション機器は、ＵＳＢ接続されているＵＳＢホスト機器で発行されたコマンドの要求に従って処理を行うＵＳＢファンクション機器において、前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが前記ＵＳＢホスト機器で発行された場合、前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信することを特徴とする。
【００２０】
請求項１３記載の通信方法は、互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器により、前記ＵＳＢファンクション機器に対してコマンドを発行する発行ステップと、前記ＵＳＢファンクション機器により、前記コマンドの要求に従って処理を行う要求処理ステップとを備えるＵＳＢ接続システムの通信方法において、前記発行ステップで前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理ステップで前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器により、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信ステップを備えることを特徴とする。
【００２１】
請求項１４記載のプログラムは、互いにＵＳＢ接続されたＵＳＢホスト機器及びＵＳＢファンクション機器から成り、前記ＵＳＢホスト機器により、前記ＵＳＢファンクション機器に対してコマンドを発行する発行モジュールと、前記ＵＳＢファンクション機器により、前記コマンドの要求に従って処理を行う要求処理モジュールとを備えるＵＳＢ接続システムの通信方法を実行するコンピュータにより読み取り可能なプログラムにおいて、前記発行モジュールで前記ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、前記要求処理モジュールで前記コマンドの要求に従って即時に前記特定データの送信をすることができないとき、前記ＵＳＢファンクション機器により、前記特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを前記特定データの代わりに前記ＵＳＢホスト機器に送信する送信モジュールを備えることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、ＵＳＢファンクション機器は、ＵＳＢホスト機器に特定データを送信する旨要求するコマンドが発行された場合、即時に上記コマンドの要求に従って上記特定データの送信をすることができないとき、特定データを送ることができないＢＵＳＹ状態である旨の情報を含む代替データを上記特定データの代わりにＵＳＢホスト機器に送信するので、ＵＳＢファンクション機器が動画再生処理等を行っているときに、ＵＳＢホスト機器から何度も送信される同一の印刷処理コマンドを受信・応答する必要がなく、現在実行中の処理に専念することができる一方、ホスト機器は、同じコマンドを何度も送信せずに、ファンクション側で準備ができたころを見計らって、同じコマンドを再送すればよく、通信の無駄を防止することができ、且つ、ホスト機器において、ファンクション機器は故障しているのでなく、現在他の処理を実行していることを把握することができ、ユーザ操作性を向上させることができる。
【００２３】
好ましくは、上記代替データを送信する際に、特定データの送信処理が可能となる時間を通知するので、いつ印刷ができるのかをユーザに通知することができる。
【００２４】
好ましくは、上記代替データを送信する際に、ＵＳＢファンクション機器の処理に影響のない程度の短い間隔の時間経過後に上記発行されたコマンドの要求処理が可能である旨を通知するので、ＵＳＢファンクション機器が特定データの送信処理が可能となる時間の情報を予測することができない場合であっても、確実にユーザ操作性を向上させることができる。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態を図面を用いて詳述する。
【００２６】
図１は、本発明の実施の形態に係るＵＳＢ接続システム構成を概略的に示すブロック図である。
【００２７】
図１において、ＵＳＢ接続システム１は、通常の静止画撮影はもちろん、動画の記録も可能であり、また静止画や動画を再生して表示部にその画像を再生可能であるカメラ１００（ＵＳＢファンクション機器）とプリンタ２００（ＵＳＢホスト機器）とを備え、夫々がＵＳＢケーブル１５０で接続される。
【００２８】
図２は、図１におけるカメラ１００及びプリンタ２００の内部構成を概略的に示すブロック図である。
【００２９】
図２において、カメラ１００は、ＵＳＢファンクションコントローラ１０１と、カメラ全体の制御を行うＣＰＵ１０２と、操作、表示等のユーザインターフェース部１０３と、画像の撮影・再生を実行する処理部であり、レンズや撮像素子、画像信号処理部、画像データ圧縮部等から構成されるカメラ部１０４と、ＳＲＡＭやＤＲＡＭ等のメモリデバイスで構成されＣＰＵ１０２のデータ一時記録領域又は画像データの保持等を司るＲＡＭ１０５と、本体に着脱可能なＦＬＡＳＨメモリ等で構成され、撮影した静止画データや動画データが格納されるメモリカード１０６とを備える。
【００３０】
プリンタ２００は、ＵＳＢホストコントローラ２０１と、プリンタ全体の制御を行うＣＰＵ２０２と、操作、表示等のユーザインターフェース部２０３と、印刷のための紙送り機構部、インク、インク制御部、画像信号処理部等から構成される印刷部２０４と、上述のメモリデバイスで構成されＣＰＵ２０２のデータ一時記録領域又は画像データの保持等を司るＲＡＭ２０５とを備える。
【００３１】
ＵＳＢホスト機器であるプリンタ２００のＣＰＵ２０２によりコマンドが発行されると、ＵＳＢファンクション機器であるカメラ１００にこのコマンドが送信され、また、このコマンドを受信すると、カメラ１００のＣＰＵ１０２はそのコマンド要求に応じてプリンタ２００へのデータの伝送等の処理を行う。
【００３２】
図３は、図１のＵＳＢ接続システム１により実行される印刷データ転送処理のシーケンスを示す図である。
【００３３】
図３において、まず、プリンタ１００からカメラ２００に対して、データＩｎコマンド（図３では簡略化のためＣＭＤ−Ａと表示している）が送信される。ここでデータＩｎコマンド（ＣＭＤ−Ａ）は「カメラ１００からプリンタ２００へのデータ送信せよ」という要求を主旨とするコマンドであり、送信すべきデータの位置を示すオフセット値と送信すべきデータサイズを指定している。このコマンドをカメラ２００が受けると、カメラ２００は指定されたデータ位置及びデータサイズの画像データをカード１０６内から印刷データとしてプリンタ１００に送信する。
【００３４】
このデータＩｎコマンドは、図３に示すように、全体のデータ送信を一度のデータＩｎコマンド（ＣＭＤ−Ａ）で行うのでなく、複数回（Ｎ回）に分割して送信される。また、一つのデータＩｎコマンドに対する印刷データの送信がカメラ１００からあったときに、次のデータＩｎコマンドがカメラ１００に送信されるように制御されており、Ｎ番目に送信されたデータＩｎコマンドに対応するＮ番目のデータがカメラ１００からプリンタ２００に送信されたときに、本処理を終了する。
【００３５】
次に、カメラ１００が撮像処理や動画再生処理等他の処理を行っているときに、プリンタ２００から図３のＮ分割されたデータＩｎコマンドがカメラ１００に送信された場合にＵＳＢ接続システム１で実行される印刷データ転送処理について説明する。
【００３６】
従来のＵＳＢ接続システムでは、図４に示すように、プリンタ２００からのデータＩｎコマンドが送信されてきた場合、カメラ動作処理中であるとき、カメラ１００はＮＡＣＫ信号をプリンタ２００に送信する。プリンタ２００は、１のデータＩｎコマンドをカメラ１００に送信した場合、カメラ１００からＮＡＣＫ信号が送信されたとき、カメラ１００からその１のデータＩｎコマンドに対する画像データが送信されるまで、繰り返し同一のデータＩｎコマンドをカメラ１００に送信する。しかし、この同一のデータＩｎコマンドの送信がｍ回目になったときであっても、ＮＡＣＫ信号がカメラ１００から送信されてきた場合は印刷データ転送処理が強制終了となる。
【００３７】
図５は、図１のＵＳＢ接続システム１により実行されるカメラ動作中における印刷データ転送処理のシーケンスを示す図である。
【００３８】
本処理において、プリンタ２００からのデータＩｎコマンドが送信されてきた場合、カメラ動作処理中であるとき、カメラ１００は、カメラ１００はプリンタ２００からのコマンド要求に対して即時に応答ができない点で従来と共通するが、印刷データ転送処理が強制終了となるのを防止するため、プリンタ２００に対してＮＡＣＫ信号は送信しない点で相違する。しかしながら、ＵＳＢ規格ではデータＩｎコマンドに対してはＮＡＣＫ信号かデータパケットを送り返すことしか許されていないため、本来の印刷データを送るべきデータパケットに替えて、ＢＵＳＹ信号とコマンド受付時間情報と無効データである擬似データをデータパケットとして返す。
【００３９】
図５において、まず、プリンタ２００からカメラ１００に対して、データＩｎコマンドが送信される。
【００４０】
次に、カメラ１００は、プリンタ２００からのデータＩｎコマンドが送信されてきた場合、カメラ動作処理中であるとき、カメラ１００は上記コマンド処理をいつ実行可能であるか予測する。本実施の形態においては、カメラ１００は、１００００ｍｓｅｃ(１０秒)後に実行可能であると予測し、この時間をコマンド受付時間情報とする。
【００４１】
次に、このコマンド受付時間情報と、ＢＵＳＹ信号及び擬似データとを含むデータパケットをプリンタ２００に送信する。本実施の形態において、このデータパケットは、プリンタ２００からコマンドは受けたが即時に実行できないことを、このパケット内に含まれるＢＵＳＹ信号を用いてプリンタ２００に伝え、また、上記コマンドが上記予測した時間（１０秒）経過後にカメラ側で上記コマンド処理を実行することができることを、このパケット内に含まれるコマンド受付時間情報を用いてプリンタ２００に伝える。
【００４２】
プリンタ２００は、カメラ１００から上記データパケットを受信すると、そのコマンド受付時間情報に基づき、約１０秒後に同じデータＩｎコマンドをカメラ１００に再送する。このとき、プリンタ２００で最初のコマンド発行時から約１０秒後に印刷開始が可能であると予測できるため、例えばプリンタに表示部があれば「（１０秒）おまちください」等のメッセージを表示してもよい。
【００４３】
カメラ１００は、プリンタ２００からデータＩｎコマンドが再送された場合、カメラ動作処理が終了しているとき、即時のコマンド要求処理が可能となっているので、指定されたデータ位置及びデータサイズの画像データをカード１０６内から印刷データとしてプリンタ１００に送信する。プリンタ２００は、上記再送されたデータＩｎコマンドに対する画像データの送信がカメラ１００からあったときに、次のデータＩｎコマンドをカメラ１００に送信する。
【００４４】
その後、カメラ１００からＮ個に分解された画像データの全てがプリンタに送信されたときに、本処理を終了する。
【００４５】
図５の処理によれば、カメラ１００が動画再生処理等を行っているときに、プリンタ２００から何度も送信される同一の印刷処理コマンドを受信し、ＮＡＣＫ信号をプリンタ２００に送信する必要がなく、現在実行中の動画再生に専念することができる。また、プリンタ２００は、同じ印刷処理コマンドを何度も送信せずに、カメラ１００側で準備ができたころを見計らって、同じコマンドを再送すればよく、通信の無駄を防止することができる。さらに、プリンタ２００において、カメラ１００は故障しているのでなく、現在他の処理を実行していることを把握することができる。以上より、本処理はダイレクトプリントシステムのユーザ操作性を向上させることができる。
【００４６】
尚、図５のカメラ動作中におけるの印刷データ転送処理のシーケンスでは、事前にコマンド実行可能時間を予測し、この予測した時間をコマンド受付時間情報として送信することで、この予測した時間経過後に上記プリンタ２００で発行されたコマンドの要求処理が可能である旨をプリンタ２００に通知しているが、カメラの処理に影響のない程度の短い間隔の時間（例えば１秒）をコマンド受付時間情報としてプリンタ２００に送信してもよい。
【００４７】
これにより、コマンド受付時間情報をプリンタ２００に通知した後に、ユーザがカメラ側で動画再生を停止（又はキャンセル）したため、本来、プリンタ２００からの命令を実行することができるのに、上記コマンド受付時間が経過していないために、プリンタ２００からカメラ１００への印刷コマンドの再送付がされず、無駄に印刷が待たされてしまうという問題が生じるのを防止することができる。また、カメラ１００が現在カメラ動作処理中である場合、その処理がいつ終わるか予測できないときであっても、確実にコマンド受付時間情報をプリンタ２００に送信することができる。
【００４８】
また、このようなコマンド受付時間情報を含むパケット情報がカメラ１００からプリンタ２００に送信されてきた場合、プリンタ２００は、カメラ１００が他の処理であることはＢＵＳＹ信号により認識できるが、カメラ１００がいつ印刷コマンドの受付が可能になるのかはわからないので、不図示の表示部に「カメラが他の処理中です。」という表示を行い、ユーザに対してカメラ側で行われている動画再生のキャンセルを促したり、「現在行っている印刷指示をキャンセルして下さい」という表示を行い、ユーザに対してプリンタ側で行われている印刷指示のキャンセルを促したりしてもよい。
【００４９】
また、上記表示を行っても、ユーザがキャンセル処理を行わない場合は、カメラが印刷データを送付するまで上記処理を繰り返すようにしてもよい。これにより、ユーザが印刷処理を急いでいない場合には、現在カメラ１００で行っている処理（例えば動画再生処理）を優先して行うことができる。
【００５０】
以上のように構成することにより、ユーザはプリンタ２００及びカメラ１００に対して所望の動作指示をすることができる。
【００５１】
また、本実施の形態では、ＵＳＢファンクション機器がカメラ１００である場合について説明したが、ＵＳＢファンクション機器はこれに限定されるわけでなく、例えば、メモリカードやハードディスク、ＣＤ，ＤＶＤ、その他ディスク媒体に情報を記録、再生可能なストレージ装置であってもよい。ＵＳＢファンクション機器がストレージ装置である場合、カメラ１００のように撮影中であるためにＢＵＳＹ状態となるということはないが、装置のＦＯＲＭＡＴ中であるときやデータの消去中であるときにＢＵＳＹ状態となる。
【００５２】
ストレージ装置がＢＵＳＹ状態であるときは、カメラ１００がＢＵＳＹ状態であるときと同様に、プリンタ２００から印刷コマンドが送信されても即時に処理することができないので、本来の印刷データを送るべきデータパケットに替えて、上述のＢＵＳＹ信号とコマンド受付時間情報と無効データである擬似データをデータパケットとしてプリンタ２００に返せばよい。
【００５３】
さらには、本実施の形態では、ＵＳＢホスト機器がプリンタ装置である場合について説明したが、ＵＳＢホスト機器はこれに限定されるわけでなく、上記ストレージ機器であってもよい。この場合、ＵＳＢホスト機器であるストレージ装置からの記録保存コマンドに応じて、記録保存用データをＵＳＢファンクション機器である撮像装置が送信することになる。
【００５４】
また、本発明の目的は、上記実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（又は記録媒体）を、システム又は装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
【００５５】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００５６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(ＯＳ)等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５８】
また、上記プログラムは、上述した実施の形態の機能をコンピュータで実現することができればよく、その形態は、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給されるスクリプトデータ等の形態を有するものでもよい。
【００５９】
プログラムを供給する記録媒体としては、例えば、ＲＡＭ、ＮＶ−ＲＡＭ、フロッピー（登録商標）ディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＭＯ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ（ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ）、磁気テープ、不揮発性のメモリカード、他のＲＯＭ等の上記プログラムを記憶できるものであればよい。或いは、上記プログラムは、インターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続される不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【図面の簡単な説明】
【００６０】
【図１】本発明の実施の形態に係るＵＳＢ接続システム構成を概略的に示すブロック図である。
【図２】図１におけるカメラ及びプリンタの内部構成を概略的に示すブロック図である。
【図３】図１のＵＳＢ接続システムにより実行される印刷データ転送処理のシーケンスを示す図である。
【図４】従来のＵＳＢ接続システムにより実行されるカメラ動作中における印刷データ転送処理のシーケンスを示す図である。
【図５】図１のＵＳＢ接続システムにより実行されるカメラ動作中における印刷データ転送処理のシーケンスを示す図である。
【符号の説明】
【００６１】
１００  カメラ
１０１  ＵＳＢファンクションコントローラ
１０２  ＣＰＵ
１０３  ユーザインターフェース部
１０４  カメラ部
１０５  ＲＡＭ
１０６  メモリカード
２００  プリンタ
２０１  ＵＳＢホストコントローラ
２０２  ＣＰＵ
２０３  ユーザインターフェース部
２０４  印刷部
２０５  ＲＡＭ
１５０  ＵＳＢケーブル
【図１】
2006155240.tif 000003
【図２】
2006155240.tif 000004
【図３】
2006155240.tif 000005
【図４】
2006155240.tif 000006
【図５】
2006155240.tif 000007