Patent ID: 12211421

DESCRIPTION OF EMBODIMENTS

FIG.1shows a kitchen device100having a display assembly201according to a preferred embodiment of the invention.

FIGS.2A and2Bcollectively form a schematic block diagram of the display assembly201including embedded components. As seen inFIG.2A, the display assembly201comprises a processor202, preferably an embedded controller202. Accordingly, the display assembly201may be referred to as an “embedded device.” In the present example, the controller202has a processing unit (or processor)205which is bi-directionally coupled to an internal storage module209, as seen inFIG.2B. The storage module209may be formed from non-volatile semiconductor read only memory (ROM)260and semiconductor random access memory (RAM)270, as seen inFIG.2B. The RAM270may be volatile, non-volatile or a combination of volatile and non-volatile memory.

The display assembly201includes a display controller207, which is connected to a video display214, such as a liquid crystal display (LCD) panel or the like. The display controller207is configured for operating the video display214in accordance with a display instruction set received from the embedded controller202, to which the display controller207is connected.

The display assembly201also includes user input devices213which are typically formed by keys, a keypad or like controls. In some implementations, the user input devices213may include a touch sensitive panel physically associated with the display214to collectively form a touch-screen. Such a touch-screen may thus operate as one form of graphical user interface (GUI) as opposed to a prompt or menu driven GUI typically used with keypad-display combinations. Other forms of user input devices may also be used, such as a microphone (not illustrated) for voice commands or a joystick/thumb wheel (not illustrated) for ease of navigation about menus. As seen inFIG.1, the preferred embodiment of the invention includes a plurality of buttons102,104,106,108,110,112, as well as two rotary selectors114,116.

As seen inFIG.2A, the display assembly201may also comprise a portable memory interface206, which is coupled to the processor205via a connection219. The portable memory interface206allows a complementary portable memory device225to be coupled to the display assembly201to act as a source or destination of data or to supplement the internal storage module209. Examples of such interfaces permit coupling with portable memory devices such as Universal Serial Bus (USB) memory devices, Secure Digital (SD) cards, Personal Computer Memory Card International Association (PCMIA) cards, optical disks and magnetic disks.

The display assembly201also has a communications interface208to permit coupling of the display assembly201to a computer or communications network220via a connection221. The connection221may be wired or wireless. For example, the connection221may be radio frequency or optical. An example of a wired connection includes Ethernet. Further, an example of wireless connection includes Bluetooth™ type local interconnection, Wi-Fi (including protocols based on the standards of the IEEE 802.11 family), Infrared Data Association (IrDa) and the like.

Various systems and/or methods described hereinafter may be implemented using the embedded controller202as one or more software application programs233including executable instructions, executable within the embedded controller202. The display assembly201ofFIG.2Aimplements the described systems and/or methods. In particular, with reference toFIG.2B, the steps of the described methods are effected by executable instructions in the software application programs223that are carried out within the controller202. The executable instructions may be formed as one or more code modules, each for performing one or more particular tasks. The executable instructions may also be divided into two separate parts, in which a first part and the corresponding code modules performs the described methods and a second part and the corresponding code modules manage a user interface between the first part and the user.

The software application programs223of the embedded controller202are typically stored in the non-volatile ROM260of the internal storage module209. The software application programs223stored in the ROM260can be updated when required from a computer readable medium. The software application programs223can be loaded into and executed by the processor205. In some instances, the processor205may execute executable instructions that are located in RAM270. Executable instructions may be loaded into the RAM270by the processor205initiating a copy of one or more code modules from ROM260into RAM270. Alternatively, the executable instructions of one or more code modules may be pre-installed in a non-volatile region of RAM270by a manufacturer. After one or more code modules have been located in RAM270, the processor205may execute executable instructions of the one or more code modules.

The software application programs223are typically pre-installed and stored in the ROM260by a manufacturer, prior to distribution of the display assembly201. However, in some instances, the software application programs223may be supplied to the user encoded on one or more portable memory devices (not shown) and read via the portable memory interface206ofFIG.2Aprior to storage in the internal storage module209or in the portable memory225. In another alternative, the software application programs223may be read by the processor205from the network220, or loaded into the controller202or the portable storage medium225from other computer readable media. Computer readable storage media refers to any non-transitory tangible storage medium that participates in providing instructions and/or data to the controller202for execution and/or processing. Examples of such storage media include floppy disks, magnetic tape, CD-ROM, a hard disk drive, a ROM or integrated circuit, USB memory, a magneto-optical disk, flash memory, or a computer readable card such as a PCMCIA card and the like, whether or not such devices are internal or external of the display assembly201. Examples of transitory or non-tangible computer readable transmission media that may also participate in the provision of software, application programs, instructions and/or data to the device201include radio or infra-red transmission channels as well as a network connection to another computer or networked device, and the Internet or Intranets including e-mail transmissions and information recorded on Websites and the like. A computer readable medium having such software or computer program recorded on it is a computer program product.

The second part of the software application programs223and the corresponding code modules mentioned above may be executed to implement one or more graphical user interfaces (GUIs) to be output on the display214ofFIG.2A. Through manipulation of the user input devices213(e.g., the keypad), a user of the device201and the software application programs223may manipulate the interface in a functionally adaptable manner to provide controlling commands and/or input to the applications associated with the GUI(s). Other forms of functionally adaptable user interfaces may also be implemented, such as an audio interface utilizing speech prompts output via loudspeakers (not illustrated) and user voice commands input via the microphone (not illustrated).

FIG.2Billustrates in detail the embedded controller202having the processor205for executing the client application10and the internal storage209. The internal storage209comprises read only memory (ROM)260and random access memory (RAM)270. The processor205is able to execute the software application programs223stored in one or both of the connected memories260and270. When the electronic device201is initially powered up, a system program resident in the ROM260is executed. The application program233that is permanently stored in the ROM260is sometimes referred to as “firmware”. Execution of the firmware by the processor205may fulfil various functions, including processor management, memory management, device management, and storage management.

The processor205typically includes a number of functional modules including a control unit (CU)251, an arithmetic logic unit (ALU)252, a digital signal processor (DSP)253and a local or internal memory comprising a set of registers254which typically contain atomic data elements256,257, along with internal buffer or cache memory255. One or more internal buses259interconnect these functional modules. The processor205typically also has one or more interfaces258for communicating with external devices via system bus281, using a connection261.

The software application programs223include a sequence of instructions262through263that may include conditional branch and loop instructions. The application program233may also include data, which is used in execution of the software application programs223. This data may be stored as part of the instruction or in a separate location264within the ROM260or RAM270.

In general, the processor205is given a set of instructions, which are executed therein. This set of instructions may be organised into blocks, which perform specific tasks or handle specific events that occur in the display assembly201. Typically, the software application programs223waits for events and subsequently executes the block of code associated with that event. Events may be triggered in response to input from a user, via the user input devices213ofFIG.2A, as detected by the processor205. Events may also be triggered in response to other sensors and interfaces in the display assembly201.

The execution of a set of the executable instructions may require numeric variables to be read and modified. Such numeric variables are stored in the RAM270. The disclosed method uses input variables271that are stored in known locations272,273in the memory270. The input variables271are processed to produce output variables277that are stored in known locations278,279in the memory270. Intermediate variables274may be stored in additional memory locations in locations275,276of the memory270. Alternatively, some intermediate variables may only exist in the registers254of the processor205.

The execution of a sequence of instructions is achieved in the processor205by repeated application of a fetch-execute cycle. The control unit251of the processor205maintains a register called the program counter, which contains the address in ROM260or RAM270of the next instruction to be executed. At the start of the fetch execute cycle, the contents of the memory address indexed by the program counter is loaded into the control unit251. The instruction thus loaded controls the subsequent operation of the processor205, causing for example, data to be loaded from ROM memory260into processor registers254, the contents of a register to be arithmetically combined with the contents of another register, the contents of a register to be written to the location stored in another register and so on. At the end of the fetch execute cycle the program counter is updated to point to the next instruction in the system program code. Depending on the instruction just executed this may involve incrementing the address contained in the program counter or loading the program counter with a new address in order to achieve a branch operation.

Each step or sub-process in the processes of the methods described below is associated with one or more segments of the software application programs223, and is performed by repeated execution of a fetch-execute cycle in the processor205or similar programmatic operation of other independent processor blocks in the display assembly201.

In the preferred embodiment shown inFIG.3, the display214is a liquid crystal display (LCD) panel214having a plurality of liquid crystal elements300forming a dot matrix302. The LCD panel214further has at least one liquid crystal pictographic element304. In the preferred embodiment shown inFIG.3, the LCD panel214has a plurality of pictographic elements304representative of a state, or desired state, of the kitchen device100. A selector element306is located above each pictographic element304, alternatively, a single selector element306is used in the LCD panel214and is moved between a plurality of positions, each pictographic element304having a position located above it. The selector element306has a triangular shape, with one point of the triangle pointing towards the respective pictographic element304with which the selector element306is associated. The selector elements306are operatively connected to the user input devices213such that the activation of a selector element306is controlled using the user input devices213. The LCD panel214also has a number of seven-segment arrays308adapted to present the digits 0 to 9.

The ROM260contains a plurality of predetermined display instruction sets310that result in an output on the display214, examples of which are shown inFIGS.4A to4D. Each predetermined instruction set310, as shown in each ofFIGS.4A to4D, corresponds to a set of “on” and “off” instructions for each liquid crystal element300of the dot matrix302to produce an output on the display214. The processor202is adapted to execute the software application program223to determine a required output of the dot matrix, for example depending on the selector element306that is presently activated due to use of the user input devices213. Alternatively, or in addition, the required output may be determined on an operational state of the kitchen device100.

As can be seen inFIGS.4A to4D, each of the outputs produced on the display214from the predetermined instruction sets310is in a different language. Each pictographic element304is associatable with a plurality of predetermined instruction sets310, for example using a VLOOKUP table. In one embodiment, the pictographic element304showing a pizza slice may be associatable with predetermined instruction sets310that produce an output on the display214in the shape of the word “Pizza” in a variety of different languages.

The display assembly201may further include a second plurality of liquid crystal elements (not shown) forming a second dot matrix (not shown). The second dot matrix may be located immediately below the dot matrix302. The processor202is adapted to execute the software application program223to determine a second required output of the second dot matrix. The determination by the processor202may be dependent, for example, on the required output of the dot matrix302.

Use of the of the display assembly201will now be discussed.

To set up the kitchen device100for use, an initialisation process must be carried out. The processor202is adapted to execute executable instructions contained in the software application program223to receive information relating to a geographic location and/or a language preference. The processor202is adapted to receive the information by accessing the communication interface208to receive geographic location information from a personal computing device (not shown), such as a mobile device (not shown). The processor202is also adapted to receive the information by selection of a language preference using the user input devices213.

Following receipt of the information relating to a geographic location and/or a language preference, the processor202is adapted to execute executable instructions contained in the software application program223to associate one or more pictographic element304with a respective output of the dot matrix302on the basis of the information relative to a geographic location and/or a language preference. The processor202is also adapted to associate one or more required outputs of the dot matrix302with a second corresponding output of the second dot matrix. In an exemplary embodiment, the language preference may be “English”.

The display assembly201is now initialised such that once the required output of the dot matrix302has been determined, the predetermined instruction set310associated with the required output may be retrieved by the processor202in whole from the ROM270to simultaneously operate all liquid crystal elements300of the dot matrix302according to the predetermined instruction set310and produced the required output on the display214.

For example, as shown inFIG.5, a user may operate the user input device214to illuminate the selector element306above the pictographic element304showing the visual representation of a pizza slice to select the pictographic element304. The pictographic element304“pizza slice” was associated during initialisation with the corresponding output forming the shape of the word “Pizza” on the dot matrix302. As a result, the processor202determines that the required output on the display214is the shape of the word “Pizza”. The processor202then retrieves the predetermined instruction set310that corresponds to the required output from the ROM370and operates the dot matrix302using the predetermined instruction set310.

Further, the processor202is adapted to determine the second required output on the basis of the required output of the dot matrix302, as the required output of the dot matrix302was associated with a second corresponding output in the initialisation process. The processor202is adapted to retrieve the predetermined instruction set310from the ROM270that corresponds to the second required output and operate the liquid crystal elements of the second dot matrix using the predetermined display instruction set.

Yet further, the processor202is adapted to operate one or more pictographic elements304after another pictographic element304has been selected. For example, a selection of the pictographic element304corresponding to “toast” may result in the display214activating the one or more pictographic elements304corresponding to a visual indication of a “shade degree” of a toast. The operation of the one or more pictographic elements304corresponding to the visual indication of the “shade degree” of the toast may be controlled by the user input devices213, such as the rotary selector114,116. In another example, a selection of the pictographic element304corresponding to “oven” may result in the display214activating the pictographic element304corresponding to “trivet”, as seen inFIG.6. Further, the selection of the pictographic element304may also result in a second required output corresponding to “Use trivet” being retrieved by the processor202for operation of the second dot matrix. In yet another embodiment, the processor202is adapted to operate one or more pictographic elements304after another pictographic element304has been selected and the kitchen device100has been operated in a heat-generating operation. For example, a selection of the pictographic element304corresponding to “oven”, and operation of the kitchen device100in “oven” operation may result in the display214activating the pictographic element304corresponding to “oven mitt”, as seen inFIG.7.

In another embodiment of the display assembly201, the required output may be a function of time. For example, upon selection of a pictographic element304the required output may be the shape of the word “Frozen” for two second. After two seconds have elapsed, the required output may be the shape of the word “Heating”. The display assembly201function substantially similarly, as the processor202determines the required output (which may change), retrieves the predetermined display instruction set310corresponding to the required output, and operates the dot matrix302using the predetermined instruction set310.

In another embodiment of the display assembly201, the processor202is adapted to execute executable instructions contained in the software application program223to associate one or more pictographic elements304with a respective output of the dot matrix302on the basis of updated information relative to a geographic location and/or a language preference. The processor202is adapted to receive the updated information by accessing the communication interface208to receive geographic location information from the personal computing device.

Advantages of the display assembly201will now be discussed.

Because the display assembly201is operate using predetermined display instructions, the precise output of the dot matrix302can be predetermined. This enables the precise kerning and graphic design of the output of the dot matrix302, which can be challenging when manufacturing a product for use in a large plurality of languages. The simple association of required output with a predetermined instruction set310also reduces the amount of processing required to produce the required output, as only a single retrieval of the instruction set from the ROM270is necessary.

Due to the use of a dot matrix302in the display assembly201, it is possible to manufacture a single display assembly201for a plurality of localisation markets. It is also possible to re-localise the kitchen device100, that is, to switch the language in which the kitchen device100operates. This is desirable for, for example, the hospitality industry which may wish to adapt the language of the device for each guest being served.