Abstract:
A portable storage device and a method of controlling a user interface (UI) using the same. The method includes obtaining first UI information using a UI when the portable storage device is connected to a host, transmitting the obtained first UI information to an application of the host, and displaying second UI information provided by the application of the host using the UI.

Description:
CROSS-REFERENCE TO RELATED PATENT APPLICATION 
       [0001]    This application claims priority from Korean Patent Application No. 10-2009-0002382, filed on Jan. 12, 2009, in the Korean Intellectual Property Office, the disclosure of which is incorporated herein in its entirety by reference. 
       BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    Apparatuses and methods consistent with the present invention relate to a portable storage device, and more particularly, to a portable storage device having a simple, external user interface (UI) capable of receiving/transmitting data from/to a host and a method of controlling the UI. 
         [0004]    2. Description of the Related Art 
         [0005]    In general, portable storage devices may store various digital data, such as still picture data, moving picture data, and speech data using a NAND-type flash memory. Also, the portable storage devices are being applied to content reproduction devices, such as MP3 players and portable multimedia players (PMPs). 
         [0006]    When a portable storage device is connected to a host, such as a personal computer (PC) or television (TV), a user may input a command using an input device of the host. 
         [0007]    Accordingly, the connection of the portable storage device to the host may inconvenience the user by requiring the user to directly input operational commands using a mouse or keyboard of the host. 
       SUMMARY OF THE INVENTION 
       [0008]    Exemplary embodiments of the present invention overcome the above disadvantages and other disadvantages not described above. Also, the present invention is not required to overcome the disadvantages described above, and an exemplary embodiment of the present invention may not overcome any of the problems described above. 
         [0009]    The present invention provides a portable storage device having a simple, external user interface (UI), which is frequently used in applications and capable of receiving/transmitting UI information from/to a host, and a method of controlling the UI. 
         [0010]    According to an aspect of the present invention, there is provided a method of controlling a UI using a storage device. The method includes: obtaining UI information using a predetermined UI when the storage device is connected to a host; transmitting the obtained UI information to an application of the host; and displaying UI information provided by the application of the connected host using the predetermined UI. 
         [0011]    According to another aspect of the present invention, there is provided a method of controlling a UI using a storage device. The method includes: obtaining UI information using a predetermined type of UI; changing an operational mode based on the obtained UI information and transmitting the changed operational mode to a host; and displaying the changed operational mode on the predetermined type of UI. 
         [0012]    According to another aspect of the present invention, there is provided a storage device including: a UI input unit configured to input user selection information through a UI; a UI output unit configured to display UI information provided from an application of a host through the UI; and a UI control unit configured to encode the user selection information input by UI input unit, decode the UI information provided by the application of the host, and output the encoded and decoded UI information to the UI output unit. 
         [0013]    According to another aspect of the present invention, there is provided a host including: an application unit configured to execute an application by selection of a portable storage device; and a UI processing unit configured to drive a UI based on UI information input by the portable storage device and output UI information provided by the application unit. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]    The above and other aspects of the present invention will become more apparent by describing in detail exemplary embodiments thereof with reference to the attached drawings in which: 
           [0015]      FIGS. 1A and 1B  are exterior views of portable storage devices having a user interface (UI), according to an exemplary embodiment of the present invention; 
           [0016]      FIG. 2  is a block diagram of a system in which a portable storage device and a host receive/transmit UI information from/to each other, according to an exemplary embodiment of the present invention; 
           [0017]      FIG. 3A  is a block diagram of the portable storage device shown in  FIG. 2 , according to an exemplary embodiment of the present invention; 
           [0018]      FIG. 3B  is a block diagram of the portable storage device shown in  FIG. 2 , according to another exemplary embodiment of the present invention; 
           [0019]      FIG. 4  is a block diagram of the host shown in  FIG. 2 , according to an exemplary embodiment of the present invention; 
           [0020]      FIG. 5  is a flowchart of a connection setting method for communicating UI information between the host and the portable storage device, according to an exemplary embodiment of the present invention; 
           [0021]      FIG. 6  is a flowchart of a method of controlling a UI, according to an exemplary embodiment of the present invention; 
           [0022]      FIG. 7  is a flowchart of a method of controlling a UI, according to another exemplary embodiment of the present invention; and 
           [0023]      FIG. 8  is a flowchart of a method of controlling a UI, according to another exemplary embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0024]    Reference will now be made in detail to exemplary embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to like elements throughout. The exemplary embodiments are described below so as to explain the present invention by referring to the figures. Redundant description to different embodiments may be omitted as necessary. 
         [0025]      FIGS. 1A and 1B  are exterior views of portable storage devices having a user interface (UI), according to an exemplary embodiment of the present invention. 
         [0026]    The portable storage device may include a simple UI required to download contents from a host or confirm a password. 
         [0027]    Referring to  FIGS. 1A and 1B , an additional toggle switch or selection switch for inputting information may be installed outside the portable storage devices. 
         [0028]    For example, as shown in  FIG. 1A , the portable storage device for automatically storing contents may include a contents collection period selection switch  110 , a contents automatic storage on/off switch  120 , and a contents type toggle switch  130 . Also, as shown in  FIG. 1B , the portable storage device may include password input switches  150  for inputting a password. 
         [0029]    As shown in  FIGS. 1A and 1B , a plurality of light emitting diodes (LEDs) of different colors may be installed outside the portable storage devices in order to display the present operational state of the portable storage devices. 
         [0030]    For example, as shown in  FIG. 1A , the portable storage device may include an LED  140  capable of indicating an operation and completion of an operation or an LED  160  capable of indicating whether or not the portable storage device is usable. 
         [0031]      FIG. 2  is a block diagram of a system in which a portable storage device  210  and a host  220  receive/transmit UI information from/to each other, according to an exemplary embodiment of the present invention. 
         [0032]    The system may include the portable storage device  210  and the host  220 . 
         [0033]    The portable storage device  210  and the host  220  may receive/transmit data by sharing the same interface (e.g., universal serial bus (USB)) or using different interfaces. 
         [0034]    User interface information and user data may be communicated between the portable storage device  210  and the host  220  through different channels. 
         [0035]    The host  220  may be a personal computer (PC) or a television (TV) using an interface standard, such as a USB. 
         [0036]    When the portable storage device  210  is connected to the host  220 , the portable storage device  210  may transmit UI information through a simple UI to an application of the host  220  and output UI information of the application, which is received from the host  220 , to the simple UI. 
         [0037]    When the portable storage device  210  is connected to the host  220 , the host  220  may automatically execute the corresponding application of the host  220 , transmit the UI information, which is received through the UI of the portable storage device  210 , to the application of the host  220 , and transmit the UI information, which is received from the executed application of the host  220 , to the portable storage device  210 . 
         [0038]      FIG. 3A  is a block diagram of the portable storage device  210  of  FIG. 2 , according to an exemplary embodiment of the present invention. 
         [0039]    The portable storage device  210  may include a UI input unit  310 , a UI output unit  320 , a UI control unit  330 , a memory  340 , a memory control unit  350 , and a slave interface processing unit  360 . 
         [0040]    The UI input unit  310  may input UI information through a simple UI comprised of toggle switches or selection switches. 
         [0041]    The UI output unit  320  may display UI information, which is provided from an application of the host  220 , using a UI comprised of a plurality of LEDs of different colors. For example, the UI output unit  320  may display the present operational state of the application of the host  220  using an LED. 
         [0042]    The UI control unit  330  may encode the UI information, which is input by the UI input unit  310 , decode the UI information of the host  220 , which is received through the slave interface processing unit  360 , and output the decoded UI information to the UI output unit  320 . 
         [0043]    The memory  340  may store various contents corresponding to user data via the control of the memory control unit  350 . In this case, the user data may be stored as a type of packet that is compressed into a predetermined compressed format. 
         [0044]    The memory control unit  350  may store the user data, which is received through the slave interface processing unit  360 , in the memory  340 . 
         [0045]    The slave interface processing unit  360  may establish a data transmission protocol for communicating the UI information and the user data between the portable storage device  210  and the host  220 . 
         [0046]      FIG. 3B  is a block diagram of the portable storage device  210  of  FIG. 2 , according to another exemplary embodiment of the present invention. 
         [0047]    Referring to  FIG. 3B , the portable storage device  210  may further include a firmware unit  370 , compared with the portable storage device  210  shown in  FIG. 3A . 
         [0048]    The firmware unit  370  may change an operational mode (e.g., storage mode or signal reproduction mode) of the portable storage device  210  based on the UI information input by the UI input unit  310  or recognize password information input by the UI input unit  310  and generate UI information containing the present operational mode state or operation/stoppage state of the portable storage device  210  based on the changed operational mode or the recognized password information. 
         [0049]      FIG. 4  is a block diagram of the host  220  of  FIG. 2 , according to an exemplary embodiment of the present invention. 
         [0050]    Referring to  FIG. 4 , the host  220  may include a host interface processing unit  410 , a UI processing unit  420 , a storage device driver unit  430 , and an application unit  440 . 
         [0051]    The host interface processing unit  410  may establish a data transmission protocol for communicating UI information and user data between the portable storage device  210  and the host  220 . 
         [0052]    The UI processing unit  420  may drive the UI based on UI information input by the host interface processing unit  410  and UI information transmitted from the application unit  440 . 
         [0053]    The storage device driver unit  430  may drive the portable storage device  210 . 
         [0054]    The application unit  440  may store a plurality of application programs. When the portable storage device  210  is connected to the host  220 , an application selected by a user may be automatically or manually executed. 
         [0055]      FIG. 5  is a flowchart of a connection setting method for communicating UI information between the host  220  and the portable storage device  210 , according to an exemplary embodiment of the present invention. 
         [0056]    Referring to  FIG. 5 , the portable storage device  210  may detect whether the portable storage device  210  is connected to the host  220 , in operation  510 . 
         [0057]    In operation  515 , if the portable storage device  210  is connected to the host  220 , the portable storage device  210  may transmit device information to the host  220 . 
         [0058]    In operation  520 , the host  220  may perform a device recognition process based on the device information received from the portable storage device  210 . 
         [0059]    In operation  525 , the host  220  may automatically or manually execute an application set by the portable storage device  210 . 
         [0060]    In operation  530 , the host  220  may load the UI processing unit  420  and the storage device driver unit  430  to drive the UI. 
         [0061]      FIG. 6  is a flowchart of a method of controlling a UI, according to an exemplary embodiment of the present invention. 
         [0062]    When the portable storage device  210  is connected to the host  220 , the host  220  may request the portable storage device  210  to input the UI information, in operation  605 . 
         [0063]    In operation  610 , the portable storage device  210  may recognize the request for the input of the UI information. 
         [0064]    In operation  615 , the portable storage device  210  may obtain the UI information through the UI. 
         [0065]    That is, the portable storage device  210  may obtain the UI information from at least one external data input apparatus. 
         [0066]    For example, as shown in  FIG. 1A , the contents automatic storage on/off switch  120  may be switched on, the contents type toggle switch  130  may be set as “news” and “UCC”, and the contents collection period selection switch  110  may be set as “1 week”. 
         [0067]    In operation  620 , the portable storage device  210  may change the obtained UI information into a predetermined interface format and transmit the interface format to the host  220 . 
         [0068]    Thereafter, the host  220  may transmit the UI information to the executed application of the host  220 , in operation  625 . In this case, the application of the host  220  may carry out an operation based on the UI information received from the portable storage device  210 . 
         [0069]    For example, the application of the host  220  may automatically update contents according to a contents collection period and contents type, which are set by the UI of the portable storage device  210 . 
         [0070]    Meanwhile, the host  220  may request the portable storage device  210  to output the UI information provided by the application of the host  220 , in operation  630 . 
         [0071]    In operation  635 , the portable storage device  210  may recognize the request for the output of the UI information. 
         [0072]    In operation  640 , the portable storage device  210  may request the UI information of the executed application from the host  220 . 
         [0073]    In operation  645 , the host  220  may transmit the contents and UI information from the application to the portable storage device  210 . For example, the host  220  may transmit UI information indicating the execution and completion of a contents automatic collection operation to the portable storage device  210 . 
         [0074]    In operation  650 , the portable storage device  210  may display the UI information, which is provided from the application of the host  220 , using the UI. That is, the portable storage device  210  may display the operational status, which is provided from the application of the host  220 , using a simple UI. 
         [0075]    For instance, as shown in  FIG. 1A , the portable storage device  210  may drive the LED  140  capable of displaying and completing the operation based on the UI information indicating the execution and completion of the contents automatic collection operation received from the host  220 . 
         [0076]    Thereafter, in operation  655 , the portable storage device  210  may transmit to the host  220  a message that the UI output unit  320  is displaying the UI information. 
         [0077]    In operation  660 , the host  220  may transmit the UI information of the portable storage device  210  to the executed application. 
         [0078]    As a result, a simple UI, which is frequently usable in the application, may be received in the portable storage device  210  so that a user may simply input a desired operation to the portable storage device  210  without inputting information to the host  220  using a mouse or keyboard. 
         [0079]      FIG. 7  is a flowchart of a method of controlling a user interface, according to another exemplary embodiment of the present invention. 
         [0080]    Initially, it may be detected whether the portable storage device  210  is connected to the host  220 , in operation  710 . 
         [0081]    If the portable storage device  210  is connected to the host  220 , the portable storage device  210  may recognize a password input using a UI, in operation  720 . 
         [0082]    In operation  730 , it may be detected whether the password input by a user matches with an already registered password. 
         [0083]    In operation  740 , if the password input by the user matches with the already registered password, a normal state may be displayed using the UI. In this case, the host  220  and the portable storage device  210  may receive/transmit interface information from/to each other. 
         [0084]    However, in operation  750 , if the password input by the user does not match with the already registered password, an abnormal state may be displayed using the UI. 
         [0085]      FIG. 8  is a flowchart of a method of controlling a user interface, according to another exemplary embodiment of the present invention. 
         [0086]    Initially, it may be detected whether the portable storage device  210  is connected to the host  220 , in operation  810 . 
         [0087]    In this case, if the portable storage device  210  is connected to the host  220 , the portable storage device  210  may recognize operational mode selection information using the UI, in operation  820 . 
         [0088]    In operation  830 , it may be determined if the operational mode selection information is a portable storage mode or an audio-visual (AV) reproduction mode. 
         [0089]    Thereafter, an operation type may be changed based on the operational mode selection information in operation  840 . At this point, information regarding the changed operation type is transmitted to the host  220 . 
         [0090]    Specifically, if the operational mode selection information is in the portable storage mode, an LED capable of displaying the portable storage mode may be driven in operation  850 . In this case, the host  220  may recognize the connected portable storage device  210  as a storage device. Otherwise, if the operational mode selection information is in the AV reproduction mode, an LED capable of displaying the AV reproduction mode may be driven in operation  840 . In this case, the host  220  may recognize the connected portable storage device as an AV player. The AV player refers to an virtual application that decodes AV contents stored in the portable storage device  210  into raw data. 
         [0091]    Subsequently, the host  220  may drive a driver according to the operation type and execute the application. 
         [0092]    The present invention can also be embodied as computer readable code on a computer readable recording medium. The computer readable recording medium is any data storage device that can store data which can be thereafter read by a computer system. Examples of the computer readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, hard disks, floppy disks, flash memory, and optical data storage devices. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. 
         [0093]    While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims.