JP4947024B2 - Printing device - Google Patents

Printing device Download PDF

Info

Publication number
JP4947024B2
JP4947024B2 JP2008253352A JP2008253352A JP4947024B2 JP 4947024 B2 JP4947024 B2 JP 4947024B2 JP 2008253352 A JP2008253352 A JP 2008253352A JP 2008253352 A JP2008253352 A JP 2008253352A JP 4947024 B2 JP4947024 B2 JP 4947024B2
Authority
JP
Japan
Prior art keywords
file
print
area
data
printing apparatus
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
Application number
JP2008253352A
Other languages
Japanese (ja)
Other versions
JP2010082924A (en
Inventor
義継 友松
直樹 丹嶌
良彦 杉村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2008253352A priority Critical patent/JP4947024B2/en
Publication of JP2010082924A publication Critical patent/JP2010082924A/en
Application granted granted Critical
Publication of JP4947024B2 publication Critical patent/JP4947024B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Record Information Processing For Printing (AREA)

Description

本発明は、外部端末と接続される印刷装置に関し、詳細には、外部端末から書き込まれる印刷ファイルに基づいて印刷を行う印刷装置に関する。   The present invention relates to a printing apparatus connected to an external terminal, and more particularly to a printing apparatus that performs printing based on a print file written from the external terminal.

従来、印刷装置および外部端末が接続される印刷システムにおいて、双方を接続するインターフェースとしてUSB(Universal Serial Bus)が広く使用されている。そして、例えば、各種編集物を作成するためのプログラムであるエディタが稼動される外部端末(例えば、パソコン)が、通信制御の主導権を司るUSBホストとされる。一方、外部端末からの指示により印刷処理を実行する印刷装置が、USBホストによる通信制御に従って動作するUSBデバイスとされる。   Conventionally, in a printing system to which a printing apparatus and an external terminal are connected, USB (Universal Serial Bus) is widely used as an interface for connecting both. For example, an external terminal (for example, a personal computer) on which an editor, which is a program for creating various edits, is operated as a USB host that controls communication control. On the other hand, a printing apparatus that executes print processing according to an instruction from an external terminal is a USB device that operates according to communication control by a USB host.

ここで、外部端末がパソコンである場合には、一般のオペレーティングシステム(OS)に、USBホストとして機能させるためのUSBコントローラを標準装備している。一方、印刷装置も、USBデバイスとして機能させるためのUSBコントローラを装備しているが、USBデバイスには通信規約で定められたいくつかのデバイスクラスがある。USBデバイスが通信規約で定められたいずれかのデバイスクラスで機能する限り、USBホストはUSBデバイスと正常に通信可能である。   Here, when the external terminal is a personal computer, a general operating system (OS) is equipped with a USB controller for functioning as a USB host as standard. On the other hand, the printing apparatus is also equipped with a USB controller for causing it to function as a USB device, but there are several device classes defined in the communication protocol for USB devices. As long as the USB device functions in any device class defined in the communication protocol, the USB host can normally communicate with the USB device.

そして、パソコンをUSBマスストレージクラスに対応する印刷装置にUSBで接続して、パソコンが印刷装置を記憶デバイスとして認識するようにした印刷システムが知られている。この印刷装置では、USBホストであるパソコンとUSBデバイスである印刷装置との間で、ファイル単位でのアクセスが可能となる。そのため、例えば、印刷装置のメモリに記憶されているファイルを、パソコンのハードディスクに容易にコピーすることができる(例えば、特許文献1参照)。
特開2006−82256号公報
A printing system is known in which a personal computer is connected to a printing apparatus corresponding to the USB mass storage class via USB so that the personal computer recognizes the printing apparatus as a storage device. In this printing apparatus, access can be made in file units between a personal computer as a USB host and a printing apparatus as a USB device. Therefore, for example, a file stored in the memory of the printing apparatus can be easily copied to a hard disk of a personal computer (see, for example, Patent Document 1).
JP 2006-82256 A

しかしながら、パソコンをUSBマスストレージクラスに対応する印刷装置に接続した印刷システムでは、ファイル管理の主体はあくまでUSBホストとして機能するパソコン側にある。そのため、パソコンのエディタで作成された編集物のファイルが印刷装置に転送されてメモリに書き込まれる場合、USBデバイスとして機能する印刷装置側では、メモリに対するファイルの書き込みが完了したか否かを認識することができない。すると、印刷装置がメモリに書き込まれるファイルに基づいて印刷処理を行う場合に、メモリへのファイル書込みが完了していない段階で印刷処理を開始すると、適正な印刷動作を実行できない印刷エラーが生じたり、印刷画像に文字化けや画像欠損を生じたりする問題があった。   However, in a printing system in which a personal computer is connected to a printing apparatus compatible with the USB mass storage class, the main body of file management is on the personal computer side that functions as a USB host. For this reason, when an edited file created by a PC editor is transferred to the printing apparatus and written to the memory, the printing apparatus functioning as a USB device recognizes whether or not the writing of the file to the memory has been completed. I can't. Then, when the printing device performs the printing process based on the file written to the memory, if the printing process is started at the stage where the file writing to the memory is not completed, a printing error that cannot execute an appropriate printing operation may occur. There is a problem that the printed image is garbled or the image is lost.

なお、特許文献1に記載の印刷システムでは、プリンタからパソコンに転送保存されるファイルの保存状況および保存結果の確認を、パソコンのみならずプリンタでも行えるようにしている。これは、ファイル管理の主体であるUSBホスト側のパソコンが、USBデバイス側であるプリンタにファイル保存中の状態を表示するようにしたにすぎない。そのため、かかる従来技術では、ファイル管理の主体でないUSBデバイス側であるプリンタで、パソコンから転送されたファイルの書き込みが完了したか否かを把握することができず、上記のような問題を解決することはできない。   In the printing system described in Japanese Patent Application Laid-Open No. 2004-228620, the storage status and storage result of files transferred and stored from the printer to the personal computer can be confirmed not only by the personal computer but also by the printer. This is merely a configuration in which the personal computer on the USB host side, which is the main body of file management, displays the file storage status on the printer on the USB device side. For this reason, in this conventional technique, it is not possible to determine whether or not the writing of the file transferred from the personal computer has been completed by the printer on the USB device side that is not the main body of file management, thus solving the above-described problem. It is not possible.

本発明は、上記問題点を解決するためになされたものであり、外部端末により外部記憶装置として認識される印刷装置において、パソコンから転送されたファイルの記憶領域への書き込みが完了する前に、このファイルに基づいて印刷処理が開始されるという不具合の発生を防止することを目的とする。   The present invention has been made to solve the above problems, and in a printing apparatus that is recognized as an external storage device by an external terminal, before writing to a storage area of a file transferred from a personal computer is completed, An object is to prevent the occurrence of a problem that the printing process is started based on this file.

上記課題を解決するために、請求項1に係る発明の印刷装置は、外部端末と通信を行う通信手段と、前記通信手段にて前記外部端末から受信されたデータを記憶する記憶手段と、前記記憶手段に対するデータの書き込みおよび読み出しを制御するとともに、前記通信手段による通信が実行される場合、前記記憶手段を、一まとまりの印刷データが含まれる印刷ファイルを一単位として書き込み可能な外部記憶装置として、前記外部端末に認識させる制御手段と、前記制御手段により前記印刷ファイルの書き込みが実行される場合、前記記憶手段に対する前記印刷ファイルの書き込みが完了したか否かを判断する書込完了判断手段と、前記書込完了判断手段により前記印刷ファイルの書き込みが完了したと判断されると、前記記憶手段に記憶された前記印刷ファイルに含まれる前記印刷データに基づいて印刷を実行する印刷手段とを備え、前記書込完了判断手段は、前記通信手段にて前記印刷ファイルの書き込みを指示する書込コマンドが受信された場合、前記書込コマンドに含まれる前記印刷データの転送が完了したことを示す応答信号を前記外部端末に送信する処理が実行された時点から起算して、前記通信手段にて他の前記書込コマンドを受信することなく所定時間が経過すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする。 In order to solve the above problem, a printing apparatus according to a first aspect of the present invention includes a communication unit that communicates with an external terminal, a storage unit that stores data received from the external terminal by the communication unit, and As an external storage device that controls writing and reading of data to and from the storage means, and when communication by the communication means is executed, the storage means can be written as a unit of a print file containing a group of print data. Control means for recognizing the external terminal; and writing completion determination means for determining whether writing of the print file to the storage means is completed when writing of the print file is executed by the control means. When the writing completion determining unit determines that the writing of the print file has been completed, it is stored in the storage unit. Printing means for executing printing based on the print data included in the print file, and the writing completion determination means receives a write command for instructing writing of the print file by the communication means. If the process of transmitting a response signal indicating completion of transfer of the print data included in the write command to the external terminal is executed , the communication means calculates the other document. When a predetermined time elapses without receiving an embedded command, it is determined that writing of the print file is completed.

また、請求項2に係る発明の印刷装置は、請求項1に記載の発明の構成に加えて、前記記憶手段は、前記記憶手段に記憶されているファイルと併せて、前記ファイルを識別するためのファイル名をファイル情報として記憶しており、前記書込完了判断手段は、所定タイミングで前記記憶手段にて前記ファイル名を検索し、前記印刷ファイルであることを示すファイル名を発見すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする。   According to a second aspect of the invention, in addition to the configuration of the first aspect of the invention, the storage unit identifies the file together with the file stored in the storage unit. Is stored as file information, and the writing completion determining unit searches the file name in the storage unit at a predetermined timing and finds a file name indicating the print file, It is determined that writing of the print file is completed.

また、請求項3に係る発明の印刷装置は、請求項1または2に記載の発明の構成に加えて、前記記憶手段は、前記記憶手段に記憶されているファイルと併せて、前記ファイルのデータ量を示すファイルサイズをファイル情報として記憶しており、前記書込完了判断手段は、所定タイミングで前記記憶手段にて前記ファイルサイズを検索し、前記一単位として予め定められた規定データ量を示すファイルサイズを発見すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする。   According to a third aspect of the present invention, in addition to the configuration of the first or second aspect of the invention, the storage means includes a file stored in the storage means and data of the file. The file size indicating the amount is stored as file information, and the writing completion determining unit searches the file size in the storage unit at a predetermined timing and indicates a predetermined data amount predetermined as the unit. When the file size is found, it is determined that writing of the print file is completed.

また、請求項4に係る発明の印刷装置は、請求項1〜3のいずれかに記載の発明の構成に加えて、前記制御手段は、前記通信手段にて前記印刷ファイルが受信されると、前記印刷ファイルを前記記憶手段における所定領域に書き込むものであって、前記書込完了判断手段は、前記記憶手段における所定領域の先頭位置に対してデータの書き込みが行われると、特定フラグをONにセットし、前記印刷装置から前記外部端末に前記応答信号が送信されると、前記特定フラグをOFFにセットし、前記特定フラグがOFFにセットされた時点から起算して、前記所定時間が経過したか否かを判断することを特徴とする。 According to a fourth aspect of the present invention, in addition to the configuration of the first aspect of the present invention, when the control unit receives the print file by the communication unit, a and writes the print file in a predetermined area in said storage means, said write completion determination means, when data is written with respect to the head position of a predetermined region in the storage means, oN a specific flag set, when the response signal to the external terminal from the printing device is transmitted, and sets the previous SL specific flag to OFF, counting from the time when the specific flag is set to OFF, the predetermined time It is characterized by judging whether it passed.

また、請求項5に係る発明の印刷装置は、請求項2または3に記載の発明の構成に加えて、前記記憶手段は、前記ファイルを記憶する第1の領域と、前記ファイル情報を記憶する第2の領域とを有しており、前記書込完了判断手段は、前記所定タイミングとして前記第2の領域に対する前記ファイル情報の書き込みがあったときに前記記憶手段を検索することを特徴とする。   According to a fifth aspect of the present invention, in addition to the configuration of the second or third aspect of the invention, the storage means stores a first area for storing the file and the file information. And the write completion judging means searches the storage means when the file information is written to the second area as the predetermined timing. .

また、請求項6に係る発明の印刷装置は、請求項1〜5のいずれかに記載の発明の構成に加えて、前記通信手段は、USB(Universal Serial Bus)を介して前記外部端末と通信を行うためのUSBポートであって、前記制御手段は、USBデバイスドライバとしてマスストレージクラスドライバを使用することにより、前記記憶手段を前記外部記憶装置として前記外部端末に認識させることを特徴とする。   According to a sixth aspect of the present invention, in addition to the configuration of the first aspect of the present invention, the communication means communicates with the external terminal via a USB (Universal Serial Bus). The control unit uses a mass storage class driver as a USB device driver, thereby causing the external terminal to recognize the storage unit as the external storage device.

また、請求項7に係る発明の印刷装置は、請求項1〜6のいずれかに記載の発明の構成に加えて、前記記憶手段は、プログラムの実行ファイルをさらに記憶しており、前記制御手段は、前記通信手段にて前記実行ファイルを前記外部端末に送信することにより、前記外部端末において前記プログラムの稼動を可能とすることを特徴とする。   According to a seventh aspect of the present invention, in addition to the configuration of the first aspect of the present invention, the storage means further stores an execution file of a program, and the control means Is characterized in that the execution of the program is enabled in the external terminal by transmitting the executable file to the external terminal by the communication means.

請求項1に係る発明の印刷装置によれば、印刷装置を外部記憶装置として認識する外部端末から印刷ファイルが書き込まれると、記憶手段への印刷ファイルの書き込みが完了したか否かが判断されるので、ファイル管理の主体でない印刷装置側で印刷ファイルの書き込みが完了したことを認識できる。これにより、印刷ファイルの書き込み途中で印刷動作を開始することを防止して、適正な印刷動作を実行できない印刷エラーや印刷画像での文字化けや画像欠損などを抑制することができる。
また、書込コマンドに含まれる印刷データの転送が完了したことを示す応答信号を外部端末に送信する処理が実行された時点から他の書込コマンドを受信することなく所定時間が経過すると、記憶手段への印刷ファイルの書き込みが完了したと判断する。すなわち、印刷装置では一の印刷ファイルについて複数回の書込コマンドを受信する場合があるため、書込コマンドに含まれる印刷データの転送完了時から所定時間経過するまでに他の書込コマンドを受信しなければ、この印刷ファイルについて更なる書込コマンドを受信することがなくファイル書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置側で、印刷ファイルの書き込みが完了したか否かを、外部端末から送信される書込コマンドを基準として正確に特定することができる。
According to the printing apparatus of the first aspect of the present invention, when a print file is written from an external terminal that recognizes the printing apparatus as an external storage device, it is determined whether or not the writing of the print file to the storage unit is completed. Therefore, it is possible to recognize that the writing of the print file is completed on the printing apparatus side which is not the main body of file management. Accordingly, it is possible to prevent the printing operation from being started while the print file is being written, and to suppress a printing error in which an appropriate printing operation cannot be executed, a garbled character in the printed image, an image loss, or the like.
Further, when a predetermined time elapses without receiving another write command from the time when the process of transmitting the response signal indicating that the transfer of the print data included in the write command is completed to the external terminal is executed , the memory is stored. It is determined that the writing of the print file to the means is completed. In other words, the print device may receive a plurality of write commands for one print file, so another write command is received before a predetermined time elapses from the completion of transfer of the print data included in the write command. Otherwise, it is considered that the file writing has been completed without receiving any further write command for this print file. Accordingly, it is possible to accurately specify whether or not the writing of the print file is completed on the side of the printing apparatus that is not the main body of file management, based on the write command transmitted from the external terminal.

また、請求項2に係る発明の印刷装置によれば、所定タイミングで記憶手段を検索して印刷ファイルを示すファイル名を発見すると、記憶手段への印刷ファイルの書き込みが完了したと判断する。すなわち、記憶手段への印刷ファイルの書き込みが完了すると、記憶手段に記憶されているファイル情報にこの印刷ファイルを示すファイル名が記憶される。そのため、所定タイミングでファイル情報を検索して、印刷ファイルを示すファイル名を発見するとファイル書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置側で、印刷ファイルの書き込みが完了したか否かを、ファイル名の検索という簡易な制御だけで正確に特定することができる。   According to the second aspect of the invention, when the storage unit is searched at a predetermined timing to find a file name indicating the print file, it is determined that the writing of the print file to the storage unit is completed. That is, when the writing of the print file to the storage means is completed, the file name indicating this print file is stored in the file information stored in the storage means. Therefore, when file information is searched at a predetermined timing and a file name indicating a print file is found, it is considered that the file writing is completed. As a result, it is possible to accurately specify whether or not the writing of the print file is completed on the side of the printing apparatus that is not the main body of file management only by simple control of searching for the file name.

また、請求項3に係る発明の印刷装置によれば、所定タイミングで記憶手段を検索して規定データ量を示すファイルサイズを発見すると、記憶手段への印刷ファイルの書き込みが完了したと判断する。すなわち、記憶手段への印刷ファイルの書き込みが完了すると、記憶手段に記憶されているファイル情報にこの印刷ファイルが有する規定データ量のファイルサイズが記憶される。そのため、所定タイミングでファイル情報を検索して、規定データ量のファイルサイズを発見するとファイル書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置側で、印刷ファイルの書き込みが完了したか否かを、ファイルサイズの検索という簡易な制御だけで正確に特定することができる。   According to the third aspect of the present invention, when the storage unit is searched at a predetermined timing and a file size indicating the prescribed data amount is found, it is determined that the writing of the print file to the storage unit is completed. That is, when the writing of the print file to the storage unit is completed, the file size of the specified data amount that the print file has is stored in the file information stored in the storage unit. Therefore, when file information is searched at a predetermined timing and a file size of a prescribed data amount is found, it is considered that the file writing is completed. As a result, it is possible to accurately specify whether or not the writing of the print file is completed on the side of the printing apparatus that is not the main body of file management, only by simple control of searching for the file size.

また、請求項4に係る発明の印刷装置によれば、印刷ファイルが書き込まれる所定領域先頭位置に対してデータの書き込みが行われると特定フラグをONにセットし、外部端末に応答信号が送信されると特定フラグをOFFにセットし、特定フラグがOFFにセットされた時点から経過時間をカウントする。これにより、ファイル管理の主体でない印刷装置側で、印刷ファイルの転送開始および印刷データの転送完了を正確に把握でき、誤ったタイミングで経過時間のカウントを開始する不具合を防止することができる。特に、最新の書込コマンド(すなわち、最新の所定領域への書き込み)に基づいて印刷データが転送完了した時点からの経過時間をカウントすることで、一の印刷ファイルについて複数回の書込コマンドを受信した場合でもファイル書き込みの完了を正確に特定することができる。 According to the fourth aspect of the invention, when data is written to the start position of the predetermined area in which the print file is written, the specific flag is set to ON and a response signal is transmitted to the external terminal. Then, the specific flag is set to OFF, and the elapsed time is counted from the time when the specific flag is set to OFF. As a result, the printing device side that is not the file management entity can accurately grasp the start of transfer of the print file and the completion of transfer of the print data, and can prevent a problem of starting counting elapsed time at an incorrect timing. In particular, by counting the elapsed time from the point at which the print data has been transferred based on the latest write command (that is, writing to the latest predetermined area), multiple write commands can be executed for one print file. Even when it is received, the completion of the file writing can be accurately specified.

また、請求項5に係る発明の印刷装置によれば、ファイルを記憶する第1の領域とファイル情報を記憶する第2の領域とを有し、所定のタイミングとして第2の領域にファイル情報の書き込みがあったときに記憶手段を検索する。これによれば、第2の領域にファイル情報が書き込まれたときは、第1の領域に印刷ファイルが書き込まれた可能性が高いため、第2の領域にアクセスがあったときを契機としてファイル情報を検索することで、不要なファイル検索を抑制して処理の迅速化を図ることができる。   According to the printing apparatus of the invention of claim 5, the printing apparatus has a first area for storing a file and a second area for storing file information, and the file information is stored in the second area at a predetermined timing. When there is a write, the storage means is searched. According to this, when the file information is written in the second area, it is highly likely that the print file has been written in the first area. Therefore, the file is triggered when the second area is accessed. By searching for information, it is possible to suppress unnecessary file searches and speed up processing.

また、請求項6に係る発明の印刷装置によれば、汎用的なインターフェースであるUSBを使用して印刷装置および外部端末を接続する。また、印刷装置ではマスストレージクラスドライバを使用することで、外部端末として汎用的なPCなどに、印刷装置を外部記憶装置として認識させる。従って、ユーザによる煩わしい設定作業を要することなく、ユーザの使用利便性を向上させることができるとともに本発明を簡易に実現することができる。   According to the printing apparatus of the invention of claim 6, the printing apparatus and the external terminal are connected using the USB that is a general-purpose interface. Further, the printing apparatus uses a mass storage class driver to allow a general-purpose PC as an external terminal to recognize the printing apparatus as an external storage device. Therefore, the user's convenience can be improved and the present invention can be easily realized without requiring troublesome setting work by the user.

また、請求項7に係る発明の印刷装置によれば、記憶手段にプログラムの実行ファイルをさらに記憶しているので、このプログラムを外部端末から起動して動作させることが可能となる。これにより、予め外部端末にプログラムをインストールしておく必要がなくなるので、印刷ファイルの編集作業時等においてユーザの使用利便性が向上する。   In the printing apparatus according to the seventh aspect of the present invention, since the execution file of the program is further stored in the storage means, the program can be started up and operated from an external terminal. This eliminates the need to install a program in the external terminal in advance, so that the convenience of use for the user is improved when editing a print file.

以下、本発明を具体化した印刷装置の実施の形態について、図面を参照して説明する。なお、これらの図面は、本発明が採用しうる技術的特徴を説明するために用いられるものであり、記載されている装置の構成、各種処理のフローチャートなどは、特に特定的な記載がない限り、それのみに限定する趣旨ではなく、単なる説明例である。   DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of a printing apparatus embodying the present invention will be described below with reference to the drawings. These drawings are used for explaining the technical features that can be adopted by the present invention, and the configuration of the apparatus described, the flowcharts of various processes, etc., unless otherwise specified. It is not intended to be limited to that, but merely an illustrative example.

なお、本実施形態では、印刷装置での印刷処理に使用するために編集プログラム(例えば、エディタ)などで作成された1つのファイルを「印刷ファイル」と称し、この印刷ファイルに含まれる複数のデータを「印刷データ」と称して、両者を文言上区別して説明する。また、「印刷データ」は、印刷装置での印刷処理に必要な最小単位のデータであるものとする。   In the present embodiment, a single file created by an editing program (for example, an editor) for use in printing processing in a printing apparatus is referred to as a “print file”, and a plurality of data included in the print file. Will be referred to as “print data”, and both will be described in terms of words. The “print data” is assumed to be data of the minimum unit necessary for the printing process in the printing apparatus.

はじめに、図1を参照し、本発明の印刷装置10およびパソコン20が接続された印刷システム1について説明する。図1は、印刷システム1を示す模式図である。   First, the printing system 1 to which the printing apparatus 10 and the personal computer 20 of the present invention are connected will be described with reference to FIG. FIG. 1 is a schematic diagram showing a printing system 1.

図1に示すように、印刷システム1は、印刷装置10とパソコン20とがUSBケーブル11を介して接続された構成を有している。印刷装置10は、印字テープに印刷を行う所謂ラベルプリンタである。パソコン20は、本体22、ディスプレイ21、キーボード23、マウス24等を備えたデスクトップコンピュータである。そしてパソコン20は、印刷装置10に対して印刷処理の実行を指示する、印刷システム1のUSBホストとして位置づけられる。   As shown in FIG. 1, the printing system 1 has a configuration in which a printing apparatus 10 and a personal computer 20 are connected via a USB cable 11. The printing apparatus 10 is a so-called label printer that performs printing on a printing tape. The personal computer 20 is a desktop computer including a main body 22, a display 21, a keyboard 23, a mouse 24, and the like. The personal computer 20 is positioned as a USB host of the printing system 1 that instructs the printing apparatus 10 to execute printing processing.

次に、印刷装置10の電気的構成について、図2を参照して説明する。図2は、印刷装置10の電気的構成を示す模式図である。   Next, the electrical configuration of the printing apparatus 10 will be described with reference to FIG. FIG. 2 is a schematic diagram illustrating an electrical configuration of the printing apparatus 10.

図2に示すように、印刷装置10は、装置全体の制御を司るCPU31、制御プログラム等を記憶し、書き換え可能であり、CPU31が制御プログラムを実行する場合において発生する一時的なデータ等が記憶される揮発性記憶素子であるSRAM33、電源を切ってもデータが消えない不揮発性記憶素子であるFlashROM34、および、印刷装置10のパラメータ情報や履歴情報等が記憶される不揮発性記憶素子であるEEPROM35を備えている。そして、CPU31によりSRAM33、FlashROM34、およびEEPROM35に記憶されている情報が参照可能となるように、双方間はバスを介して接続している。   As shown in FIG. 2, the printing apparatus 10 stores a CPU 31 that controls the entire apparatus, a control program, and the like, can be rewritten, and stores temporary data that is generated when the CPU 31 executes the control program. SRAM 33 that is a volatile storage element, FlashROM 34 that is a nonvolatile storage element that does not lose data even when the power is turned off, and EEPROM 35 that is a nonvolatile storage element in which parameter information, history information, and the like of the printing apparatus 10 are stored. It has. The CPU 31 is connected via a bus so that the information stored in the SRAM 33, the Flash ROM 34, and the EEPROM 35 can be referred to by the CPU 31.

また、印刷装置10は、入出力インターフェース36を備えている。入出力インターフェース36は、CPU31と、CPU31に接続される各種デバイス(操作キー37、ディスプレイコントローラ(LCDC)38、駆動回路43、駆動回路44、USBコントローラ42)との間に挿入される。そして、入出力信号間の電圧変換処理、インピーダンス変換処理、タイミング調整処理等を行うことにより、CPU31から各種デバイスに対して出力される信号を各種デバイスにて認識可能となると共に、各種デバイスよりCPU31に対して送信される信号をCPU31にて認識可能となる。   The printing apparatus 10 includes an input / output interface 36. The input / output interface 36 is inserted between the CPU 31 and various devices (operation keys 37, a display controller (LCDC) 38, a drive circuit 43, a drive circuit 44, and a USB controller 42) connected to the CPU 31. By performing voltage conversion processing between input and output signals, impedance conversion processing, timing adjustment processing, and the like, signals output from the CPU 31 to various devices can be recognized by various devices, and the CPU 31 from various devices. Can be recognized by the CPU 31.

また、印刷装置10は、操作キー37を備えている。操作キー37は、ユーザの操作により、印刷装置10に対して所望する様々な動作を起こさせるために設けられている。そして、ユーザにより操作キー37を操作された場合における操作内容をCPU31にて認識することが可能となるように、操作キー37と入出力インターフェース36とは電気的に接続している。   In addition, the printing apparatus 10 includes an operation key 37. The operation key 37 is provided to cause various desired operations to the printing apparatus 10 by a user operation. The operation key 37 and the input / output interface 36 are electrically connected so that the CPU 31 can recognize the operation content when the operation key 37 is operated by the user.

また、印刷装置10は、ディスプレイコントローラ(以下、「LCDC38」という。)、および液晶ディスプレイ(以下、「LCD39」という。)を備えている。LCDC38は、表示データを記憶する表示用RAM(図示外)を備えており、LCD39を制御して表示データを表示させるために、LCD39と電気的に接続している。また、LCDC38は、CPU31より制御可能となるように、入出力インターフェース36と電気的に接続している。   The printing apparatus 10 includes a display controller (hereinafter referred to as “LCDC38”) and a liquid crystal display (hereinafter referred to as “LCD39”). The LCDC 38 includes a display RAM (not shown) that stores display data, and is electrically connected to the LCD 39 in order to control the LCD 39 and display the display data. The LCDC 38 is electrically connected to the input / output interface 36 so as to be controllable by the CPU 31.

また、印刷装置10は、サーマルヘッド40と、サーマルヘッド40を制御可能な駆動回路43とを備えている。サーマルヘッド40は、インクリボン(図示外)に熱を加えることにより印字テープにインクを転写することが可能なデバイスである。駆動回路43は、サーマルヘッド40を制御して印字テープに印刷させることが可能となるように、サーマルヘッド40と電気的に接続している。駆動回路43は、CPU31より制御可能となるように、入出力インターフェース36と電気的に接続している。   The printing apparatus 10 includes a thermal head 40 and a drive circuit 43 that can control the thermal head 40. The thermal head 40 is a device capable of transferring ink to a printing tape by applying heat to an ink ribbon (not shown). The drive circuit 43 is electrically connected to the thermal head 40 so that the thermal head 40 can be controlled and printed on the print tape. The drive circuit 43 is electrically connected to the input / output interface 36 so that it can be controlled by the CPU 31.

また、印刷装置10は、テープ送りローラ41と、テープ送りローラ41を制御可能な駆動回路44とを備えている。テープ送りローラ41は、サーマルヘッド40によるインク転写時において印字テープを送出するために設けられている。駆動回路44は、サーマルヘッド40による印字テープへの印字時に、テープ送りローラ41を制御して印字テープを送出させることが可能となるように、テープ送りローラ41と電気的に接続している。駆動回路44は、CPU31により制御可能となるように、入出力インターフェース36と電気的に接続している。   The printing apparatus 10 also includes a tape feed roller 41 and a drive circuit 44 that can control the tape feed roller 41. The tape feeding roller 41 is provided for feeding the printing tape during ink transfer by the thermal head 40. The drive circuit 44 is electrically connected to the tape feed roller 41 so that the print head can be fed by controlling the tape feed roller 41 during printing on the print tape by the thermal head 40. The drive circuit 44 is electrically connected to the input / output interface 36 so that it can be controlled by the CPU 31.

また、印刷装置10は、USBコントローラ42を備えている。USBコントローラ42は、パソコン20とUSBケーブル11を介して接続した状態で、パソコン20と通信を行うことが可能となるように、電圧変換処理およびインピーダンス変換処理を行うためのコントローラデバイスである。そして、USBケーブル11を介してパソコン20から受信した信号をCPU31にて認識可能とするために、または、CPU31により送信された信号をUSBケーブル11を介してパソコン20に送信することが可能となるように、USBコントローラ42と入出力インターフェース36とは電気的に接続している。   The printing apparatus 10 includes a USB controller 42. The USB controller 42 is a controller device for performing voltage conversion processing and impedance conversion processing so as to be able to communicate with the personal computer 20 while being connected to the personal computer 20 via the USB cable 11. The signal received from the personal computer 20 via the USB cable 11 can be recognized by the CPU 31 or the signal transmitted by the CPU 31 can be transmitted to the personal computer 20 via the USB cable 11. As described above, the USB controller 42 and the input / output interface 36 are electrically connected.

次に、印刷装置10が備える記憶素子であるFlashROM34およびSRAM33の各記憶領域について、図3および図4を参照して説明する。図3は、FlashROM34の記憶領域を示す模式図である。図4は、SRAM33の記憶領域を示す模式図である。   Next, the storage areas of the flash ROM 34 and the SRAM 33 that are storage elements included in the printing apparatus 10 will be described with reference to FIGS. 3 and 4. FIG. 3 is a schematic diagram showing a storage area of the FlashROM 34. FIG. 4 is a schematic diagram showing a storage area of the SRAM 33.

図3を参照し、FlashROM34の記憶領域について説明する。FlashROM34には、制御プログラム領域51が設けられている。制御プログラム領域51には、CPU31が各種デバイスを制御して処理を実行する場合に駆動する制御プログラムが記憶されている。制御プログラムは、CPU31が各種処理を実行する場合において、CPU31より読み出される。また、制御プログラム領域51には、アプリケーションプログラム領域52、USBデバイスドライバ領域53およびその他の領域が設けられている。   The storage area of the FlashROM 34 will be described with reference to FIG. A control program area 51 is provided in the Flash ROM 34. The control program area 51 stores a control program that is driven when the CPU 31 controls various devices to execute processing. The control program is read from the CPU 31 when the CPU 31 executes various processes. Further, the control program area 51 is provided with an application program area 52, a USB device driver area 53, and other areas.

アプリケーションプログラム領域52には、CPU31が実行する制御プログラムのうち、上位レベルの制御プログラム(ファイル操作(書き込みや読み出し等)、ファイルの内容に基づく判断、各種ドライバプログラムへの命令等)が記憶されている。このような上位レベルの制御プログラムには、印刷装置10の動作全般を司るメインプログラムも含まれる。   In the application program area 52, among the control programs executed by the CPU 31, a high-level control program (file operation (writing, reading, etc.), determination based on file contents, instructions to various driver programs, etc.) is stored. Yes. Such a higher-level control program includes a main program that controls the overall operation of the printing apparatus 10.

USBデバイスドライバ領域53には、USBケーブル11を介した通信のプロトコル制御を実行するUSBデバイスドライバ57が記憶されている。具体的には、USBデバイスドライバ57として、プリンタクラスドライバ58とマスストレージクラスドライバ59とが記憶されている。印刷装置10がUSBケーブル11を介してパソコン20と通信を行う場合、必要に応じていずれかのUSBデバイスドライバ57がCPU31より読み出されて使用される。   The USB device driver area 53 stores a USB device driver 57 that executes protocol control for communication via the USB cable 11. Specifically, a printer class driver 58 and a mass storage class driver 59 are stored as the USB device driver 57. When the printing apparatus 10 communicates with the personal computer 20 via the USB cable 11, one of the USB device drivers 57 is read from the CPU 31 and used as necessary.

CPU31により、USBデバイスドライバ57としてプリンタクラスドライバ58が使用される場合には、印刷装置10はパソコン20により印刷デバイスとして認識される。これにより、従来の一般的な印刷装置の使用方法と同様に、パソコン20から印刷装置10に対して印刷データを送信することによって、印刷装置10にて印字テープに印刷を行うことが可能となる。以下、印刷デバイスとして認識されるような駆動状態を「印刷デバイス状態」という。   When the printer class driver 58 is used as the USB device driver 57 by the CPU 31, the printing apparatus 10 is recognized as a printing device by the personal computer 20. As a result, as in the conventional method of using a general printing apparatus, printing data can be printed on the printing tape by the printing apparatus 10 by transmitting print data from the personal computer 20 to the printing apparatus 10. . Hereinafter, a driving state that is recognized as a printing device is referred to as a “printing device state”.

CPU31により、USBデバイスドライバ57としてマスストレージクラスドライバ59が使用される場合には、印刷装置10はパソコン20により記憶デバイスとして認識される。これにより、印刷装置10内の特定の記憶領域(後述するディスク領域90およびディスク領域101)がパソコン20の記憶領域として使用可能となる。以下、記憶デバイスとして認識されるような駆動状態を「記憶デバイス状態」という。   When the mass storage class driver 59 is used as the USB device driver 57 by the CPU 31, the printing apparatus 10 is recognized as a storage device by the personal computer 20. As a result, specific storage areas (disc area 90 and disk area 101 described later) in the printing apparatus 10 can be used as storage areas of the personal computer 20. Hereinafter, a drive state that is recognized as a storage device is referred to as a “storage device state”.

また、FlashROM34には、ディスク領域90が設けられている。ディスク領域90は、印刷装置10がパソコン20により記憶デバイスとして認識された状態において、パソコン20の記憶領域として使用可能となるように設定されている。本実施形態では、ディスク領域90上のファイルやディレクトリの管理を行うためのファイルシステムとして、FAT(File Allocation Tables)が採用されている。そのため、ディスク領域90には、MBR領域91、BPB領域92、FAT領域93、RDE領域94およびDATA領域95が設けられている。   Further, the flash ROM 34 is provided with a disk area 90. The disk area 90 is set to be usable as a storage area of the personal computer 20 in a state where the printing apparatus 10 is recognized as a storage device by the personal computer 20. In the present embodiment, FAT (File Allocation Tables) is adopted as a file system for managing files and directories on the disk area 90. Therefore, the disk area 90 is provided with an MBR area 91, a BPB area 92, a FAT area 93, an RDE area 94, and a DATA area 95.

MBR(Master Boot Record)領域91には、ディスク領域90における各パーティションのファイルシステムタイプ(本実施形態ではFAT12)、および、BPB領域92の先頭セクタが記憶されている。   An MBR (Master Boot Record) area 91 stores the file system type (FAT 12 in this embodiment) of each partition in the disk area 90 and the head sector of the BPB area 92.

BPB(BIOS Parameter Block)領域92には、FAT構成情報として、最小記録単位(物理フォーマット)である1セクタのバイト数(本実施形態では512バイト)や、実際のファイルの読み書き単位である1クラスタのセクタ数(本実施形態では1セクタ)などの物理的な属性が記憶される。   In the BPB (BIOS Parameter Block) area 92, as the FAT configuration information, the number of bytes of one sector (512 bytes in this embodiment) which is the minimum recording unit (physical format) and one cluster which is the actual file read / write unit The physical attribute such as the number of sectors (1 sector in the present embodiment) is stored.

FAT領域93には、DATA領域95にそれぞれ分散配置されている複数のデータの並び(すなわち、ファイルのデータ位置(クラスタ))を管理するテーブルであり、FATを構成する各セクタに次のクラスタ情報をそれぞれ記録することで連続したデータ領域を示す構造を有する。なお、FAT領域93は、同じ内容を持つ2つのFATを備えており、FATを二重化することで信頼性の向上を図っている。   The FAT area 93 is a table for managing the arrangement of a plurality of data distributed in the DATA area 95 (that is, the data position (cluster) of the file), and the next cluster information for each sector constituting the FAT. Are recorded to indicate a continuous data area. Note that the FAT area 93 includes two FATs having the same contents, and reliability is improved by duplicating the FAT.

RDE(Root Derectory Entry)領域94には、ディスク領域90に記憶されているファイルの属性情報であるファイル情報データ(ファイル名、最初のクラスタ位置、更新日時、ファイルサイズ等)が記憶されている。なお、RDE領域94に記憶されるファイル情報データの大きさは、1ファイルあたり32バイトである。   In an RDE (Root Directory Entry) area 94, file information data (file name, initial cluster position, update date, file size, etc.) that is attribute information of a file stored in the disk area 90 is stored. Note that the size of the file information data stored in the RDE area 94 is 32 bytes per file.

DATA領域95は、各種ファイルの実データがクラスタ単位で記憶される領域である。本実施形態では、DATA領域95に、編集プログラム実行ファイル領域96、ステータスファイル領域97、印刷ファイル領域98およびブランクファイル領域99が設けられている。編集プログラム実行ファイル領域96は、印刷ファイルを編集するためのプログラムの実行ファイル(以下、編集プログラム実行ファイルと称する。)を記憶する領域である。ステータスファイル領域97は、印刷装置10に関するステータス(例えば、機種コード、国別コード、エラー情報、メディア情報など)を示す各種データを含むステータスファイルを記憶する領域である。印刷ファイル領域98は、一まとまりの印刷データや印刷開始コマンドデータを含んだ印刷ファイルを記憶する領域である。ただし、FlashROM34のステータスファイル領域97および印刷ファイル領域98に記憶されているステータスファイルおよび印刷ファイルは、後述するようにSRAM33にコピーされてステータスファイル領域105および印刷ファイル領域106(図4参照)の記憶領域を確保するためのダミーファイルである。   The DATA area 95 is an area where actual data of various files is stored in cluster units. In the present embodiment, an editing program execution file area 96, a status file area 97, a print file area 98, and a blank file area 99 are provided in the DATA area 95. The editing program execution file area 96 is an area for storing an execution file of a program for editing a print file (hereinafter referred to as an editing program execution file). The status file area 97 is an area for storing a status file including various data indicating the status relating to the printing apparatus 10 (for example, model code, country code, error information, media information, etc.). The print file area 98 is an area for storing a print file including a group of print data and print start command data. However, the status file and the print file stored in the status file area 97 and the print file area 98 of the flash ROM 34 are copied to the SRAM 33 and stored in the status file area 105 and the print file area 106 (see FIG. 4) as will be described later. It is a dummy file for securing the area.

なお、DATA領域95において、上記ファイル領域96、97、98以外の領域は、無意味なデータ列(例えば、0)で構成されたブランクファイルが隙間なく記憶されるブランクファイル領域である。そのため、ファイルシステムでは、DATA領域95に他のファイルを記憶可能な空き領域が存在しないように認識される。   In the DATA area 95, areas other than the file areas 96, 97, and 98 are blank file areas in which blank files composed of meaningless data strings (for example, 0) are stored without gaps. For this reason, the file system recognizes that there is no free area in the DATA area 95 that can store other files.

次に、図4を参照し、SRAM33の記憶領域について説明する。SRAM33には、ディスク領域101およびローカル領域107が設けられている。ディスク領域101は、FlashROM34から読み出された各種データを一時的に記憶するための領域である。ローカル領域107は、CPU31にて各種処理が実行される場合において必要となる情報を記憶するための領域である。   Next, the storage area of the SRAM 33 will be described with reference to FIG. The SRAM 33 is provided with a disk area 101 and a local area 107. The disk area 101 is an area for temporarily storing various data read from the flash ROM 34. The local area 107 is an area for storing information necessary when various processes are executed by the CPU 31.

ディスク領域101は、FAT領域102、RDE領域103およびDATA領域104を有している。ここで、印刷装置10の電源がON状態に操作されると、後述する初期化処理(図7のS11参照)において、CPU31はファイルシステムの一部をSRAM33に展開する。このとき、FlashROM34のFAT領域93、RDE領域94およびDATA領域95がコピーされて、SRAM33のFAT領域102、RDE領域103およびDATA領域104が形成される。なお、SRAM33のDATA領域104には、FlashROM34のDATA領域95のうちでステータスファイル領域97および印刷ファイル領域98がコピーされて、ステータスファイル領域105および印刷ファイル領域106が形成される。   The disk area 101 has a FAT area 102, an RDE area 103, and a DATA area 104. Here, when the printing apparatus 10 is turned on, the CPU 31 expands a part of the file system in the SRAM 33 in an initialization process (see S11 in FIG. 7) described later. At this time, the FAT area 93, the RDE area 94, and the DATA area 95 of the FlashROM 34 are copied to form the FAT area 102, the RDE area 103, and the DATA area 104 of the SRAM 33. In the DATA area 104 of the SRAM 33, the status file area 97 and the print file area 98 are copied from the DATA area 95 of the FlashROM 34, and the status file area 105 and the print file area 106 are formed.

つまり、印刷装置10の電源がON状態に操作されると、FlashROM34のディスク領域90のうちで、SRAM33の一部領域がUSBマスストレージとして動作するために最低限必要な領域(つまり、FAT領域93、RDE領域94、ステータスファイル領域97および印刷ファイル領域98)のみが、SRAM33のディスク領域101として展開される。これにより、SRAM33のディスク領域101も、ディスク領域90と同様に、印刷装置10がパソコン20により記憶デバイスとして認識された状態において、パソコン20の記憶領域として使用可能となるように設定される。   In other words, when the power of the printing apparatus 10 is operated to be in an ON state, a minimum area required for a part of the SRAM 33 to operate as a USB mass storage in the disk area 90 of the Flash ROM 34 (that is, the FAT area 93). , RDE area 94, status file area 97, and print file area 98) are expanded as the disk area 101 of the SRAM 33. As a result, the disk area 101 of the SRAM 33 is set so that it can be used as a storage area of the personal computer 20 in a state where the printing apparatus 10 is recognized as a storage device by the personal computer 20, similarly to the disk area 90.

その結果、本実施形態の印刷装置10では、FlashROM34のディスク領域90の代わりにSRAM33のディスク領域101が、USBマスストレージとして動作することになる。そして、FlashROM34のディスク領域90はデータ読み取り専用であって、実際にデータの読み書きが発生するのはSRAM33のディスク領域101のみである。   As a result, in the printing apparatus 10 of the present embodiment, the disk area 101 of the SRAM 33 operates as a USB mass storage instead of the disk area 90 of the FlashROM 34. The disk area 90 of the flash ROM 34 is dedicated to data reading, and data reading / writing actually occurs only in the disk area 101 of the SRAM 33.

ここで、USBマスストレージ(つまり、各ディスク領域90、101)のファイルシステムの管理主体は、USBホスト(つまり、パソコン20)である。そして、本実施形態では、制御プログラム領域51に記憶されているファームウエアの制御によって、物理的に分離されたFlashROM34およびSRAM33が、パソコン20側で連続したメモリ空間として認識される。そのうえで、パソコン20側でファイルシステムにアクセスするときは、SRAM33のディスク領域101(詳細には、FAT領域102、RDE領域103、ステータスファイル領域105および印刷ファイル領域106)に対してデータ操作を行う。   Here, the management entity of the file system of the USB mass storage (that is, each of the disk areas 90 and 101) is the USB host (that is, the personal computer 20). In the present embodiment, the flash ROM 34 and the SRAM 33 that are physically separated by the control of the firmware stored in the control program area 51 are recognized as a continuous memory space on the personal computer 20 side. In addition, when accessing the file system on the personal computer 20 side, data operations are performed on the disk area 101 (specifically, the FAT area 102, the RDE area 103, the status file area 105, and the print file area 106) of the SRAM 33.

このように、USBマスストレージとして最低限必要な領域のみをFlashROM34からSRAM33に展開してSRAM33上でファイル操作を行うようにした理由は、SRAMはFlashROMとは異なり書き込み回数に制限がなく、かつ、SRAMのほうがFlashROMよりも書き込み時間が早いためである。また、SRAM33にはUSBマスストレージとして最低限必要な領域のみが展開されるため、FAT構造全体をコピーするよりもSRAM33のデータ容量が小さくて済み、印刷装置10の製品コストを抑制することができる。なお、本実施形態では、FlashROM34のデータ容量が4メガバイトであるのに対し、SRAM33のデータ容量は128キロバイトである。   In this way, the reason why only the minimum necessary area for USB mass storage is expanded from the FlashROM 34 to the SRAM 33 and the file operation is performed on the SRAM 33 is that the SRAM has no limit on the number of times of writing unlike the FlashROM, and This is because SRAM has a faster write time than FlashROM. Further, since only the minimum area necessary for USB mass storage is expanded in the SRAM 33, the data capacity of the SRAM 33 can be smaller than copying the entire FAT structure, and the product cost of the printing apparatus 10 can be suppressed. . In the present embodiment, the data capacity of the FlashROM 34 is 4 megabytes, whereas the data capacity of the SRAM 33 is 128 kilobytes.

一方、SRAM33のローカル領域107は、印刷バッファ領域108、フラグ領域109、リングバッファ領域110、受信バッファ領域111などを有している。印刷バッファ領域108は、印字テープの印字時に使用される印刷データが一時的に記憶される領域である。フラグ領域109は、各種のフラグ情報を記憶する領域である。リングバッファ領域110は、印刷装置10がパソコン20により印刷デバイスとして認識されている状態において、パソコン20から受信する各種データが記憶される領域である。受信バッファ領域111は、印刷装置10がパソコン20により記憶デバイスとして認識されている状態において、パソコン20から受信する各種データが記憶される領域である。   On the other hand, the local area 107 of the SRAM 33 includes a print buffer area 108, a flag area 109, a ring buffer area 110, a reception buffer area 111, and the like. The print buffer area 108 is an area for temporarily storing print data used when printing on the print tape. The flag area 109 is an area for storing various flag information. The ring buffer area 110 is an area for storing various data received from the personal computer 20 when the printing apparatus 10 is recognized as a printing device by the personal computer 20. The reception buffer area 111 is an area for storing various data received from the personal computer 20 in a state where the printing apparatus 10 is recognized as a storage device by the personal computer 20.

ところで、本実施形態では印刷装置10のメモリ(SRAM33およびFlashROM34)を管理するファイルシステムとしてFATを採用しているため、1セクタのバイト数や1クラスタのセクタ数などが規定されている。また、各記憶領域90〜99、101〜106は、その記憶容量(セクタサイズ)および記憶位置(クラスタ位置)があらかじめ規定されている。さらに、印刷ファイル領域98、106には、一つの固定長の印刷ファイルのみが記憶されている。   By the way, in this embodiment, FAT is adopted as a file system for managing the memory (SRAM 33 and Flash ROM 34) of the printing apparatus 10, and therefore, the number of bytes in one sector, the number of sectors in one cluster, and the like are defined. In addition, the storage capacity (sector size) and storage position (cluster position) of each of the storage areas 90 to 99 and 101 to 106 are defined in advance. Further, only one fixed-length print file is stored in the print file areas 98 and 106.

このようなデータ構造によって、SRAM33にて印刷ファイル領域106にてファイル操作が行われる場合、印刷ファイルのデータ書き込み位置またはデータ読み出し位置が常に同じ(すなわち、特定クラスタの先頭セクタ)となる。ステータスファイル領域105についても同様に、一つのステータスファイルのみが記憶されて、ステータスファイルのデータ書き込み位置またはデータ読み出し位置が常に同じである。また、本実施形態では、ステータスファイルは1ファイルあたり512バイト(1セクタ)の固定長データであり、印刷ファイルは1ファイルあたり32キロバイト(40セクタ)の固定長データである。   With such a data structure, when a file operation is performed in the print file area 106 in the SRAM 33, the data write position or data read position of the print file is always the same (that is, the first sector of the specific cluster). Similarly, only one status file is stored in the status file area 105, and the data writing position or data reading position of the status file is always the same. In this embodiment, the status file is 512 bytes (1 sector) of fixed length data per file, and the print file is 32 kilobytes (40 sectors) of fixed length data per file.

特に、本実施形態では、パソコン20において後述するように編集プログラム実行ファイルを用いて作成される印刷ファイルが、常に規定(32キロバイト)のファイルサイズで作成される。編集プログラム実行ファイルは、ユーザ操作により作成された印刷用画像データが32キロバイトよりも小さくても、残りの領域にダミーデータ(例えば0)を含めることで、ファイル全体としては32キロバイトのファイルサイズとなるような印刷ファイルを作成する。これにより、SRAM33の印刷ファイル領域106に印刷ファイルの書き込みが発生しても、CPU31は印刷ファイル領域106の記憶領域を変えることなく印刷ファイルを上書きすることができる。   In particular, in the present embodiment, a print file created by using the editing program execution file in the personal computer 20 is always created with a prescribed file size (32 kilobytes). Even if the print image data created by the user operation is smaller than 32 kilobytes, the editing program execution file includes dummy data (for example, 0) in the remaining area, so that the file size of the entire file is 32 kilobytes. Create a print file that Thus, even if a print file is written in the print file area 106 of the SRAM 33, the CPU 31 can overwrite the print file without changing the storage area of the print file area 106.

次に、印刷装置10のCPU31がパソコン20と通信を行う場合における、印刷装置10内のデータの流れについて、図5を参照して説明する。図5は、印刷装置10〜パソコン20間で送受されるデータの流れを示す内部ブロック図である。   Next, the flow of data in the printing apparatus 10 when the CPU 31 of the printing apparatus 10 communicates with the personal computer 20 will be described with reference to FIG. FIG. 5 is an internal block diagram illustrating a flow of data transmitted and received between the printing apparatus 10 and the personal computer 20.

図5に示すように、FlashROM34には、先述のように、制御プログラムとしてアプリケーションプログラム54(例えば、メインプログラム)とUSBデバイスドライバ57(ここでは、プリンタクラスドライバ58とマスストレージクラスドライバ59)とを備えている。USBデバイスドライバ57は、実際にUSBコントローラ42を制御してパソコン20とUSBケーブル11を介した通信を実行する場合において、事前にCPU31により読み出されて使用されるプログラムである。   As shown in FIG. 5, the flash ROM 34 has an application program 54 (for example, a main program) and a USB device driver 57 (here, a printer class driver 58 and a mass storage class driver 59) as control programs, as described above. I have. The USB device driver 57 is a program that is read and used in advance by the CPU 31 when the USB controller 42 is actually controlled to execute communication with the personal computer 20 via the USB cable 11.

そして、CPU31がUSBデバイスドライバ57としてマスストレージクラスドライバ59を選択した場合には、パソコン20は印刷装置10を記憶デバイスとして認識する。これにより、パソコン20が印刷装置10とUSBケーブル11を介して接続した状態で、ディスク領域90、101をパソコン20の記憶領域として使用可能となる。また、CPU31がUSBデバイスドライバ57としてプリンタクラスドライバ58を選択した場合には、パソコン20は印刷装置10を印刷デバイスとして認識する。これにより、パソコン20が印刷装置10とUSBケーブル11を介して接続した状態で、パソコン20より印刷装置10に対して印刷データを転送し印刷指示を行うことによって、印刷装置10に印刷処理を実行させることが可能な状態となる。   When the CPU 31 selects the mass storage class driver 59 as the USB device driver 57, the personal computer 20 recognizes the printing apparatus 10 as a storage device. As a result, the disk areas 90 and 101 can be used as storage areas of the personal computer 20 in a state where the personal computer 20 is connected to the printing apparatus 10 via the USB cable 11. When the CPU 31 selects the printer class driver 58 as the USB device driver 57, the personal computer 20 recognizes the printing apparatus 10 as a printing device. As a result, when the personal computer 20 is connected to the printing apparatus 10 via the USB cable 11, the print data is transferred from the personal computer 20 to the printing apparatus 10 and a printing instruction is issued, thereby executing a printing process on the printing apparatus 10. It becomes a state that can be made to.

次いで、USBコントローラ42について説明する。USBコントローラ42は、エンドポイント(EP)を使用してUSBケーブル11を介したパケットの送受信を実行する。EPとは、FIFO構造を有する送受信用バッファである。そして、送信用に割り当てられた送信用EP(バッファサイズ64バイトのEP1)にデータが記憶された場合に、USBコントローラ42は記憶されたデータをパケット化してUSBケーブル11に対して送信可能となる。一方、USBコントローラ42がUSBケーブル11を介してパケットを受信した場合には、パケット中のデータは受信用に割り当てられた受信用EP(バッファサイズ64バイトのEP2)に記憶される。従って、CPU31は、送信用EPに送信データを記憶することにより、パソコン20に対してパケットを送信することが可能となる。また、CPU31は、受信用EPに記憶されたデータを読み出すことにより、パソコン20からのパケットを認識することが可能となる。   Next, the USB controller 42 will be described. The USB controller 42 transmits / receives a packet via the USB cable 11 using an end point (EP). An EP is a transmission / reception buffer having a FIFO structure. When data is stored in a transmission EP (EP1 with a buffer size of 64 bytes) allocated for transmission, the USB controller 42 can packetize the stored data and transmit it to the USB cable 11. . On the other hand, when the USB controller 42 receives a packet via the USB cable 11, the data in the packet is stored in a reception EP (EP2 with a buffer size of 64 bytes) allocated for reception. Therefore, the CPU 31 can transmit packets to the personal computer 20 by storing transmission data in the transmission EP. Further, the CPU 31 can recognize the packet from the personal computer 20 by reading the data stored in the reception EP.

次いで、USBコントローラ42のパケット通信時における動作について概説する。USBコントローラ42とCPU31との間には、USBコントローラ42の状態をCPU31に通知するための制御信号として、バルクIN転送要求線62と、バルクOUT転送要求線63とが少なくとも設けられている。ここで、バルクIN転送要求線62は、送信用EPにデータが記憶された場合に、USBコントローラ42が電位を変位させる。CPU31は、バルクIN転送要求線62の電位が変位したことを検出した場合に、USBコントローラ42がパソコン20に対してパケットを送信可能な状態であると判断する。そして、CPU31は、パソコン20に対してパケットを送信することが可能なタイミングでUSBコントローラ42を制御し、送信用EPに記憶されているデータをパケット化させてパソコン20に送信させる。   Next, the operation of the USB controller 42 during packet communication will be outlined. Between the USB controller 42 and the CPU 31, at least a bulk IN transfer request line 62 and a bulk OUT transfer request line 63 are provided as control signals for notifying the CPU 31 of the state of the USB controller 42. Here, when data is stored in the transmission EP, the USB controller 42 displaces the potential of the bulk IN transfer request line 62. When the CPU 31 detects that the potential of the bulk IN transfer request line 62 has been displaced, the CPU 31 determines that the USB controller 42 is ready to transmit a packet to the personal computer 20. Then, the CPU 31 controls the USB controller 42 at a timing at which a packet can be transmitted to the personal computer 20, packetizes the data stored in the transmission EP, and transmits the packet to the personal computer 20.

一方、バルクOUT転送要求線63は、受信用EPにデータが記憶された場合に、USBコントローラ42が電位を変位させる。USBケーブル11を介してUSBコントローラ42が受信したパケットのデータは受信用EPに自動的に格納されるので、CPU31は、バルクOUT転送要求線63の電位が変位したことを検出した場合に、USBコントローラ42がパソコン20よりパケットを受信したと判断する。そして、CPU31は、USBコントローラ42を制御し、受信用EPに記憶されているデータを読み出してSRAM33に記憶する。   On the other hand, when data is stored in the reception EP, the USB controller 42 displaces the potential of the bulk OUT transfer request line 63. Since the data of the packet received by the USB controller 42 via the USB cable 11 is automatically stored in the reception EP, the CPU 31 detects that the potential of the bulk OUT transfer request line 63 has been displaced, It is determined that the controller 42 has received a packet from the personal computer 20. Then, the CPU 31 controls the USB controller 42 to read out data stored in the reception EP and store it in the SRAM 33.

以上概説した処理を実行することにより、CPU31は、USBケーブル11を介して接続された状態におけるパソコン20に対するパケット送信処理、および、パソコン20からのパケット受信処理を実行する。   By executing the processing outlined above, the CPU 31 executes packet transmission processing to the personal computer 20 and packet reception processing from the personal computer 20 in a state connected via the USB cable 11.

次に、印刷装置10〜パソコン20間で実行される通信シーケンスについて、図6を参照して説明する。図6は、印刷装置10〜パソコン20間の通信シーケンスを示す模式図である。   Next, a communication sequence executed between the printing apparatus 10 and the personal computer 20 will be described with reference to FIG. FIG. 6 is a schematic diagram illustrating a communication sequence between the printing apparatus 10 and the personal computer 20.

図6に示すように、はじめに、印刷装置10とパソコン20とがUSBケーブル11を介して接続される(81)。この状態では、印刷装置10の電源スイッチがON状態となっていないので、パソコン20は印刷装置10を認識できておらず、印刷装置10〜パソコン20との間で通信はなされていない。   As shown in FIG. 6, first, the printing apparatus 10 and the personal computer 20 are connected via the USB cable 11 (81). In this state, since the power switch of the printing apparatus 10 is not in the ON state, the personal computer 20 cannot recognize the printing apparatus 10 and no communication is performed between the printing apparatus 10 and the personal computer 20.

次いで、印刷装置10の電源スイッチがON状態とされる(70)。本実施形態では、印刷装置10は電源スイッチがONとされた直後は、USBデバイスドライバ57としてマスストレージクラスドライバ59を選択して読み込む。これにより、印刷装置10はパソコン20により記憶デバイスとして認識される状態、すなわち「記憶デバイス状態」となる。また、印刷装置10は電源スイッチがONされるのと同時に、USBケーブル11の信号線のうちD+信号をプルアップする。そして、パソコン20にてD+信号のプルアップ状態が検出された場合に、パソコン20は印刷装置10がUSBケーブル11を介して接続されたと判断する。   Next, the power switch of the printing apparatus 10 is turned on (70). In the present embodiment, the printing apparatus 10 selects and reads the mass storage class driver 59 as the USB device driver 57 immediately after the power switch is turned on. As a result, the printing apparatus 10 enters a state recognized as a storage device by the personal computer 20, that is, a “storage device state”. Also, the printing apparatus 10 pulls up the D + signal on the signal line of the USB cable 11 at the same time when the power switch is turned on. When the pull-up state of the D + signal is detected by the personal computer 20, the personal computer 20 determines that the printing apparatus 10 is connected via the USB cable 11.

パソコン20にて印刷装置10が接続されたと判断された場合、次いで、印刷装置10〜パソコン20間でプラグアンドプレイ通信(PnP通信)が実行される(82)。PnP通信では、USBホストとして機能するパソコン20が、ターゲットとなるUSBデバイスとして機能する印刷装置10の駆動状態を把握するためのパケット通信が実行される。この場合、USBコントローラ42にてコントロール転送用に割り当てられた制御用EP(バッファサイズが8バイトのEP0)が使用され、パケットの送受信が実行される。そしてPnP通信により、パソコン20は、接続された印刷装置10の駆動状態が「記憶デバイス状態」となっており、SRAM33およびFlashROM34の各ディスク領域90、101がパソコン20の記憶領域として使用可能な状態であることを認識する。   If it is determined that the printing apparatus 10 is connected by the personal computer 20, then plug and play communication (PnP communication) is executed between the printing apparatus 10 and the personal computer 20 (82). In PnP communication, packet communication is performed for the personal computer 20 functioning as a USB host to grasp the driving state of the printing apparatus 10 functioning as a target USB device. In this case, the control EP (EP0 having a buffer size of 8 bytes) assigned for control transfer by the USB controller 42 is used, and packet transmission / reception is executed. By the PnP communication, in the personal computer 20, the drive state of the connected printing apparatus 10 is “storage device state”, and the disk areas 90 and 101 of the SRAM 33 and FlashROM 34 can be used as storage areas of the personal computer 20. Recognize that.

PnP通信(82)が終了した以後は、各ディスク領域90、101のファイルがパソコン20によって参照される度に、参照されるデータを含むパケットが印刷装置10からパソコン20に対して転送される(83)。また、パソコン20によって各ディスク領域90、101にファイルが記憶される場合に、記憶されるファイルを構成するデータを含むパケットがパソコン20から印刷装置10に対して転送される(84)。   After the end of the PnP communication (82), each time a file in each disk area 90, 101 is referred to by the personal computer 20, a packet including the referenced data is transferred from the printing apparatus 10 to the personal computer 20 ( 83). When a file is stored in each of the disk areas 90 and 101 by the personal computer 20, a packet including data constituting the stored file is transferred from the personal computer 20 to the printing apparatus 10 (84).

ここで、印刷装置10が「記憶デバイス状態」となっている場合において、パソコン20により印刷装置10に対して印刷処理を実行させる具体例について、図6を参照しつつ説明する。はじめに、パソコン20を操作するユーザにより、FlashROM34のディスク領域90に記憶されている編集プログラム実行ファイルが選択される。すると、編集プログラム実行ファイルが印刷装置10からパソコン20に対して転送される(83)。そして、パソコン20の記憶領域(図示外)に、この転送された編集プログラム実行ファイルが記憶される。これにより、パソコン20のユーザが編集プログラム実行ファイルを使用可能となるので、ユーザは編集プログラム実行ファイルを使用して任意の印刷ファイルを作成する。   Here, a specific example in which the personal computer 20 causes the printing apparatus 10 to execute print processing when the printing apparatus 10 is in the “storage device state” will be described with reference to FIG. 6. First, the editing program execution file stored in the disk area 90 of the Flash ROM 34 is selected by the user operating the personal computer 20. Then, the editing program execution file is transferred from the printing apparatus 10 to the personal computer 20 (83). Then, the transferred editing program execution file is stored in a storage area (not shown) of the personal computer 20. As a result, the user of the personal computer 20 can use the editing program execution file, and the user creates an arbitrary print file using the editing program execution file.

印刷ファイルの作成が終了すると、ユーザはパソコン20で作成済みの印刷ファイルを印刷装置10のメモリ上に保存することを指示する。すると、この印刷ファイルが、パソコン20から印刷装置10に対して転送され(84)、SRAM33の印刷ファイル領域106に書き込まれる。そして、印刷装置10は、印刷ファイル領域106に格納されている印刷ファイルに含まれる各データに基づいて印刷処理を実行する。   When the creation of the print file is completed, the user instructs to save the print file created on the personal computer 20 in the memory of the printing apparatus 10. Then, this print file is transferred from the personal computer 20 to the printing apparatus 10 (84) and written in the print file area 106 of the SRAM 33. Then, the printing apparatus 10 executes print processing based on each data included in the print file stored in the print file area 106.

次いで、印刷装置10の駆動状態が切り替えられる場合について説明する。印刷装置10が「記憶デバイス状態」にて駆動している状態で、ユーザによる操作キー37の操作、または、パソコン20のキーボード23やマウス24などの操作により、印刷装置10の駆動状態の切り替え指示が入力される(71)。すると、パソコン20は、印刷装置10に対して駆動状態を切り替える旨の情報である駆動状態情報を送信する(85)。   Next, a case where the driving state of the printing apparatus 10 is switched will be described. In the state where the printing apparatus 10 is driven in the “storage device state”, an instruction to switch the driving state of the printing apparatus 10 by the operation of the operation key 37 by the user or the operation of the keyboard 23 or the mouse 24 of the personal computer 20 Is input (71). Then, the personal computer 20 transmits drive state information, which is information for switching the drive state, to the printing apparatus 10 (85).

駆動状態情報を受信した印刷装置10は、CPU31が使用するUSBデバイスドライバ57をマスストレージクラスドライバ59からプリンタクラスドライバ58に切り替えて、USBの切断・再接続処理を行う(86)。すなわち、まず一旦パソコン20との接続状態を解除するために、USBケーブル11の信号線のうちD+信号のプルアップ状態をクリアし、ハイインピーダンス状態とする。そして、パソコン20にてD+信号のプルアップ状態のクリアが検出された場合に、パソコン20は印刷装置10との接続状態が解除されたものと判断する。   Upon receiving the driving state information, the printing apparatus 10 switches the USB device driver 57 used by the CPU 31 from the mass storage class driver 59 to the printer class driver 58, and performs USB disconnection / reconnection processing (86). That is, first, in order to cancel the connection state with the personal computer 20, the pull-up state of the D + signal in the signal line of the USB cable 11 is cleared to enter the high impedance state. When the personal computer 20 detects clearing of the pull-up state of the D + signal, the personal computer 20 determines that the connection state with the printing apparatus 10 has been released.

そして、印刷装置10は、USBデバイスドライバ57としてプリンタクラスドライバ58を選択して読み込む。これにより、印刷装置10はパソコン20により印刷デバイスとして認識される状態、すなわち「印刷デバイス状態」となる。そして再度、USBケーブル11の信号線のうちD+信号をプルアップ状態とする。そして、パソコン20にてD+信号のプルアップ状態が検出された場合に、パソコン20は印刷装置10がUSBケーブル11を介して再接続されたと判断する。   Then, the printing apparatus 10 selects and reads the printer class driver 58 as the USB device driver 57. As a result, the printing apparatus 10 enters a state recognized by the personal computer 20 as a printing device, that is, a “printing device state”. Then, the D + signal in the signal line of the USB cable 11 is again pulled up. When the pull-up state of the D + signal is detected by the personal computer 20, the personal computer 20 determines that the printing apparatus 10 has been reconnected via the USB cable 11.

パソコン20にて印刷装置が再接続されたことを検出した場合、次いで、印刷装置10〜パソコン20間でPnP通信が実行される(87)。PnP通信では、電源スイッチON時のPnP通信(82)と同様に、USBホストとして機能するパソコン20が、ターゲットとなるUSBデバイスとして機能する印刷装置10の駆動状態を把握するためのパケット通信が実行される。そして、パソコン20は、駆動状態が「印刷デバイス状態」となっており、印刷データを転送することにより印字テープへの印刷処理が実行可能な状態であることを認識する。   If it is detected by the personal computer 20 that the printing device is reconnected, then PnP communication is executed between the printing device 10 and the personal computer 20 (87). In PnP communication, similar to PnP communication (82) when the power switch is turned on, the personal computer 20 functioning as a USB host executes packet communication for grasping the driving state of the printing apparatus 10 functioning as a target USB device. Is done. Then, the personal computer 20 recognizes that the drive state is “printing device state” and that the print processing to the print tape can be executed by transferring the print data.

PnP通信(87)が終了した後、パソコン20から印刷装置10に対して印刷処理を実行させるために印刷データを送信する度に、印刷データを含むパケットがパソコン20から印刷装置10に対して転送される(88)。   After the PnP communication (87) is completed, every time print data is transmitted from the personal computer 20 to the printing apparatus 10 to execute print processing, a packet including the print data is transferred from the personal computer 20 to the printing apparatus 10. (88).

ここで、印刷装置10が「印刷デバイス状態」となっている場合において、パソコン20により印刷装置10に対して印刷処理を実行させる具体例について、図6を参照しつつ説明する。はじめに、パソコン20にて印刷データの作成処理が実行される。ここでは、ユーザにより、予めパソコン20にインストールされている編集プログラムが操作され、印刷データの作成作業が実行される。   Here, a specific example in which the personal computer 20 causes the printing apparatus 10 to execute print processing when the printing apparatus 10 is in the “printing device state” will be described with reference to FIG. 6. First, print data creation processing is executed by the personal computer 20. Here, an editing program installed in the personal computer 20 in advance is operated by the user, and print data creation work is executed.

ユーザによる印刷データの作成が終了すると、この作成済みの印刷データはパソコン20の記憶領域(図示外)に記憶される。そして、ユーザの操作に応じてパソコン20から印刷装置10に対して印刷データの印刷指示がなされると、この印刷データがパソコン20から印刷装置10に転送される。さらに、印刷装置10に印刷処理を開始させるための印刷開始コマンドデータが、パソコン20から印刷装置10に転送される。印刷装置10では、パソコン20から転送された印刷データに基づき、印刷開始コマンドデータによる指示に従って印刷処理を実行する。   When the creation of the print data by the user is completed, the created print data is stored in a storage area (not shown) of the personal computer 20. When a print instruction for print data is issued from the personal computer 20 to the printing apparatus 10 in response to a user operation, the print data is transferred from the personal computer 20 to the printing apparatus 10. Further, print start command data for causing the printing apparatus 10 to start printing processing is transferred from the personal computer 20 to the printing apparatus 10. In the printing apparatus 10, based on the print data transferred from the personal computer 20, print processing is executed in accordance with an instruction by the print start command data.

次いで、印刷装置10のCPU31が実行する処理について、図7〜図14を参照して説明する。図7は、メイン処理のフローチャートである。図8は、モード切替処理のフローチャートである。図9は、プリンタ処理のフローチャートである。図10は、マスストレージ処理のフローチャートである。図11は、バルク受信処理のフローチャートである。図12は、セクタ情報取得処理のフローチャートである。図13は、コマンド処理のフローチャートである。図14は、印刷動作制御処理のフローチャートである。   Next, processing executed by the CPU 31 of the printing apparatus 10 will be described with reference to FIGS. FIG. 7 is a flowchart of the main process. FIG. 8 is a flowchart of the mode switching process. FIG. 9 is a flowchart of the printer process. FIG. 10 is a flowchart of the mass storage process. FIG. 11 is a flowchart of the bulk reception process. FIG. 12 is a flowchart of the sector information acquisition process. FIG. 13 is a flowchart of command processing. FIG. 14 is a flowchart of the printing operation control process.

はじめに、図7を参照して、印刷装置10のメイン処理について説明する。図7に示すメイン処理は、印刷装置10の電源スイッチがONとされた場合において、CPU31が 先述のメインプログラムを起動して開始する処理である。   First, the main process of the printing apparatus 10 will be described with reference to FIG. The main process shown in FIG. 7 is a process that the CPU 31 activates and starts the main program described above when the power switch of the printing apparatus 10 is turned on.

図7に示すように、印刷装置10のメイン処理では、はじめにCPU31が初期化処理を実行する(S11)。初期化処理では、印刷装置10による印刷処理が実行可能となるように、駆動回路43、駆動回路44およびUSBコントローラ42が初期化される。CPU31は、所定の初期化条件に基づいて、駆動回路43および駆動回路44を初期化(例えば、デバイスリセットや初期化設定など)する。これにより、サーマルヘッド40およびテープ送りローラ41を駆動させ、印字テープに印刷を行うことが可能な状態とする。また、CPU31は、先述のようにファイルシステムの一部をFlashROM34からSRAM33に展開する。   As shown in FIG. 7, in the main process of the printing apparatus 10, first, the CPU 31 executes an initialization process (S11). In the initialization process, the drive circuit 43, the drive circuit 44, and the USB controller 42 are initialized so that the printing process by the printing apparatus 10 can be executed. The CPU 31 initializes the drive circuit 43 and the drive circuit 44 based on a predetermined initialization condition (for example, device reset or initialization setting). As a result, the thermal head 40 and the tape feed roller 41 are driven so that the print tape can be printed. Further, the CPU 31 expands a part of the file system from the flash ROM 34 to the SRAM 33 as described above.

さらに、CPU31は、所定の初期化条件に基づいて、USBコントローラ42を初期化(例えば、デバイスリセットや初期化設定)する。これにより、USBコントローラ42が使用可能な状態となる。なお、この状態では、CPU31によるUSBデバイスドライバ57の選択および読み出しの処理はなされていない。   Further, the CPU 31 initializes the USB controller 42 (for example, device reset or initialization setting) based on a predetermined initialization condition. As a result, the USB controller 42 can be used. In this state, the CPU 31 does not select and read the USB device driver 57.

次いで、CPU31は、モード切替処理を実行する(S13)。モード切替処理では、操作キー37の操作により実行された駆動状態の設定操作の内容に基づいて、パソコン20との再接続処理を実行する。印刷装置10は、操作キー37におけるユーザ操作により、駆動状態(記憶デバイス状態または印刷デバイス状態)を任意に設定可能である。CPU31は、ユーザによって設定された駆動状態を判断し、この設定された駆動状態にて駆動するために必要な処理を実行する。なお、印刷装置10に対する駆動状態の設定方法は、上述のような操作キー37からの入力操作に限定されるものではなく、他の方法で駆動状態が設定されても構わない(例えば、パソコン20から駆動状態を設定するなど)。   Next, the CPU 31 executes a mode switching process (S13). In the mode switching process, the reconnection process with the personal computer 20 is executed based on the content of the drive state setting operation executed by operating the operation key 37. The printing apparatus 10 can arbitrarily set a driving state (storage device state or printing device state) by a user operation on the operation key 37. The CPU 31 determines the driving state set by the user and executes processing necessary for driving in the set driving state. The drive state setting method for the printing apparatus 10 is not limited to the input operation from the operation key 37 as described above, and the drive state may be set by another method (for example, the personal computer 20). To set the driving state from).

図8を参照して、モード切替処理(S13)の詳細について説明する。図8に示すように、モード切替処理では、はじめにCPU31が操作キー37を介してユーザにより設定された駆動状態を検出する(S33)。そして、ユーザにより設定された駆動状態が、「記憶デバイス状態」および「印刷デバイス状態」のいずれであるかを判断する。また、CPU31は、現在の駆動状態を判断する(S33)。現在の駆動状態の情報は、SRAM33のフラグ領域109に記憶されている駆動状態フラグに設定されている。CPU31は、この駆動状態フラグを読み出して現在の駆動状態を判断する。   Details of the mode switching process (S13) will be described with reference to FIG. As shown in FIG. 8, in the mode switching process, first, the CPU 31 detects the driving state set by the user via the operation key 37 (S33). Then, it is determined whether the drive state set by the user is “storage device state” or “printing device state”. Further, the CPU 31 determines the current driving state (S33). Information on the current driving state is set in a driving state flag stored in the flag area 109 of the SRAM 33. The CPU 31 reads this driving state flag and determines the current driving state.

そして、CPU31は、現在の駆動状態と、ユーザにより設定された駆動状態とを比較する(S35)。なお、電源スイッチON直後においては、駆動状態フラグは「設定なし」の状態となっているので、本判定ではユーザにより異なる駆動状態が設定されたものと必ず判断する。   Then, the CPU 31 compares the current driving state with the driving state set by the user (S35). Immediately after the power switch is turned on, the drive state flag is in a “no setting” state, and therefore, in this determination, it is always determined that a different drive state is set by the user.

現在の駆動状態と、ユーザにより設定された駆動状態とが同一である場合は(S35:NO)、印刷装置10は既にユーザにより設定された駆動状態にて駆動しており、USBデバイスドライバ57を新たに読み出して変更する必要はない。従って、特段の処理を行うことなく、モード切替処理を終了してメイン処理(図7参照)に戻る。   If the current driving state and the driving state set by the user are the same (S35: NO), the printing apparatus 10 is already driven in the driving state set by the user, and the USB device driver 57 is There is no need to read and change a new one. Therefore, the mode switching process is terminated without performing any special process, and the process returns to the main process (see FIG. 7).

一方、現在の駆動状態と、ユーザにより設定された駆動状態とが異なる場合には(S35:YES)、CPU31が使用するUSBデバイスドライバ57を変更して駆動状態を変更する必要がある。そこで、CPU31は、SRAM33のフラグ領域109の駆動状態フラグに駆動状態の情報を記憶した後、先述したUSBの切断・再接続処理として、まずD+信号のプルアップ設定を解除し、その後に新たなUSBデバイスドライバ57を稼動した状態でD+信号のプルアップ設定を有効とする。   On the other hand, when the current driving state is different from the driving state set by the user (S35: YES), it is necessary to change the driving state by changing the USB device driver 57 used by the CPU 31. Therefore, after storing the driving state information in the driving state flag of the flag area 109 of the SRAM 33, the CPU 31 first cancels the pull-up setting of the D + signal as the USB disconnection / reconnection process described above, and then starts a new one. The pull-up setting of the D + signal is made valid while the USB device driver 57 is in operation.

以上説明した処理を実行することにより、USBの切断・再接続処理が実行される(S37)。これにより、パソコン20は印刷装置10とUSBケーブル11を介して再接続した状態であると認識するので、次いで、印刷装置10の駆動状態を認識して通信を実行可能とするための通信(PnP通信)が実行される。   By executing the processing described above, USB disconnection / reconnection processing is executed (S37). As a result, the personal computer 20 recognizes that it is in a state of being reconnected to the printing apparatus 10 via the USB cable 11. Next, communication (PnP) for recognizing the driving state of the printing apparatus 10 and enabling communication. Communication) is executed.

すなわち、CPU31は、印刷装置10の駆動状態が「印刷デバイス状態」であれば(S41:YES)、USBデバイスドライバ57としてプリンタクラスドライバ58を稼動してPnP通信を実行する(S43)。これにより、USBホストとして機能するパソコン20は、ターゲットである印刷装置10をUSB印刷デバイスとして認識するとともに、印刷装置10〜パソコン20間でプリンタクラスに準拠した通信規約での通信が実行される。   That is, if the driving state of the printing apparatus 10 is “printing device state” (S41: YES), the CPU 31 operates the printer class driver 58 as the USB device driver 57 and executes PnP communication (S43). As a result, the personal computer 20 functioning as a USB host recognizes the target printing apparatus 10 as a USB printing device, and communication between the printing apparatus 10 and the personal computer 20 is performed in accordance with a communication protocol conforming to the printer class.

一方、CPU31は、印刷装置10の駆動状態が「記憶デバイス状態」であれば(S41:NO)、USBデバイスドライバ57としてマスストレージクラスドライバ59を稼動してPnP通信を実行する(S45)。これにより、USBホストとして機能するパソコン20は、ターゲットである印刷装置10をUSB記憶デバイスとして認識するとともに、印刷装置10〜パソコン20間でマスストレージクラスに準拠した通信規約での通信が実行される。   On the other hand, if the drive state of the printing apparatus 10 is “storage device state” (S41: NO), the CPU 31 operates the mass storage class driver 59 as the USB device driver 57 and executes PnP communication (S45). As a result, the personal computer 20 functioning as a USB host recognizes the target printing apparatus 10 as a USB storage device, and communication is performed between the printing apparatus 10 and the personal computer 20 according to a communication protocol conforming to the mass storage class. .

図7のメイン処理に戻り、S13のモード切替処理(図8参照)で印刷装置10の駆動状態が確定されると、CPU31は、電源スイッチの状態を監視する(S15)。ユーザにより電源スイッチがOFF状態に操作されたことを検出した場合には(S15:YES)、OFF処理(S17)にて後処理等を行った後、メイン処理を終了する。   Returning to the main process of FIG. 7, when the driving state of the printing apparatus 10 is determined in the mode switching process of S13 (see FIG. 8), the CPU 31 monitors the state of the power switch (S15). If it is detected that the user has operated the power switch to the OFF state (S15: YES), post-processing is performed in the OFF processing (S17), and then the main processing is terminated.

ユーザにより電源スイッチがOFF状態に操作されなかった場合(S15:NO)、CPU31は、SRAM33の駆動状態フラグを参照して既存の駆動状態を判断する(S19)。そして、S19で判断された駆動状態が「印刷デバイス状態」である場合には(S19:YES)、CPU31は「印刷デバイス状態」でのパソコン20との通信処理であるプリンタ処理(S21)を実行する。他方、S19で判断された駆動状態が「記憶デバイス状態」である場合には(S19:NO)、CPU31は「記憶デバイス状態」でのパソコン20との通信処理であるマスストレージ処理(S23)を実行する。   If the user has not operated the power switch to the OFF state (S15: NO), the CPU 31 refers to the driving state flag of the SRAM 33 to determine the existing driving state (S19). If the drive state determined in S19 is “printing device state” (S19: YES), the CPU 31 executes printer processing (S21) which is communication processing with the personal computer 20 in “printing device state”. To do. On the other hand, when the drive state determined in S19 is “storage device state” (S19: NO), the CPU 31 performs mass storage processing (S23) which is communication processing with the personal computer 20 in “storage device state”. Execute.

ここで、図9を参照して、プリンタ処理(S21)の詳細について説明する。図9に示すように、プリンタ処理では、はじめにCPU31がUSBコントローラ42からのバルクOUT転送要求線63の状態を監視し、バルクOUT転送要求があったかどうかを判断する(S51)。バルクOUT転送要求線63における電位の変位を検出した場合(S51:YES)、CPU31はUSBコントローラ42がパソコン20からパケットを受信したと判断し、受信用EPに格納されたパケットのデータを読み出す。そして、SRAM33のリングバッファ領域110にパケットから読み出した受信データを記憶するリングバッファ処理を行う(S57)。その後、プリンタ処理を終了してメイン処理(図7参照)に戻る。   Here, the details of the printer process (S21) will be described with reference to FIG. As shown in FIG. 9, in the printer process, first, the CPU 31 monitors the state of the bulk OUT transfer request line 63 from the USB controller 42 to determine whether or not there is a bulk OUT transfer request (S51). When the displacement of the potential in the bulk OUT transfer request line 63 is detected (S51: YES), the CPU 31 determines that the USB controller 42 has received a packet from the personal computer 20, and reads the packet data stored in the reception EP. Then, ring buffer processing for storing the received data read from the packet in the ring buffer area 110 of the SRAM 33 is performed (S57). Thereafter, the printer process is terminated and the process returns to the main process (see FIG. 7).

一方、バルクOUT転送要求線63の電位が変位しない場合には(S51:NO)、CPU31はUSBコントローラ42がパケットを受信していないと判断する。次いで、CPU31は、USBコントローラ42からのバルクIN転送要求線62の状態を監視し、バルクIN転送要求があったかどうかを判断する(S53)。バルクIN転送要求線62における電位の変位を検出した場合(S53:YES)、CPU31は印刷時のエラー情報などを含むステータスデータをパソコン20に送信するためのステータスバッファ処理を行う(S55)。   On the other hand, when the potential of the bulk OUT transfer request line 63 is not displaced (S51: NO), the CPU 31 determines that the USB controller 42 has not received a packet. Next, the CPU 31 monitors the state of the bulk IN transfer request line 62 from the USB controller 42, and determines whether there is a bulk IN transfer request (S53). When the displacement of the potential in the bulk IN transfer request line 62 is detected (S53: YES), the CPU 31 performs a status buffer process for transmitting status data including error information during printing to the personal computer 20 (S55).

S55のステータスバッファ処理では、CPU31がSRAM33に設けられたステータスバッファ(図示外)からステータスデータを取り出してUSBコントローラ42の送信用EPに格納する。そして、USBコントローラ42を制御して、送信用EPに格納されているステータスデータをパケット化させてパソコン20に送信させる。その後、プリンタ処理を終了してメイン処理(図7参照)に戻る。なお、バルクIN転送要求を検出しなかった場合も(S53:NO)、メイン処理(図7参照)に戻る。   In the status buffer process of S55, the CPU 31 extracts the status data from the status buffer (not shown) provided in the SRAM 33 and stores it in the transmission EP of the USB controller. Then, the USB controller 42 is controlled so that the status data stored in the transmission EP is packetized and transmitted to the personal computer 20. Thereafter, the printer process is terminated and the process returns to the main process (see FIG. 7). If no bulk IN transfer request is detected (S53: NO), the process returns to the main process (see FIG. 7).

次に、図10を参照して、マスストレージ処理(S23)の詳細について説明する。図10に示すように、マスストレージ処理では、はじめにCPU31が先述のS51と同様に、バルクOUT転送要求があったかどうかを判断する(S61)。バルクOUT転送要求があったと判断される場合(S61:YES)、CPU31はUSBコントローラ42がパソコン20からパケットを受信したと判断して、受信用EPに格納されたパケットのデータをSRAM33の受信バッファ領域111に読み出してバルク受信処理を行う(S63)。バルク受信処理は、USBホスト(ここでは、パソコン20)が送り出したデータを受信する処理であって、各種コマンドを受信するコマンドトランスポート処理、および、ファイルの実データを受信するデータトランスポート処理を含む。   Next, the details of the mass storage process (S23) will be described with reference to FIG. As shown in FIG. 10, in the mass storage process, first, the CPU 31 determines whether or not a bulk OUT transfer request has been made in the same manner as S51 described above (S61). When it is determined that there is a bulk OUT transfer request (S61: YES), the CPU 31 determines that the USB controller 42 has received a packet from the personal computer 20, and the packet data stored in the reception EP is received by the reception buffer of the SRAM 33. Data is read into the area 111 and bulk reception processing is performed (S63). The bulk reception process is a process for receiving data sent out by the USB host (here, the personal computer 20), and includes a command transport process for receiving various commands and a data transport process for receiving actual data of a file. Including.

ここで、図11を参照して、バルク受信処理(S63)の詳細について説明する。図11に示すように、バルク受信処理では、はじめにCPU31が受信バッファ領域111に記憶された受信データを解析して、パソコン20から印刷装置10に対する印刷ファイルの書き込み要求コマンド(Writeコマンド)を受信したか否かを判断する(S81)。Writeコマンドを受信したと判断した場合(S81:YES)、SRAM33の所定ファイル領域が書き換えられたか否かが判断される(S83)。なお、「所定ファイル領域」は、SRAM33の印刷ファイル領域106(より詳細には、印刷ファイル領域106の先頭セクタ)である。   Here, the details of the bulk reception process (S63) will be described with reference to FIG. As shown in FIG. 11, in the bulk reception process, first, the CPU 31 analyzes the received data stored in the reception buffer area 111 and receives a print file write request command (Write command) from the personal computer 20 to the printing apparatus 10. Whether or not (S81). If it is determined that the Write command has been received (S81: YES), it is determined whether or not the predetermined file area of the SRAM 33 has been rewritten (S83). The “predetermined file area” is the print file area 106 of the SRAM 33 (more specifically, the first sector of the print file area 106).

所定ファイル領域が書き換えられたと判断した場合(S83:YES)、CPU31はSRAM33のフラグ領域109に記憶されているライトトリガーフラグをONに設定する(S85)。そして、CPU31は、さらに受信用EPに格納されたパケットのデータをSRAM33の受信バッファ領域111に読み出して、印刷ファイル領域106の各セクタに書き込むべきWriteコマンドの実データ(セクタデータ)を受信するセクタデータ受信処理を行う(S87)。なお、CPU31は、受信バッファ領域111に格納されている各セクタデータを、印刷ファイルとして印刷ファイル領域106の各セクタに順次書き込む。所定ファイル領域が書き換えられていない場合も(S83:NO)、S87にてセクタデータ受信処理を行う。   If it is determined that the predetermined file area has been rewritten (S83: YES), the CPU 31 sets the write trigger flag stored in the flag area 109 of the SRAM 33 to ON (S85). The CPU 31 further reads out the packet data stored in the reception EP into the reception buffer area 111 of the SRAM 33 and receives the actual data (sector data) of the Write command to be written in each sector of the print file area 106. Data reception processing is performed (S87). The CPU 31 sequentially writes each sector data stored in the reception buffer area 111 to each sector in the print file area 106 as a print file. Even when the predetermined file area has not been rewritten (S83: NO), the sector data receiving process is performed in S87.

S87のセクタデータ受信処理にてWriteコマンドに含まれる全てのセクタデータを受信すると、CPU31は、USBコントローラ42の送信用EPに応答信号としてCSW(Command Status Wrapper)を格納する(S89)。これにより、印刷装置10からパソコン20にCSWが送信されて、パソコン20ではCSWに基づいてセクタデータの受信完了を判断することができる。   When all the sector data included in the Write command is received in the sector data reception process of S87, the CPU 31 stores a CSW (Command Status Wrapper) as a response signal in the transmission EP of the USB controller 42 (S89). As a result, the CSW is transmitted from the printing apparatus 10 to the personal computer 20, and the personal computer 20 can determine the completion of sector data reception based on the CSW.

次いで、CPU31は、SRAM33のフラグ領域109を参照して、ライトトリガーフラグがONであるか否かを判断する(S91)。ライトトリガーフラグがONであると判断した場合(S91:YES)、CPU31は、フラグ領域109に記憶されているライトトリガーフラグをOFFに設定する(S93)。そして、CPU31は、SRAM33の所定記憶領域にてWriteコマンドの完了設定を行うとともに、内部タイマ(図示外)から現在時刻を取得して記録する(S95)。なお、Writeコマンドの完了設定がなされた時点(つまり、S95で取得された現在時刻)から、内部タイマ(図示外)によって経過時間がカウントされる。その後、バルク受信処理を終了してマスストレージ処理(図10参照)に戻る。また、CSW送信後にライトトリガーフラグがONでないと判断した場合も(S93:NO)、マスストレージ処理(図10参照)に戻る。   Next, the CPU 31 refers to the flag area 109 of the SRAM 33 and determines whether or not the write trigger flag is ON (S91). When determining that the light trigger flag is ON (S91: YES), the CPU 31 sets the light trigger flag stored in the flag area 109 to OFF (S93). Then, the CPU 31 performs a write command completion setting in a predetermined storage area of the SRAM 33, and acquires and records the current time from an internal timer (not shown) (S95). Note that the elapsed time is counted by an internal timer (not shown) from the time when the completion of the Write command is set (that is, the current time acquired in S95). Thereafter, the bulk reception process is terminated and the process returns to the mass storage process (see FIG. 10). If it is determined that the write trigger flag is not ON after CSW transmission (S93: NO), the process returns to the mass storage process (see FIG. 10).

ところで、上記のS81〜S95は、印刷ファイルの各セクタデータを受信するだけでなく、印刷装置10側で印刷ファイルの書き込み完了を認識するための判断基準を提供する。先述のようにファイルシステムの管理主体はパソコン20にあるため、印刷装置10側では主体的に各メモリ(SRAM33およびFlashROM34)へのファイル書き込みが完了したか否かを判断することはできない。そこで、上記のS81〜S95では、所定ファイル領域が書き換えられると、パソコン20から印刷装置10への印刷ファイルのデータ転送が開始されたものとみなして、ライトトリガーフラグをONにする(S85)。また、印刷装置10からパソコン20にCSWが送信されると、パソコン20から印刷装置10への印刷ファイルを構成する全セクタデータの転送が完了した可能性があるとみなして、ライトトリガーフラグをOFFにしてWriteコマンドの完了設定と現在時刻取得を行う(S93、S95)。これにより、Writeコマンドの完了設定時(つまり、セクタデータの転送完了時)からの経過時間がカウントされ、一定時間が経過すると印刷ファイルの書き込みが完了したと判断されるが、詳細は後述する。 By the way, the above S81 to S95 not only receive each sector data of the print file, but also provide a criterion for recognizing the completion of writing of the print file on the printing apparatus 10 side. As described above, since the file system management entity is in the personal computer 20, the printing apparatus 10 cannot determine whether or not the file writing to each memory (SRAM 33 and Flash ROM 34) has been completed. In S81 to S95, when the predetermined file area is rewritten, it is considered that the data transfer of the print file from the personal computer 20 to the printing apparatus 10 has started, and the write trigger flag is turned ON (S85). Further, when the CSW is transmitted from the printing apparatus 10 to the personal computer 20, it is considered that the transfer of all the sector data constituting the print file from the personal computer 20 to the printing apparatus 10 may be completed, and the write trigger flag is turned off. Then, the write command completion setting and the current time acquisition are performed (S93, S95). As a result, the elapsed time from the completion setting of the Write command (that is, when the sector data transfer is completed) is counted, and it is determined that the writing of the print file is completed when a certain time elapses. Details will be described later.

なお、印刷装置10における1ファイルの書き込みに対して、パソコン20からのWriteコマンドが1回であるとは限らず、1ファイルの書き込みについて複数回のWriteコマンドを受信することがある。例えば、Writeコマンドの受信(S81:YES)を契機として上記S85〜S95を経て経過時間のカウントが開始されたのちに、一定時間が経過する前に新たなWriteコマンドの受信(S81:YES)があったとする。この場合、新たなWriteコマンドの受信(S81:YES)を契機として再び上記S85〜S95を経て新たな現在時刻が取得されて、この新たな現在時刻を基準として経過時間のカウントが開始される(つまり、Writeコマンドの完了設定時を基準とした経過時間のカウントがリセットされる)。   Note that the write command from the personal computer 20 is not limited to one time for writing one file in the printing apparatus 10, and a plurality of write commands may be received for writing one file. For example, the reception of a new Write command (S81: YES) is started after a certain period of time has elapsed after the count of elapsed time is started through S85 to S95, triggered by the reception of the Write command (S81: YES). Suppose there was. In this case, when a new Write command is received (S81: YES), a new current time is acquired again through S85 to S95, and counting of elapsed time is started based on the new current time ( In other words, the elapsed time count based on the completion setting of the Write command is reset).

一方、Writeコマンドを受信していない場合(S81:YES)、CPU31はパソコン20から印刷装置10に対するその他のコマンドを受信したか否かを判断する(S97)。その他のコマンドを受信したと判断した場合(S97:NO)、CPU31はその受信したコマンドに応じた処理を実行する(S99)。その後、バルク受信処理を終了してマスストレージ処理(図10参照)に戻る。また、その他のコマンドを受信していない場合も(S97:NO)、マスストレージ処理(図10参照)に戻る。   On the other hand, if the Write command has not been received (S81: YES), the CPU 31 determines whether another command for the printing apparatus 10 has been received from the personal computer 20 (S97). If it is determined that another command has been received (S97: NO), the CPU 31 executes processing according to the received command (S99). Thereafter, the bulk reception process is terminated and the process returns to the mass storage process (see FIG. 10). If no other command is received (S97: NO), the process returns to the mass storage process (see FIG. 10).

図10のマスストレージ処理に戻り、バルクOUT転送要求がないと判断される場合(S61:NO)、CPU31はUSBコントローラ42がパケットを受信していないと判断する。次いで、CPU31は先述のS53と同様に、バルクIN転送要求があったかどうかを判断する(S65)。バルクIN転送要求があったと判断される場合(S65:YES)、CPU31は、USBコントローラ42を制御して、送信用EPに格納されているデータをパケット化させてパソコン20に送信させるバルク送信処理を行う(S67)。バルク送信処理は、USBホスト(ここでは、パソコン20)にデータを送信する処理であって、SRAM33のステータスファイル領域105に記憶されているステータスファイルを送信するステータストランスポート処理、および、ファイルの実データを送信するデータトランスポート処理を含む。   Returning to the mass storage process of FIG. 10, when it is determined that there is no bulk OUT transfer request (S61: NO), the CPU 31 determines that the USB controller 42 has not received a packet. Next, the CPU 31 determines whether or not there is a bulk IN transfer request as in the above-described S53 (S65). If it is determined that there is a bulk IN transfer request (S65: YES), the CPU 31 controls the USB controller 42 to packetize the data stored in the transmission EP and send it to the personal computer 20 for bulk transmission processing. (S67). The bulk transmission process is a process of transmitting data to a USB host (in this case, the personal computer 20), and is a status transport process for transmitting a status file stored in the status file area 105 of the SRAM 33, and a file actual process. Includes data transport processing to send data.

一方、バルクIN転送要求がないと判断される場合(S65:NO)、CPU31はSRAM33の所定記憶領域を参照して、Writeコマンドの完了設定がなされているか否かを判断する(S69)。そして、Writeコマンドの完了設定がなされていると判断した場合(S69:YES)、CPU31はパソコン20から印刷装置10への印刷ファイルを構成する全セクタデータの転送が完了した可能性があると判断して、SRAM33からディスク領域90の各セクタに関する情報を取得するセクタ情報取得処理を実行する(S71)。 On the other hand, when it is determined that there is no bulk IN transfer request (S65: NO), the CPU 31 refers to a predetermined storage area of the SRAM 33 and determines whether or not the write command has been completed (S69). If it is determined that the write command completion setting has been made (S69: YES), the CPU 31 determines that the transfer of all the sector data constituting the print file from the personal computer 20 to the printing apparatus 10 may have been completed. Then, a sector information acquisition process for acquiring information on each sector of the disk area 90 from the SRAM 33 is executed (S71).

ここで、図12を参照して、セクタ情報取得処理(S71)の詳細について説明する。図12に示すように、セクタ情報取得処理では、はじめにCPU31が、SRAM33の所定記憶領域に記憶された現在時刻および内部タイマ(図示外)を参照して、Writeコマンドの完了設定がなされた時点(つまり、印刷ファイル領域106への最終書き込みが完了した時点)からの経過時間が、予め定められた一定時間を経過したか否かを判断する(S101)。本実施形態では、Writeコマンドの完了設定時から100ms以上(好適には、200ms程度)を経過した場合には、「一定時間」を経過したと判断される。なお、S101の判断基準となる「一定時間」は、あらかじめEEPROM35に設定された基準時間値でおり、この基準時間値を更新することで「一定時間」を任意に可変とすることができる。   Here, the details of the sector information acquisition process (S71) will be described with reference to FIG. As shown in FIG. 12, in the sector information acquisition process, first, the CPU 31 refers to the current time stored in a predetermined storage area of the SRAM 33 and an internal timer (not shown), and when the write command completion setting is made ( That is, it is determined whether or not the elapsed time from when the last writing to the print file area 106 is completed has passed a predetermined time (S101). In the present embodiment, when 100 ms or more (preferably about 200 ms) has elapsed since the completion of setting of the Write command, it is determined that the “certain time” has elapsed. Note that the “certain time” serving as the determination criterion in S101 is a reference time value preset in the EEPROM 35, and the “certain time” can be arbitrarily changed by updating the reference time value.

先述したように、印刷装置10における1のファイル書き込みに対して、パソコン20から複数回のWriteコマンドが転送される場合がある。そのため、S101では、S95で取得された現在時刻(つまり、複数回のWriteコマンドがあった場合には、最新のWriteコマンドで取得された現在時刻)からカウントした経過時間が、一定時間を経過したか否かを判断する。そして、Writeコマンドの完了設定時(セクタデータの受信完了時)から一定時間を経過したと判断した場合は(S101:YES)、印刷ファイル領域106に記憶されている印刷ファイルのアクセスについて更なるWriteコマンドを受信することはないとみなす。言い換えると、CPU13は、Writeコマンドの完了設定時から一定時間内に他のWriteコマンドを受信しなかった場合は、SRAM33の印刷ファイル領域106に対する印刷ファイルの書き込みが完了したとみなす。 As described above, a plurality of write commands may be transferred from the personal computer 20 for writing one file in the printing apparatus 10. Therefore, in S101, the elapsed time counted from the current time acquired in S95 (that is, the current time acquired by the latest Write command when there are multiple Write commands) has passed a certain time. Determine whether or not. If it is determined that a certain time has elapsed since the write command completion setting ( sector data reception completion) (S101: YES), a further write is performed for access to the print file stored in the print file area 106. It is assumed that no command is received. In other words, if the CPU 13 does not receive another Write command within a predetermined time from the completion setting of the Write command, the CPU 13 considers that the writing of the print file to the print file area 106 of the SRAM 33 is completed.

このように、印刷ファイル領域106への最終書き込みから一定時間が経過したと判断した場合(S101:YES)、CPU31は印刷ファイルの書き込みが完了したとみなす。しかしながら、印刷ファイル領域106へのファイル書き込みと同じタイミングで、パソコン20から他のファイル操作やコマンド指示を受信していた場合は、印刷装置10での各種処理が重複してしまうことがある。この場合、印刷装置10でのデータ処理が遅延して、上記の一定時間が経過しても印刷ファイルの書き込みが完了していない場合がある。また、印刷ファイルの書き込み処理において不具合が発生した場合には、印刷ファイル領域106に適正な印刷ファイルが記憶されないことがある。そこで、CPU31は、次の処理を行うことで、印刷ファイル領域106に適正な印刷ファイルが存在しているか否かを判断する。   As described above, when it is determined that a certain time has elapsed since the last writing to the print file area 106 (S101: YES), the CPU 31 regards that the printing of the print file is completed. However, if another file operation or command instruction is received from the personal computer 20 at the same timing as the file writing to the print file area 106, various processes in the printing apparatus 10 may be duplicated. In this case, the data processing in the printing apparatus 10 may be delayed, and the writing of the print file may not be completed even after the predetermined time has elapsed. In addition, when a problem occurs in the print file writing process, an appropriate print file may not be stored in the print file area 106. Therefore, the CPU 31 determines whether or not an appropriate print file exists in the print file area 106 by performing the following processing.

まず、CPU31は、SRAM33のRDE領域103を参照して、印刷ファイルのファイル名(本実施形態ではPTLITE.PRN)を発見したか否かを判断する(S103)。RDE領域103に印刷ファイルのファイル名がない場合は、印刷ファイル領域106へファイル書き込みが完了していないためである。ここで、RDE領域103では、印刷ファイルに関するファイル情報データの記憶位置があらかじめ規定されているため、CPU31は所定の記憶位置を読み出せばファイル名やファイルサイズなどを参照できる。   First, the CPU 31 refers to the RDE area 103 of the SRAM 33 and determines whether or not the file name of the print file (PTLITE.PRN in this embodiment) has been found (S103). This is because when the file name of the print file does not exist in the RDE area 103, the file writing to the print file area 106 is not completed. Here, in the RDE area 103, since the storage location of the file information data related to the print file is defined in advance, the CPU 31 can refer to the file name, file size, etc. by reading the predetermined storage location.

印刷ファイルのファイル名を発見したと判断した場合(S103:YES)、さらにCPU31はSRAM33のRDE領域103を参照して、印刷ファイルのファイルサイズが指定のサイズ(本実施形態では32キロバイト)であるか否かを判断する(S105)。RDE領域103にて印刷ファイルのファイルサイズが指定サイズとは異なる場合は、印刷ファイル領域106に書き込まれた印刷ファイルにデータの破損や欠落などが発生しているためである。   When it is determined that the file name of the print file has been found (S103: YES), the CPU 31 refers to the RDE area 103 of the SRAM 33 and the file size of the print file is the specified size (32 kilobytes in this embodiment). It is determined whether or not (S105). If the file size of the print file in the RDE area 103 is different from the specified size, the print file written in the print file area 106 is damaged or missing.

印刷ファイルが指定のサイズであると判断した場合(S105:YES)、CPU31は、印刷ファイル領域106に記憶されている印刷ファイルが適正であると判断して、SRAM33のリングバッファ領域110に記憶するリングバッファ処理を行う(S57)。なお、S57のリングバッファ処理が行われると、CPU31は、SRAM33の所定記憶領域にてWriteコマンドの完了設定をクリアするとともに、内部タイマ(図示外)によるカウントを終了する。   If it is determined that the print file has the specified size (S105: YES), the CPU 31 determines that the print file stored in the print file area 106 is appropriate and stores it in the ring buffer area 110 of the SRAM 33. Ring buffer processing is performed (S57). When the ring buffer process of S57 is performed, the CPU 31 clears the write command completion setting in the predetermined storage area of the SRAM 33 and ends the count by the internal timer (not shown).

その後、CPU31は、セクタ情報取得処理を終了してマスストレージ処理(図10参照)に戻る。同様に、最終書き込みから一定時間が経過していない判断した場合(S101:NO)、印刷ファイルのファイル名が発見されないと判断した場合(S103:NO)、および、印刷ファイルのファイルサイズが指定のサイズでないと判断した場合(S105:YES)、マスストレージ処理(図10参照)に戻る。   Thereafter, the CPU 31 ends the sector information acquisition process and returns to the mass storage process (see FIG. 10). Similarly, when it is determined that a certain time has not elapsed since the last writing (S101: NO), when it is determined that the file name of the print file is not found (S103: NO), and when the file size of the print file is designated. If it is determined that the size is not satisfied (S105: YES), the process returns to the mass storage process (see FIG. 10).

図10のマスストレージ処理に戻り、バルク受信処理(S63)、バルク送信処理(S67)およびセクタ情報送信処理(S69)のいずれかがなされたのちは、マスストレージ処理を終了してメイン処理(図7参照)に戻る。同様に、Writeコマンドの完了設定がなされていないと判断した場合も(S69:NO)メイン処理(図7参照)に戻る。   Returning to the mass storage process of FIG. 10, after any of the bulk reception process (S63), the bulk transmission process (S67), and the sector information transmission process (S69), the mass storage process ends and the main process (FIG. Return to 7). Similarly, when it is determined that the completion setting of the Write command has not been made (S69: NO), the process returns to the main process (see FIG. 7).

図7のメイン処理に戻り、S21のプリンタ処理(図9参照)またはS23のマスストレージ処理(図10参照)が終了したのちは、これらのプリンタ処理またはマスストレージ処理においてパソコン20からデータを受信しているか否かが判断される。   Returning to the main process in FIG. 7, after the printer process in S21 (see FIG. 9) or the mass storage process in S23 (see FIG. 10) is completed, data is received from the personal computer 20 in these printer processes or mass storage processes. It is determined whether or not.

すなわち、「印刷デバイス状態」にてパソコン20から受信するデータは、印刷データまたは印刷開始コマンドデータであり、これらのデータを受信した場合、CPU31は印刷処理を実行する必要がある。S21のプリンタ処理で受信したデータは、S57においてSRAM33のリングバッファ領域110に記憶されるので(図9参照)、CPU31はリングバッファ領域110に記憶されているデータを参照する(S25)。そして、リングバッファ領域110にデータが記憶されていると判断した場合には(S25:YES)、CPU31は、リングバッファ領域110に記憶されているデータに基づいて後述のコマンド処理を実行する(S27)。   In other words, the data received from the personal computer 20 in the “printing device state” is print data or print start command data. When these data are received, the CPU 31 needs to execute print processing. Since the data received in the printer process of S21 is stored in the ring buffer area 110 of the SRAM 33 in S57 (see FIG. 9), the CPU 31 refers to the data stored in the ring buffer area 110 (S25). If it is determined that data is stored in the ring buffer area 110 (S25: YES), the CPU 31 executes a command process described later based on the data stored in the ring buffer area 110 (S27). ).

また、「記憶デバイス状態」にてパソコン20から印刷ファイルを受信した場合も、CPU31は印刷処理を実行する必要がある。S23のマスストレージ処理で受信した印刷ファイルを構成する各セクタデータ(印刷データおよび印刷開始コマンドデータ)は、S107においてSRAM33のリングバッファ領域110に記憶される(図12参照)。そこで、CPU31は、リングバッファ領域110を参照してデータが記憶されている場合には、上記と同様に後述のコマンド処理を実行する(S25、S27)。なお、リングバッファ領域110にデータが記憶されていないと判断した場合には(S25:NO)、S13の処理に戻る。   In addition, even when a print file is received from the personal computer 20 in the “storage device state”, the CPU 31 needs to execute print processing. Each sector data (print data and print start command data) constituting the print file received in the mass storage process of S23 is stored in the ring buffer area 110 of the SRAM 33 in S107 (see FIG. 12). Therefore, when data is stored with reference to the ring buffer area 110, the CPU 31 executes command processing described later (S25, S27) as described above. When it is determined that no data is stored in the ring buffer area 110 (S25: NO), the process returns to S13.

次に、図13を参照して、コマンド処理(S27)の詳細について説明する。図13に示すように、コマンド処理では、はじめにCPU31が、SRAM33のリングバッファ領域110に印刷データが記憶されているか(言い換えると、パソコン20から印刷データを受信したかどうか)を判断する(S111)。印刷データを受信していると判断した場合(S111:YES)、CPU31は、パソコン20から受信した印刷データに基づいて印刷処理を実行可能とするために、印刷バッファ領域108に印刷データの一部を記憶する印刷イメージ処理を実行する(S113)。   Next, the details of the command processing (S27) will be described with reference to FIG. As shown in FIG. 13, in the command processing, first, the CPU 31 determines whether print data is stored in the ring buffer area 110 of the SRAM 33 (in other words, whether print data has been received from the personal computer 20) (S111). . When it is determined that the print data is received (S111: YES), the CPU 31 stores a part of the print data in the print buffer area 108 so that the print process can be executed based on the print data received from the personal computer 20. Is executed (S113).

なお、S113の印刷イメージ処理では、印刷データがラスタ形式である場合、1回の走査により印刷可能な印刷データを抽出して印刷バッファに記憶する。また、印刷データがESC/P形式である場合、キャラクタコードの文字データを文字発生し、印刷バッファ領域内の所定位置に記憶する。これにより、続いてパソコン20から印刷開始コマンドデータを受信した場合に、印刷バッファ領域に記憶した印刷データに基づいて印刷することが可能な状態となる。そして、コマンド処理を終了して、メイン処理(図7参照)に戻る。   In the print image processing in S113, when the print data is in the raster format, print data that can be printed by one scan is extracted and stored in the print buffer. If the print data is in ESC / P format, the character code character data is generated and stored in a predetermined position in the print buffer area. As a result, when print start command data is subsequently received from the personal computer 20, it becomes possible to print based on the print data stored in the print buffer area. Then, the command processing is ended and the processing returns to the main processing (see FIG. 7).

一方、リングバッファ領域110に記憶されているデータが印刷データではないと判断した場合(S111:NO)、CPU31はリングバッファ領域110に記憶されているデータが印刷開始コマンドデータであるか否かを判断する(S115)。そして、印刷開始コマンドデータであると判断した場合には(S115:YES)、CPU31は、S113にて印刷バッファ領域108に記憶された印刷データに基づいて印刷処理を行う印刷動作制御処理を実行する(S117)。   On the other hand, when determining that the data stored in the ring buffer area 110 is not print data (S111: NO), the CPU 31 determines whether the data stored in the ring buffer area 110 is print start command data. Judgment is made (S115). When it is determined that the print start command data is determined (S115: YES), the CPU 31 executes a print operation control process for performing a print process based on the print data stored in the print buffer area 108 in S113. (S117).

ここで、図14を参照して、印刷動作制御処理(S117)の詳細について説明する。図14に示すように、印刷動作制御処理では、はじめにCPU31が供給されている電源電圧が所定の範囲内であるかどうかを判断する(S131)。供給電源電圧が所定範囲外であると判断した場合(S131:NO)、CPU31は、供給電源電圧が異常であり駆動回路43、駆動回路44、サーマルヘッド40、テープ送りローラ41等が駆動不能であると判断して、S141のエラー処理を実行する。   Here, the details of the printing operation control process (S117) will be described with reference to FIG. As shown in FIG. 14, in the printing operation control process, first, the CPU 31 determines whether or not the power supply voltage supplied is within a predetermined range (S131). When it is determined that the power supply voltage is outside the predetermined range (S131: NO), the CPU 31 has an abnormal power supply voltage and the drive circuit 43, drive circuit 44, thermal head 40, tape feed roller 41, etc. cannot be driven. If it is determined that there is, the error processing of S141 is executed.

供給されている電源電圧が所定の範囲内であると判断した場合(S131:YES)、CPU31は電池の充電容量が所定の範囲内であるかどうかを判断する(S133)。電池充電容量が所定範囲外であると判断した場合(S93:NO)、CPU31は、電池の充電容量が異常であると判断して、S141のエラー処理を実行する。   When it is determined that the supplied power supply voltage is within the predetermined range (S131: YES), the CPU 31 determines whether the charge capacity of the battery is within the predetermined range (S133). When it is determined that the battery charge capacity is outside the predetermined range (S93: NO), the CPU 31 determines that the battery charge capacity is abnormal and executes the error process of S141.

電池の充電容量が所定の範囲内であると判断した場合(S133:YES)、CPU31は印刷装置10およびサーマルヘッド40の温度が所定の範囲内であるかどうかを判断する(S135)。温度が所定の範囲外であると判断した場合(S135:NO)、CPU31は、温度が異常でありサーマルヘッド40等が駆動不能であると判断して、S141のエラー処理を実行する。   When it is determined that the battery charge capacity is within the predetermined range (S133: YES), the CPU 31 determines whether the temperatures of the printing apparatus 10 and the thermal head 40 are within the predetermined range (S135). If it is determined that the temperature is outside the predetermined range (S135: NO), the CPU 31 determines that the temperature is abnormal and the thermal head 40 and the like cannot be driven, and executes the error process of S141.

印刷装置10およびサーマルヘッド40の温度が所定の範囲内であると判断した場合(S135:YES)、CPU31は印字テープのテープカセットが収容されているかどうかを判断する(S137)。テープカセットが収容されていないと判断した場合(S137:NO)、CPU31は印刷すべき印字テープが存在しないと判断して、S141のエラー処理を実行する。   When it is determined that the temperatures of the printing apparatus 10 and the thermal head 40 are within the predetermined range (S135: YES), the CPU 31 determines whether or not the tape cassette of the printing tape is accommodated (S137). If it is determined that the tape cassette is not accommodated (S137: NO), the CPU 31 determines that there is no print tape to be printed, and executes the error process of S141.

テープカセットが収容されていると判断した場合(S137:YES)、CPU31は印刷処理を行うために必要な条件を満たしているものと判断する。そして、CPU31は、S113(図13参照)にて印刷バッファ領域108に記憶された印刷データに基づいて、駆動回路43および駆動回路44を制御し、印字テープへの印刷処理を実行する(S139)。そして、印刷動作制御処理を終了し、コマンド処理(図13参照)に戻る。   When it is determined that the tape cassette is accommodated (S137: YES), the CPU 31 determines that the conditions necessary for performing the printing process are satisfied. Then, the CPU 31 controls the drive circuit 43 and the drive circuit 44 based on the print data stored in the print buffer area 108 in S113 (see FIG. 13), and executes a printing process on the print tape (S139). . Then, the printing operation control process is terminated, and the process returns to the command process (see FIG. 13).

一方、S131〜S137のいずれかの判断にて印刷処理を行うことが不可能であると判断した場合、CPU31は異常状態であることをユーザに通知するエラー処理を行う(S141)。例えば、S141のエラー処理では、印刷装置10に付随したLED(図示外)を点灯させたり、パソコン20に対して通知を行って、ディスプレイ21に異常状態が発生して印刷不可能である旨を表示させたりする。そして、印刷動作制御処理を終了し、コマンド処理(図13参照)に戻る。   On the other hand, when it is determined that the printing process cannot be performed in any of the determinations of S131 to S137, the CPU 31 performs an error process for notifying the user of an abnormal state (S141). For example, in the error processing of S141, an LED (not shown) attached to the printing apparatus 10 is turned on or a notification is given to the personal computer 20, indicating that an abnormal state has occurred on the display 21 and printing is not possible. Display. Then, the printing operation control process is terminated, and the process returns to the command process (see FIG. 13).

図13のコマンド処理に戻り、S117の印刷動作制御処理(図14参照)が実行されると、コマンド処理を終了してメイン処理(図7参照)に戻る。そして、リングバッファ領域110に記憶されているデータが、印刷データでも印刷開始コマンドデータでもない場合(S111:NO、S115:NO)、CPU31は所定のその他のデータであるか否かを判断する(S119)。所定のその他のデータであると判断した場合には(S119:YES)、CPU31は、リングバッファ領域110に記憶されているデータに従って所定の処理を実行する(S83)。その後、コマンド処理を終了してメイン処理(図7参照)に戻る。また、リングバッファ領域110に記憶されているデータが所定のデータでないと判断した場合も(S119:NO)、コマンド処理を終了してメイン処理(図7参照)に戻る。なお、図7のメイン処理では、S27のコマンド処理(図13参照)が終了するとS13に移行し、CPU31は上述した処理を繰り返し継続して実行する。   Returning to the command processing in FIG. 13, when the printing operation control processing in S117 (see FIG. 14) is executed, the command processing is terminated and the processing returns to the main processing (see FIG. 7). When the data stored in the ring buffer area 110 is neither print data nor print start command data (S111: NO, S115: NO), the CPU 31 determines whether or not the data is predetermined other data ( S119). If it is determined that the data is predetermined other data (S119: YES), the CPU 31 executes a predetermined process according to the data stored in the ring buffer area 110 (S83). Thereafter, the command process is terminated and the process returns to the main process (see FIG. 7). Also, when it is determined that the data stored in the ring buffer area 110 is not predetermined data (S119: NO), the command processing is terminated and the processing returns to the main processing (see FIG. 7). In the main process of FIG. 7, when the command process of S27 (see FIG. 13) ends, the process proceeds to S13, and the CPU 31 repeatedly executes the above process.

ここで、より具体的なFAT構造のデータを例示して、所定ファイル領域の書き換えの判定処理(図11のS83参照)、および、RDE領域103の検索処理(図12のS103およびS105参照)の好適な態様を説明する。図15は、ディスク領域101のデータ構造を示すテーブルである。   Here, more specific FAT structure data will be exemplified, and a predetermined file area rewrite determination process (see S83 in FIG. 11) and an RDE area 103 search process (see S103 and S105 in FIG. 12). A preferred embodiment will be described. FIG. 15 is a table showing the data structure of the disk area 101.

図15に示すように、本実施形態のディスク領域101は、ファイルシステムタイプがFAT12、1セクタが512バイト、1クラスタが1セクタである。ディスク領域101のうち、RDE領域103には、ステータスファイル領域105に記憶されているステータスファイルに関するファイル情報データ201や、印刷ファイル領域106に記憶されている印刷ファイルに関するファイル情報データ202など、複数のファイル情報データが1ファイルあたり32バイトで記憶されている。ここで、RDE領域103に記憶されているファイル情報データのデータ構成(1ファイル分)を、以下の表1に示す。

Figure 0004947024
As shown in FIG. 15, the disk area 101 of this embodiment has a file system type of FAT12, 1 sector of 512 bytes, and 1 cluster of 1 sector. Among the disk areas 101, the RDE area 103 includes a plurality of file information data 201 related to the status file stored in the status file area 105 and file information data 202 related to the print file stored in the print file area 106. File information data is stored in 32 bytes per file. Here, the data structure (for one file) of the file information data stored in the RDE area 103 is shown in Table 1 below.
Figure 0004947024

表1に示すように、RDE領域103に記憶されているファイル情報データには、オフセット位置0〜7「ファイル名」、オフセット位置8〜10「拡張子」、オフセット位置11「ファイル属性」、オフセット位置12「予約領域」、オフセット位置13「ファイル作成時間の1/10秒単位」、オフセット位置14〜15「ファイル作成時間」、オフセット位置16〜17「ファイル作成日」、オフセット位置18〜19「最終アクセス日」、オフセット位置20〜21「ファイルデータの最初のクラスタ番号上位2バイト」、オフセット位置22〜23「最終ファイル書き込み時間」、オフセット位置24〜25「最終ファイル書き込み日」、オフセット位置26〜27「ファイルデータの最初のクラスタ番号下位2バイト」、よび、オフセット位置28〜31「ファイルサイズ」が、データとして含まれる。   As shown in Table 1, the file information data stored in the RDE area 103 includes an offset position 0 to 7 “file name”, an offset position 8 to 10 “extension”, an offset position 11 “file attribute”, and an offset. Position 12 “reserved area”, offset position 13 “1/10 second unit of file creation time”, offset position 14-15 “file creation time”, offset position 16-17 “file creation date”, offset position 18-19 “ “Last access date”, offset positions 20 to 21 “highest 2 bytes of first cluster number of file data”, offset positions 22 to 23 “last file write time”, offset positions 24 to 25 “last file write date”, offset position 26 ~ 27 "Lower 2 bytes of the first cluster number of file data", Offset position 28 to 31 is "file size", it is included as data.

例えば、ファイル情報データ201では、オフセット位置0〜7によりファイル名「PRTSTATE」、オフセット位置8〜10により拡張子「STS」、オフセット位置28〜31によりファイルサイズ「512バイト」、などのファイル情報が示される。また、ファイル情報データ202では、オフセット位置0〜7によりファイル名「PTLITE」、オフセット位置8〜10により拡張子「PRN」、オフセット位置28〜31によりファイルサイズ「32キロバイト」、などのファイル情報が示される。   For example, the file information data 201 includes file information such as the file name “PRTSSTATE” at the offset positions 0 to 7, the extension “STS” at the offset positions 8 to 10, and the file size “512 bytes” at the offset positions 28 to 31. Indicated. In the file information data 202, file information such as a file name “PTLITE” at the offset positions 0 to 7, an extension “PRN” at the offset positions 8 to 10, a file size “32 kilobytes” at the offset positions 28 to 31, and the like. Indicated.

ここで、S83の判定処理(図12参照)では、CPU31が、RDE領域103に記憶されているファイル情報データ202のオフセット位置26〜27を参照して、印刷ファイルの記憶領域における開始クラスタ「0x877−2」を特定する。そして、CPU31は、この開始クラスタ「0x877−2」における先頭セクタが書き換えられているか否かを判断する。本実施形態では1クラスタ=1セクタであるため、開始クラスタ「0x877−2」が書き換えられていれば、S83にて所定ファイル領域の書き換えがあったと判断する(S83:YES)。   Here, in the determination process in S83 (see FIG. 12), the CPU 31 refers to the offset positions 26 to 27 of the file information data 202 stored in the RDE area 103, and starts the cluster “0x877 in the print file storage area. -2 "is specified. Then, the CPU 31 determines whether or not the head sector in the start cluster “0x877-2” has been rewritten. In this embodiment, since 1 cluster = 1 sector, if the start cluster “0x877-2” is rewritten, it is determined in S83 that the predetermined file area has been rewritten (S83: YES).

また、S103の判定処理(図13参照)では、CPU31が、RDE領域103に記憶されているファイル情報データ202のオフセット位置0〜7を参照して、ファイル名が「PTLITE」であるか否かを判断する。そして、ファイル名が「PTLITE」であると判断すれば、印刷ファイルを発見したと判断する(S103:YES)。   Further, in the determination process of S103 (see FIG. 13), the CPU 31 refers to the offset positions 0 to 7 of the file information data 202 stored in the RDE area 103, and determines whether or not the file name is “PTLITE”. Judging. If it is determined that the file name is “PTLITE”, it is determined that a print file has been found (S103: YES).

また、S105の判定処理(図13参照)では、CPU31が、RDE領域103に記憶されているファイル情報データ202のオフセット位置28〜31を参照して、ファイルサイズが「32キロバイト」であるか否かを判断する。そして、ファイルサイズが「32キロバイト」であると判断すれば、印刷ファイルが適正であると判断する(S105:YES)。   Further, in the determination process of S105 (see FIG. 13), the CPU 31 refers to the offset positions 28 to 31 of the file information data 202 stored in the RDE area 103, and determines whether or not the file size is “32 kilobytes”. Determine whether. If the file size is determined to be “32 kilobytes”, it is determined that the print file is appropriate (S105: YES).

なお、SRAM33の印刷ファイル領域106にて印刷ファイルの書き込みが行われる場合は、まずRDE領域103に記憶されているファイル情報データ202が削除され、印刷ファイル領域106に印刷ファイルが書き込まれたのちに、RDE領域103に新たなファイル情報データ202が書き込まれる。つまり、RDE領域103のファイル情報データ202には、印刷ファイル領域106に記憶されている印刷ファイルに関する最新のファイル情報が反映されているため、このファイル情報データ202を利用することで上記の判定処理S83、S103、S105を正確に行うことができる。   When a print file is written in the print file area 106 of the SRAM 33, first, the file information data 202 stored in the RDE area 103 is deleted and the print file is written in the print file area 106. , New file information data 202 is written in the RDE area 103. That is, since the file information data 202 in the RDE area 103 reflects the latest file information related to the print file stored in the print file area 106, the above-described determination process is performed by using this file information data 202. S83, S103, and S105 can be accurately performed.

以上説明したように、本実施形態の印刷装置10によれば、印刷装置10を記憶デバイスとして認識するパソコン20から印刷ファイルが書き込まれると、CPU31は、SRAM33のディスク領域101(詳細には、印刷ファイル領域106)への印刷ファイルの書き込みが完了したか否かを判断する。そのため、ファイル管理の主体でない印刷装置10で、印刷ファイルの書き込みが完了したことを認識できる。これにより、印刷装置10では、印刷ファイルの書き込み途中で印刷動作を開始することが防止されて、適正な印刷動作を実行できない印刷エラーや印刷画像での文字化けや画像欠損などを抑制することができる。   As described above, according to the printing apparatus 10 of this embodiment, when a print file is written from the personal computer 20 that recognizes the printing apparatus 10 as a storage device, the CPU 31 stores the disk area 101 (specifically, print It is determined whether or not the writing of the print file to the file area 106) is completed. Therefore, it is possible to recognize that the printing of the print file has been completed by the printing apparatus 10 that is not the file management entity. As a result, the printing apparatus 10 is prevented from starting the printing operation in the middle of writing the print file, and can suppress a printing error that prevents the proper printing operation from being executed, a garbled character in the printed image, an image loss, or the like. it can.

また、CPU31は、パソコン20からWriteコマンドを受信した場合、CSWを送信する処理が実行された時点から他のWriteコマンドを受信することなく所定時間が経過すると、印刷ファイル領域106への印刷ファイルの書き込みが完了したと判断する。すなわち、印刷装置10では、一の印刷ファイルについて複数回のWriteコマンドを受信する場合があるため、セクタデータの転送完了時から所定時間経過するまでに他のWriteコマンドを受信しなければ、この印刷ファイルについて更なるWriteコマンドを受信することがなくファイル書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置10で、印刷ファイルの書き込みが完了したか否かを、パソコン20から送信されるWriteコマンドを基準として正確に特定することができる。 In addition, when the CPU 31 receives a write command from the personal computer 20, if a predetermined time elapses without receiving another write command from the time when the process of transmitting the CSW is executed , the CPU 31 stores the print file in the print file area 106. Judge that writing is complete. That is, since the print device 10 may receive a plurality of write commands for one print file, if the print device 10 does not receive another write command before the predetermined time elapses after the sector data transfer is completed, It is considered that the file writing has been completed without receiving any further Write commands for the file. As a result, it is possible to accurately specify whether or not the printing of the print file has been completed by the printing apparatus 10 that is not the file management entity, based on the Write command transmitted from the personal computer 20.

また、CPU31は、セクタデータの転送完了時から所定時間経過すると、RDE領域103のファイル情報データ202を検索してファイル名「PTLITE」を発見すると、記憶手段への印刷ファイルの書き込みが完了したと判断する。すなわち、印刷ファイル領域106への印刷ファイルの書き込みが完了すると、RDE領域103に記憶されているファイル情報データ202にファイル名「PTLITE」が記憶されるため、ファイル名「PTLITE」を発見すると印刷ファイルの書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置10で、印刷ファイルの書き込みが完了したか否かを、ファイル名の検索という簡易な制御だけで正確に特定することができる。 Further, when the CPU 31 searches the file information data 202 in the RDE area 103 and finds the file name “PTLITE” when a predetermined time has elapsed from the completion of the transfer of the sector data , the writing of the print file to the storage means is completed. to decide. In other words, when the writing of the print file to the print file area 106 is completed, the file name “PTLITE” is stored in the file information data 202 stored in the RDE area 103. Therefore, when the file name “PTLITE” is found, the print file Is considered completed. As a result, it is possible to accurately specify whether or not the printing of the print file is completed in the printing apparatus 10 that is not the main body of file management only by simple control of searching for the file name.

また、CPU31は、セクタデータの転送完了時から所定時間経過すると、RDE領域103のファイル情報データ202を検索してファイルサイズ「32キロバイト」を発見すると、印刷ファイル領域106への印刷ファイルの書き込みが完了したと判断する。すなわち、印刷ファイル領域106への印刷ファイルの書き込みが完了すると、RDE領域103に記憶されているファイル情報データ202にファイルサイズ「32キロバイト」が記憶されるため、ファイルサイズ「32キロバイト」を発見すると印刷ファイルの書き込みが完了したものとみなす。これにより、ファイル管理の主体でない印刷装置10で、印刷ファイルの書き込みが完了したか否かを、ファイルサイズの検索という簡易な制御だけで正確に特定することができる。 When the CPU 31 finds the file size “32 kilobytes” by searching the file information data 202 in the RDE area 103 when a predetermined time elapses after the sector data transfer is completed, the print file is written to the print file area 106. Judge that completed. That is, when the writing of the print file to the print file area 106 is completed, the file size “32 kilobytes” is stored in the file information data 202 stored in the RDE area 103. It is assumed that the print file has been written. As a result, it is possible to accurately specify whether or not the printing of the print file is completed in the printing apparatus 10 that is not the main body of file management only by simple control of searching for the file size.

ところで、本実施形態において、パソコン20が本発明の「外部端末」に相当する。図9のS55、S57、図10のS63、S67において、パソコン20からパケットを受信する処理およびパソコン20にパケットを送信する処理を行うCPU31が、本発明の「通信手段」に相当する。SRAM33およびFlashROM34が、本発明の「記憶手段」に相当する。マスストレージクラスドライバ59を稼動するCPU31が、本発明の「制御手段」に相当する。図11のS83〜S85、S91〜S95、および、図12のS101〜S105を実行するCPU31が、本発明の「書込完了判断手段」に相当する。図14のS139を実行するCPU31が、本発明の「印刷手段」に相当する。   By the way, in this embodiment, the personal computer 20 corresponds to the “external terminal” of the present invention. In S55 and S57 in FIG. 9 and S63 and S67 in FIG. 10, the CPU 31 that performs the process of receiving a packet from the personal computer 20 and the process of transmitting the packet to the personal computer 20 corresponds to the “communication means” of the present invention. The SRAM 33 and the Flash ROM 34 correspond to the “storage means” of the present invention. The CPU 31 that operates the mass storage class driver 59 corresponds to the “control unit” of the present invention. The CPU 31 that executes S83 to S85, S91 to S95 in FIG. 11 and S101 to S105 in FIG. 12 corresponds to the “write completion determination unit” of the present invention. The CPU 31 that executes S139 in FIG. 14 corresponds to the “printing unit” of the invention.

なお、本発明は上記実施形態に限定されるものではなく、発明の要旨を変更しない範囲での変更が可能である。   In addition, this invention is not limited to the said embodiment, The change in the range which does not change the summary of invention is possible.

例えば、上記実施形態では、USBコントローラ42はCPU31とは独立したデバイスとする構成を想定したが、この構成に限定されない。従って、CPU31がUSBコントローラ42の機能を内蔵する構成であっても構わない。   For example, in the above embodiment, the USB controller 42 is assumed to be a device independent of the CPU 31, but the present invention is not limited to this configuration. Therefore, the CPU 31 may be configured to incorporate the function of the USB controller 42.

また、上記実施形態では、S83において印刷ファイル領域106の先頭セクタへの書き換えがあったか否かを判断しているが、「所定ファイル領域」は印刷ファイル領域106における任意のセクタ(あるいは、クラスタ)とすることができる。例えば、CPU31は、印刷ファイル領域106の最終セクタへの書き換えがあった場合に、「所定ファイル領域」の書き換えがあったと判断してもよい。   In the above embodiment, it is determined in S83 whether or not the first sector of the print file area 106 has been rewritten. The “predetermined file area” is an arbitrary sector (or cluster) in the print file area 106. can do. For example, when the print file area 106 is rewritten to the last sector, the CPU 31 may determine that the “predetermined file area” has been rewritten.

また、上記実施形態では、図12のセクタ情報取得処理において、S101(最終書き込みからの経過時間の判定)が満たされたのちに、S103(ファイル名検索)、S105(ファイルサイズ検索)を行っているが、このフローに限定されない。例えば、図12のセクタ情報取得処理において、S101、S103およびS105のいずれか一つの判定処理を実行し、その判定処理が満たされれば印刷ファイルの書き込みが完了してものとしてリングバッファ処理(S107)を実行してもよい。   In the above embodiment, in the sector information acquisition process of FIG. 12, S103 (file name search) and S105 (file size search) are performed after S101 (determination of elapsed time from the last write) is satisfied. However, it is not limited to this flow. For example, in the sector information acquisition process of FIG. 12, one of the determination processes of S101, S103, and S105 is executed, and if the determination process is satisfied, the writing of the print file is completed and the ring buffer process (S107) May be executed.

ところで、図12のセクタ情報取得処理において、S101を行わずにS103およびS105のいずれかの判定処理を行う場合には、S103またはS105を適当なタイミングで実行することが好ましい。例えば、RDE領域103へのアクセスがあった場合(より好適には、ファイル情報データ202の更新があった場合)に、S103またはS105の判定処理を行うことが好ましい。ファイル情報データ202の更新があった場合には、印刷ファイル領域106への印刷ファイルの書き込みが完了している可能性が高く、S103またはS105をより効率的に実行できるためである。   By the way, in the sector information acquisition process of FIG. 12, when performing the determination process of either S103 or S105 without performing S101, it is preferable to execute S103 or S105 at an appropriate timing. For example, when there is an access to the RDE area 103 (more preferably, when the file information data 202 is updated), it is preferable to perform the determination process of S103 or S105. This is because when the file information data 202 is updated, it is highly likely that the print file has been written to the print file area 106, and S103 or S105 can be executed more efficiently.

また、上記実施形態では、S103(ファイル名検索)にて印刷ファイルのファイル名「PTLITE」と一致するか否かを判断しているが、印刷ファイルのファイル名の一部(例えば、「PTL」)と一致するか否かを判断してもよいし、印刷ファイルの拡張子も含めたファイル名(例えば、「PTLITE.PRN」)と一致するか判断してもよい。   In the above embodiment, it is determined in S103 (file name search) whether or not the file name “PTLITE” of the print file matches, but a part of the file name of the print file (for example, “PTL”). ) Or a file name including the extension of the print file (for example, “PTLITE.PRN”) may be determined.

また、上記実施形態では、ファイルの書き込み位置および読み出し位置を規定するためにファイルシステムとしてFATを採用した場合を例示したが、本発明を実現できれば他のファイルシステムを採用してもよい。また、FATを採用する場合でも、FAT構造の詳細(ファイルシステムタイプ、1セクタのデータサイズ、1クラスタのデータサイズなど)は、印刷システム1や印刷装置10に合わせて任意に設計すればよい。   In the above-described embodiment, the case where the FAT is adopted as the file system in order to define the file writing position and the reading position is exemplified. However, other file systems may be adopted as long as the present invention can be realized. Even when the FAT is adopted, details of the FAT structure (file system type, data size of one sector, data size of one cluster, etc.) may be arbitrarily designed according to the printing system 1 or the printing apparatus 10.

また、上記実施形態では、印刷ファイルを32キロバイトの固定長データとしたが、印刷対象画像に応じた可変長データとしてもよい。これによれば、印刷ファイルのファイルサイズを最適化して送信データ量を抑制することができるが、その場合でも印刷装置10のメモリ上における印刷ファイルの書き込み位置(特に、書き込み領域の先頭位置)が変化しないことが望ましい。   In the above embodiment, the print file is fixed-length data of 32 kilobytes, but may be variable-length data corresponding to the print target image. According to this, the file size of the print file can be optimized and the amount of transmission data can be suppressed, but even in this case, the print file write position (particularly, the start position of the write area) on the memory of the printing apparatus 10 is still possible. It is desirable not to change.

また、上記実施形態では、FlashROM34からSRAM33にFAT構造の一部をコピーして、SRAM33で実際のファイルのアクセスを行っているが、かかる態様に限定されない。例えば、FAT構造がコピーされてファイルアクセスが行われるメモリ(本実施形態ではSRAM33)として大容量記憶素子(例えば、DRAMやSDRAMなど)を採用することで、FAT構造の本体を有するメモリ(本実施形態ではFlashROM34)からFAT構造の全体をコピーするようにしてもよい。また、FAT構造がコピーされてファイルアクセスが行われるメモリ(本実施形態ではSRAM33)を設けずに、FAT構造の本体を有するメモリ(本実施形態ではFlashROM34)において直接ファイルアクセスが行われるようにしてもよい。   In the above embodiment, a part of the FAT structure is copied from the Flash ROM 34 to the SRAM 33, and the actual file is accessed by the SRAM 33. However, the present invention is not limited to this mode. For example, by adopting a mass storage element (for example, DRAM, SDRAM, etc.) as a memory (SRAM 33 in this embodiment) to which file access is performed by copying the FAT structure, a memory having a main body of the FAT structure (this embodiment) In an embodiment, the entire FAT structure may be copied from the FlashROM 34). Further, the memory (in this embodiment, the SRAM 33) in which the FAT structure is copied and the file access is performed is not provided, and the file access is directly performed in the memory having the main body of the FAT structure (in the present embodiment, the Flash ROM 34). Also good.

印刷システム1を示す模式図である。1 is a schematic diagram showing a printing system 1. FIG. 印刷装置10の電気的構成を示す模式図である。2 is a schematic diagram illustrating an electrical configuration of the printing apparatus 10. FIG. FlashROM34の記憶領域を示す模式図である。3 is a schematic diagram showing a storage area of a FlashROM 34. FIG. SRAM33の記憶領域を示す模式図である。3 is a schematic diagram showing a storage area of an SRAM 33. FIG. 印刷装置10〜パソコン20間のデータの流れを示す内部ブロック図である。FIG. 3 is an internal block diagram illustrating a data flow between the printing apparatus 10 and the personal computer 20. 印刷装置10〜パソコン20間の通信シーケンスを示す模式図である。3 is a schematic diagram illustrating a communication sequence between the printing apparatus 10 and the personal computer 20. FIG. メイン処理のフローチャートである。It is a flowchart of a main process. モード切替処理のフローチャートである。It is a flowchart of a mode switching process. プリンタ処理のフローチャートである。It is a flowchart of a printer process. マスストレージ処理のフローチャートである。It is a flowchart of a mass storage process. バルク受信処理のフローチャートである。It is a flowchart of a bulk reception process. セクタ情報取得処理のフローチャートである。It is a flowchart of a sector information acquisition process. コマンド処理のフローチャートである。It is a flowchart of command processing. 印刷動作制御処理のフローチャートである。It is a flowchart of a printing operation control process. ディスク領域101のデータ構造を示すテーブルである。3 is a table showing a data structure of a disk area 101.

1 印刷システム
10 印刷装置
11 USBケーブル
20 パソコン
31 CPU
33 SRAM
34 FlashROM
42 USBコントローラ
51 制御プログラム領域
58 プリンタクラスドライバ
59 マスストレージクラスドライバ
90 ディスク領域
101 ディスク領域
102 FAT領域
103 RDE領域
104 DATA領域
105 ステータス領域
106 印刷ファイル領域
107 ローカル領域
1 Printing System 10 Printing Device 11 USB Cable 20 Personal Computer 31 CPU
33 SRAM
34 FlashROM
42 USB controller 51 Control program area 58 Printer class driver 59 Mass storage class driver 90 Disk area 101 Disk area 102 FAT area 103 RDE area 104 DATA area 105 Status area 106 Print file area 107 Local area

Claims (7)

外部端末と通信を行う通信手段と、
前記通信手段にて前記外部端末から受信されたデータを記憶する記憶手段と、
前記記憶手段に対するデータの書き込みおよび読み出しを制御するとともに、前記通信手段による通信が実行される場合、前記記憶手段を、一まとまりの印刷データが含まれる印刷ファイルを一単位として書き込み可能な外部記憶装置として、前記外部端末に認識させる制御手段と、
前記制御手段により前記印刷ファイルの書き込みが実行される場合、前記記憶手段に対する前記印刷ファイルの書き込みが完了したか否かを判断する書込完了判断手段と、
前記書込完了判断手段により前記印刷ファイルの書き込みが完了したと判断されると、前記記憶手段に記憶された前記印刷ファイルに含まれる前記印刷データに基づいて印刷を実行する印刷手段とを備え、
前記書込完了判断手段は、前記通信手段にて前記印刷ファイルの書き込みを指示する書込コマンドが受信された場合、前記書込コマンドに含まれる前記印刷データの転送が完了したことを示す応答信号を前記外部端末に送信する処理が実行された時点から起算して、前記通信手段にて他の前記書込コマンドを受信することなく所定時間が経過すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする印刷装置。
A communication means for communicating with an external terminal;
Storage means for storing data received from the external terminal by the communication means;
An external storage device that controls writing and reading of data to and from the storage unit, and can write the storage unit as a unit of a print file including a group of print data when communication by the communication unit is executed. Control means for causing the external terminal to recognize,
A writing completion judging means for judging whether or not writing of the printing file to the storage means is completed when writing of the print file is executed by the control means;
A printing unit that executes printing based on the print data included in the print file stored in the storage unit when the writing completion determination unit determines that the writing of the print file is completed;
The write completion determination means is a response signal indicating that the transfer of the print data included in the write command is completed when the communication means receives a write command instructing writing of the print file. Starting from the time when the process of transmitting to the external terminal is executed, it is determined that writing of the print file has been completed when a predetermined time has elapsed without receiving the other write command in the communication means. The printing apparatus characterized by performing.
前記記憶手段は、前記記憶手段に記憶されているファイルと併せて、前記ファイルを識別するためのファイル名をファイル情報として記憶しており、
前記書込完了判断手段は、所定タイミングで前記記憶手段にて前記ファイル名を検索し、前記印刷ファイルであることを示すファイル名を発見すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする請求項1に記載の印刷装置。
The storage means stores a file name for identifying the file as file information together with the file stored in the storage means,
The writing completion judging means searches the file name in the storage means at a predetermined timing and finds a file name indicating the print file, and judges that the writing of the print file is completed. The printing apparatus according to claim 1, wherein:
前記記憶手段は、前記記憶手段に記憶されているファイルと併せて、前記ファイルのデータ量を示すファイルサイズをファイル情報として記憶しており、
前記書込完了判断手段は、所定タイミングで前記記憶手段にて前記ファイルサイズを検索し、前記一単位として予め定められた規定データ量を示すファイルサイズを発見すると、前記印刷ファイルの書き込みが完了したと判断することを特徴とする請求項1または2に記載の印刷装置。
The storage means stores a file size indicating the data amount of the file as file information together with the file stored in the storage means,
The writing completion determining unit searches the file size in the storage unit at a predetermined timing, and when the file size indicating a prescribed data amount predetermined as the unit is found, the writing of the print file is completed. The printing apparatus according to claim 1, wherein the printing apparatus is determined.
前記制御手段は、前記通信手段にて前記印刷ファイルが受信されると、前記印刷ファイルを前記記憶手段における所定領域に書き込むものであって、
前記書込完了判断手段は、
前記記憶手段における所定領域の先頭位置に対してデータの書き込みが行われると、特定フラグをONにセットし、
前記印刷装置から前記外部端末に前記応答信号が送信されると、前記特定フラグをOFFにセットし、
前記特定フラグがOFFにセットされた時点から起算して、前記所定時間が経過したか否かを判断することを特徴とする請求項1〜3のいずれかに記載の印刷装置。
The control means writes the print file in a predetermined area in the storage means when the print file is received by the communication means,
The writing completion judging means is
When the writing of data is performed with respect to the head position of a predetermined region in the storage means, it sets a specific flag to ON,
When the response signal to the external terminal from the printing device is transmitted, and sets the previous SL specific flag to OFF,
The printing apparatus according to claim 1, wherein it is determined whether or not the predetermined time has elapsed from a time when the specific flag is set to OFF.
前記記憶手段は、前記ファイルを記憶する第1の領域と、前記ファイル情報を記憶する第2の領域とを有しており、
前記書込完了判断手段は、前記所定タイミングとして前記第2の領域に対する前記ファイル情報の書き込みがあったときに前記記憶手段を検索することを特徴とする請求項2または3に記載の印刷装置。
The storage means has a first area for storing the file and a second area for storing the file information,
4. The printing apparatus according to claim 2, wherein the writing completion determining unit searches the storage unit when the file information is written to the second area as the predetermined timing.
前記通信手段は、USB(Universal Serial Bus)を介して前記外部端末と通信を行うためのUSBポートであって、
前記制御手段は、USBデバイスドライバとしてマスストレージクラスドライバを使用することにより、前記記憶手段を前記外部記憶装置として前記外部端末に認識させることを特徴とする請求項1〜5のいずれかに記載の印刷装置。
The communication means is a USB port for communicating with the external terminal via USB (Universal Serial Bus),
6. The control unit according to claim 1, wherein the control unit causes the external terminal to recognize the storage unit as the external storage device by using a mass storage class driver as a USB device driver. Printing device.
前記記憶手段は、プログラムの実行ファイルをさらに記憶しており、
前記制御手段は、前記通信手段にて前記実行ファイルを前記外部端末に送信することにより、前記外部端末において前記プログラムの稼動を可能とすることを特徴とする請求項1〜6のいずれかに記載の印刷装置。
The storage means further stores an execution file of a program,
The said control means enables operation | movement of the said program in the said external terminal by transmitting the said executable file to the said external terminal by the said communication means. Printing device.
JP2008253352A 2008-09-30 2008-09-30 Printing device Active JP4947024B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008253352A JP4947024B2 (en) 2008-09-30 2008-09-30 Printing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008253352A JP4947024B2 (en) 2008-09-30 2008-09-30 Printing device

Publications (2)

Publication Number Publication Date
JP2010082924A JP2010082924A (en) 2010-04-15
JP4947024B2 true JP4947024B2 (en) 2012-06-06

Family

ID=42247376

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008253352A Active JP4947024B2 (en) 2008-09-30 2008-09-30 Printing device

Country Status (1)

Country Link
JP (1) JP4947024B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021117705A (en) * 2020-01-24 2021-08-10 富士フイルムビジネスイノベーション株式会社 Information processing device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06103186A (en) * 1992-09-22 1994-04-15 Fuji Xerox Co Ltd Gateway system
JP2002169680A (en) * 2000-09-19 2002-06-14 Fuji Xerox Co Ltd Image control apparatus, image output system, medium and program
JP2005108116A (en) * 2003-10-01 2005-04-21 Canon Inc Printer device, information processor, printing system, printing data processing method, computer program and computer-readable storing medium
JP2008097284A (en) * 2006-10-11 2008-04-24 Fuji Xerox Co Ltd Printing system, host apparatus, printing apparatus, method for controlling printing system
JP2008159033A (en) * 2006-11-30 2008-07-10 Canon Inc Electronic apparatus and information processing system

Also Published As

Publication number Publication date
JP2010082924A (en) 2010-04-15

Similar Documents

Publication Publication Date Title
EP2113835B1 (en) Printer, terminal, and printing system
JP4143659B2 (en) Control method and information processing apparatus using printer utility means
US8332843B2 (en) Information processing apparatus and control method for installing driver software
EP2280347B1 (en) Information processing apparatus, control method of the information processing apparatus, and recording medium
KR100468882B1 (en) Printing apparatus, and a method of controlling it and information recording medium
JPWO2006075397A1 (en) Installation method, program, peripheral device and system
JP4947024B2 (en) Printing device
JP5314344B2 (en) External storage device, startup program switching method, and startup program switching program
JP4941399B2 (en) Printing device
JP5125952B2 (en) Printing device
JP5596376B2 (en) Peripheral device
JP5485846B2 (en) Information recording device
US20130159642A1 (en) Method of Writing Firmware, Firmware Storage Medium, and Electronic Device
KR100496506B1 (en) Method For Providing Extended USB Functions Using Standard UMS Communication
US20060039688A1 (en) Record reproduction apparatus, record reproduction method, record reproduction program, storage medium, and information storage medium
JP4141326B2 (en) PRINT CONTROL DEVICE, PRINT CONTROL METHOD, PROGRAM, AND RECORDING MEDIUM
JP4618560B2 (en) Communication system and peripheral device used therefor
EP1524595B1 (en) Removable media device, host device, program and recording medium thereof
JP2006181735A (en) Data outputting apparatus and information processing apparatus
JP4946966B2 (en) Printing device
JP4635831B2 (en) Printer and printer control method
JP2007048073A (en) Internal state setting method for usb storage device, usb storage device and controller therefor
JP2005038297A (en) Installation method of device driver, and system used for it
JP2004021582A (en) Information processing system, rewriting method of firmware, rewriting program and recording medium
JP2012123733A (en) Information processor, and data management method in information processor

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110628

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110629

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110818

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111219

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: 20120207

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: 20120220

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150316

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4947024

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150