Abstract:
A printing apparatus to perform a printing operation by driving hardware provided thereto according to a printing command received from a user, including a firmware unit to store function information of a plurality of models of the printing apparatus, and selectively perform the function of one of the plurality of models which corresponds to a model index designated as the printing apparatus is initialized.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of application Ser. No. 10/826,299, filed on Apr. 19, 2004, which claims the benefit of Korean Patent Application No. 2003-40416, filed Jun. 20, 2003, in the Korean Intellectual Property Office, the disclosures of which are incorporated herein by reference. 
     
    
     BACKGROUND 
       [0002]    1. Field 
         [0003]    The present invention generally relates to a printing apparatus that comprises firmware capable of supporting series-models by adding a model index function, and a method of supporting the series-models in the printing apparatus. 
         [0004]    2. Description of the Related Art 
         [0005]    Generally, when a printing apparatus such as a printer is developed, a variety of derivative series-models are developed together, having slightly different functions on the basis of the main model. Prices and performance of such series-models vary. However, the basic functions are similar among the series-models, while each has slightly different additional functions. 
         [0006]    Meanwhile, an external device, such as the printing apparatus, uses firmware thereof to independently drive its own mechanism. The firmware has an intermediate property between hardware and software, and refers to a program which permanently becomes a part of the device by being incorporated in a PROM (programmable read-only memory). In other words, the firmware refers to a program which is in charge of driving the printing apparatus and processing and controlling the print data, and mainly consists of a kernel unit and an emulation unit. The kernel unit is in charge of jobs such as driving the printer system, processing the print data, and controlling the printing operation, while the emulation unit is in charge of processing and converting the print data into a printer language so that the same form can be outputted as the user has initially written. 
         [0007]    Based on the firmware support, the printing apparatus receives a printing command from a computer, thereby performing the printing operation according to the user&#39;s setting. Generally, the external device, such as the printing apparatus, incorporates components such as a ROM having the firmware stored therein. 
         [0008]    On the other hand, while the derivation models have similar basic functions as those of the main model (hereinafter referred to as the printer, by way of an example), because the respective models also have slightly different functions, conventionally, different firmware for each model had to be separately developed and applied. 
         [0009]      FIG. 1  shows various printer derivation models, each being applied with different firmware that is individually developed for the use of the individual model. With reference to  FIG. 1 , each of the printer models  10 ,  20 , and  30  uses its own firmware  10 ′,  20 ′, and  30 ′. Accordingly, this development approach has a drawback in that the series-models having similar basic operations and functions require their own firmware to be separately developed only for a slight functional variation, resulting in increased time and cost of firmware development. 
       SUMMARY 
       [0010]    In order to overcome these and/or other problems, it is an aspect of the present invention to provide a printing apparatus having a firmware capable of supporting various functions of series-models by designating a model index of the printing apparatus, and a method of supporting the various series-models by the firmware. More specifically, a plurality of series-models can be supported through a single firmware by adding a model index function and a model index command designating the function in the firmware, instead of separately developing a firmware for each of the series-models having similar functions. 
         [0011]    Additional aspects and/or advantages of the invention will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the invention. 
         [0012]    In an effort to achieve the above and/or other aspects of the present invention, a printing apparatus according to an embodiment of the present invention comprises a firmware unit to store function information of a plurality of models of the printing apparatus, and selectively perform the function of one of the plurality of models which corresponds to a model index designated as the printing apparatus is initialized. 
         [0013]    The firmware unit may comprise a storage unit to store the function information of the plurality of models therein, a model index processing unit to store a model index designation command received from outside the firmware unit, extract from the storage unit the function information which corresponds to the model index designated by the model index designation command upon the initialization of the printing apparatus, and output the extracted function information, and a firmware driving unit to control the hardware to receive the function information and perform a corresponding function. 
         [0014]    The firmware unit may further comprise a data receiving unit to receive data from outside the firmware unit, and transmit the model index designation command to the model index processing unit in response to the model index designation command being in the received data, a data processing unit to receive the data excluding the model index designation command from the data receiving unit, and convert the data into corresponding printer language, and a data printing unit to control the hardware to output the converted data onto a printing medium. 
         [0015]    According to the present invention, a method of supporting a plurality of models of a printing apparatus by a common firmware is also provided. The method comprises confirming a model index designation command which designates a model index corresponding to one of the plurality of printing apparatus models, extracting function information corresponding to the one of the plurality of printing apparatus models which is designated by the model index designation command, confirming a function of the designated model using the function information, and performing the function. 
         [0016]    The method may further comprise inputting the model index designation command and storing the command in an initialization file, and confirming the model index designation command by executing the initialization file. 
         [0017]    The method may further comprise writing a separate file which stores therein the model index designation command, storing the file in the printing apparatus through a printer interface, and confirming the model index designation command by executing the file, may be further provided. 
         [0018]    The function of a basic model that is previously set may be performed in response to there being no function information corresponding to the designated model index. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0019]    These and/or other aspects and advantages of the invention will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which: 
           [0020]      FIG. 1  shows a plurality of conventional printer derivation models, each being applied with a firmware of its own which has been individually developed for its own use; 
           [0021]      FIG. 2  is a schematic block diagram of a firmware unit according to an embodiment of the present invention; 
           [0022]      FIG. 3  is a view showing a plurality of printer derivation models being supported by a single firmware which is made according to an embodiment of the present invention; and 
           [0023]      FIG. 4  is a flowchart illustrating a method of supporting the series-models according to an embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0024]    Reference will now be made in detail to the embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below to explain the present invention by referring to the figures. 
         [0025]      FIG. 2  is a schematic block diagram of a firmware unit  100  of the printer according to an embodiment of the present invention. With reference to  FIG. 2 , the firmware unit  100  comprises a data receiving unit  110 , a data processing unit  120 , a data printing unit  130 , a model index processing unit  140 , a model index storage unit  150 , and a firmware driving unit  160 . As described above, the firmware refers to programs which perform jobs such as printer driving, printing data processing, and printing operation control. In the present embodiment, the overall portion which these programs are applied to will be collectively referred to as the firmware unit  100 . 
         [0026]    The user prepares a document using a PC and inputs a command to print. Accordingly, the PC transmits document data and a print command to a printer connected thereto. The firmware unit  100  of the printer receives the document data and converts the data into suitable printer language by using a predetermined emulation language. For example, a laser printer mainly uses an emulation language such as PCL® (Printer Command Language) of HP® and PostScript® of the ADOBE®. 
         [0027]    The firmware unit  100  drives and controls the respective mechanical components of the printer based on the converted printer language, so that printing can be carried out properly. For example, when presented in a laser printer, the firmware unit  100  controls the paper feed roller, a laser scanning unit (LSU), a photosensitive drum such as an OPC drum, a charging roller, a developing roller, a transfer roller, and a fusing unit in the respective steps of the printing such as paper feeding, charging, light exposure, developing, image transfer, and image fusing. The firmware unit  100  operates in accordance with the functions supported by the printer. The printer may be provided with various functions, which include a toner save function, an automatic power save function, a one-touch duplex printing function, and an automatic paper size sensing function. The functions may vary depending on the model type of the printer. The variants of a certain type of printer may have the same major functions, while having a slight difference in details. 
         [0028]    The model index storage unit  150  stores therein an index of printer models and their variants, together with information of the corresponding functions. Accordingly, as the manufacturer of the printer inputs a model index of the printer in the firmware unit  100 , the firmware unit  100  checks the function corresponding to the index of the model index storage unit  150  and controls the printer to support the corresponding function. 
         [0029]    More specifically, when predetermined data is inputted from outside, the data receiving unit  110  receives the data. The data receiving unit  110  sends the data out to the model index processing unit  140  if the received data is the command to designate the model index, and sends the data out to the data processing unit  120  if the received data is regular printing data. 
         [0030]    The data processing unit  120  converts the received printing data into a suitable printer language so that the data can be output in the same form as the user has initially written, and sends the converted data to the data printing unit  130 . The data printing unit  130  controls parts of the printer such as a developing machine and fusing machine, and the converted printing data is output onto a printing medium, for example, paper. 
         [0031]    When the command to designate the model index is contained in the received data, the data receiving unit  110  transmits the received data pertaining to the model index to the model index processing unit  140 . The model index processing unit  140  checks the designated model index, and reads the pre-stored model index information from the model index storage unit  150 . 
         [0032]    Meanwhile, designating the model index is usually performed by either adding the designation command in the printer file initialization, or writing a separate command file for the model index designation. 
         [0033]    More specifically, adding the designation command in the printer file initialization involves transmitting the model index designation command along with initialization files through a printer interface during the manufacturing of the printers, so that the designation command can be processed in the initialization of the printer. Writing the separate command file for the model index designation involves writing a separate model index designation command file and transmitting the command file through the printer interface for processing by the firmware. 
         [0034]    The model index storage unit  150  stores therein the information and index of the designated models. On receiving a model index designation command, the model index processing unit  140  confirms the corresponding model information from the model index storage unit  150 . 
         [0035]    When the model information corresponding to the designated model index is confirmed in the model index processing unit  140 , the firmware driving unit  160  performs the model functions according to the confirmation model information. 
         [0036]    Accordingly, various types of printer models can be developed to use a common firmware.  FIG. 3  shows various types of printers  210 ,  220 ,  230  using a common multi-model firmware  100  for use in multiple models according to the present invention. Unlike the conventional case, which is shown in  FIG. 1 , the respective printer models  210 ,  220 ,  230  are not each supported by different firmware, but by one common multi-model firmware  100 . 
         [0037]      FIG. 4  is a flowchart illustrating a method of supporting the series-models according to an embodiment of the present invention. 
         [0038]    With reference to  FIG. 4 , firstly, the model index designation command is added to an initialization file of the printer (S 401 ). The added model index designation command is processed by the model index processing unit  140  and stored in the model index storage unit  150 . 
         [0039]    When the printer is initialized by the user, the stored model index designation command is confirmed (S 402 ). 
         [0040]    Next, the model index processing unit  140  reads the information of the designated model from the model index storage unit  150  based on the confirmed designation command (S 403 ). That is, the model index processing unit  140  reads information matching the index of the designated model among information that is previously stored in the model index storage unit  150 . 
         [0041]    Then, the function of the designation model is confirmed based on the read model information (S 404 ), and the firmware driving unit  160  drives this function (S 405 ). 
         [0042]    A description will now be made of a case in which firmware capable of performing integrated support on model A, wherein function  1  is used while function  2  is not used, and model B, wherein function  1  is not used while function  2  is used, is implemented. 
         [0043]    The model A is given an index code 0x01, and the model B is given an index code 0x02, and if the initialization of the printer is carried out by adding the command designating the model A to the printer initialization file (that is, index code being designated as 0x01), the model index processing unit  140  has the index code stored in the model index storage unit  150 . 
         [0044]    When the user powers on the printer so that the printer initializes, if there is the index code designating the model index in the model index storage unit  150 , the model index processing unit  140  confirms the same. The model index processing unit  140  reads information on the model A corresponding to the index code from the model index storage unit  150 . In other words, the model index processing unit  140  confirms that function  1  is used, and function  2  is not used, in the corresponding printer. 
         [0045]    Next, according to the information as read, the firmware driving unit  160  drives the function  1  by activating the function  1 , and inactivating the function  2 . 
         [0046]    If the index code is designated as 0x02, the firmware driving unit drives the function  2  by inactivating the function  1  and activating the function  2 . 
         [0047]    On the other hand, in a case that the index code is not designated as 0x01 or 0x02 during the initialization process, since there is no corresponding model, the printer is driven as a basic model of the model A and the model B. That is, if the model A is the basic model, the function  1  is activated and the function  2  is inactivated. 
         [0048]    In accordance with the invention, in developing firmware for various models that are derived from a basic printer and have similar functions, it is possible to perform integrated support in the firmware only by designating a model index without having to individually develop and manage the firmware for respective models. Therefore, it is possible to save time and cost in firmware development, and the development of a new printer model also becomes easier. 
         [0049]    Although a few embodiments of the present invention have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.