Abstract:
Switching circuitry comprising a bank of actuatable switches connected in parallel between a supply terminal and a decoding terminal, each switch being connected in series with a component which, when the switch is actuated, applies to the second terminal an analog signal having a value unique to that switch.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    The present application is related to European Patent Application No. 07251681.8, filed Apr. 23, 2007, entitled “SWITCHING CIRCUITRY AND SWITCHING SYSTEM”. European Patent Application No. 07251681.8 is assigned to the assignee of the present application and is hereby incorporated by reference into the present disclosure as if fully set forth herein. The present application hereby claims priority under 35 U.S.C. §119(a) to European Patent Application No. 07251681.8. 
       TECHNICAL FIELD 
       [0002]    The present invention relates to switching circuitry and a switching system. 
       BACKGROUND 
       [0003]    The present invention relates to a system where there is a requirement to identify from a bank of switches which switch or combination of switches has been actuated. One example is decoding front panel key switches of a set top box. Set top boxes include a front panel which has a number of different switches which can be separately actuated by a user. Currently, each switch has an input to a microprocessor for determining which switch has been actuated. The value at that input changes between zero and one depending on whether the switch is actuated or not. This requires a plurality of input signals into a microprocessor, with their corresponding package balls/pins. 
       SUMMARY 
       [0004]    It is an aim of the present invention to reduce the number of input/output signals and corresponding package requirements for decoding which of a plurality of switches have been actuated. 
         [0005]    According to one aspect of the present invention there is provided switching circuitry comprising a bank of actuatable switches connected in parallel between a supply terminal and a decoding terminal, each switch being connected in series with a component which, when the switch is actuated, applies to the decoding terminal an analog signal having a value unique to that switch. 
         [0006]    In the described embodiment, the component is a resistor and the analog signal is a voltage. 
         [0007]    Another aspect of the invention provides a switching system comprising: switching circuitry as defined above; means for monitoring the value of the analog signal at the decoding terminal; and means for decoding the value to indicate a combination of actuated switches wherein each combination of actuated switches applies a unique value to the decoding terminal. 
         [0008]    It will be appreciated that the word “combination” though commonly used to denote more than one switch herein includes the case where a single switch is actuated and identified by a unique value. 
         [0009]    Other technical features may be readily apparent to one skilled in the art from the following figures, descriptions and claims. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0010]    For a more complete understanding of this disclosure and its features, reference is now made to the following description, taken in conjunction with the accompanying drawings, in which: 
           [0011]      FIG. 1  is a schematic block diagram of a switching system; 
           [0012]      FIG. 2  is a schematic block diagram illustrating functions of a microprocessor in the system; 
           [0013]      FIG. 3  is a schematic block diagram of an alternative embodiment of a switching system; and 
           [0014]      FIG. 4  is a schematic block diagram of an alternative arrangement of processors within a switching system. 
       
    
    
     DETAILED DESCRIPTION 
       [0015]      FIG. 1  is a schematic diagram of a switching system in accordance with one embodiment of the present invention. A bank of switches  2  comprises a plurality of switching paths, each including a switch  4   a  . . .  4   f  and a resistor  6   a  . . .  6   f  in series therewith. The switching paths are arranged in parallel between a supply terminal  8  and a decoding terminal  10 . A further resistor  12  is connected between a decoding terminal  10  and a second supply terminal  14 . In this case, the first supply terminal has a positive voltage and the second supply terminal is ground, but it will be appreciated that any arrangement of voltages can be used. 
         [0016]    Reference numeral  16  denotes a microprocessor which in the embodiment of  FIG. 1  takes its supply from the voltage terminal  8  and has a decoding input  11  for receiving an analog voltage V in  the decoding terminal  10 . 
         [0017]    The functions implemented by the microprocessor which are applied to the voltage V in  at the decoding terminal  11  are shown schematically in  FIG. 2 . In  FIG. 2  these functions are shown as blocks, but it will be appreciated that they can be implemented in any appropriate manner. For example they could be implemented as code sequences run by the microprocessor  16  which constitutes the main microprocessor of the system. Alternatively, as discussed more fully below, they can be implemented by an FSM (Finite State Machine) or small co-processor to take the load off the main microprocessor. 
         [0018]    In any event, a monitoring function  18  receives the analog voltage V in  and determines when it changes, subject to appropriate debouncing. The monitoring function outputs a digital value representing the changed, debounced analog value. Thus an A-D conversion takes place in the monitor function. The digital value is supplied to a decoding function  20  which determines the combination of switches corresponding to the value as described below. The decoding function  20  outputs to a program being executed on the microprocessor the combination of switches which has been actuated to give rise to the voltage V in . The program is denoted  22  in  FIG. 2 , and provides a response based on the actuated combination of switches. 
         [0019]    Reverting to  FIG. 1 , each resistor has a unique value which means that a unique different voltage V in  is generated at the decoding terminal  11  depending upon which combination of switch/switches is/are simultaneously actuated. In the described embodiment the values are as follows, but it will be appreciated that any unique values which have the effect that a unique voltage is generated for each combination of switches can be used to implement the invention. 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                   
               
             
             
               
                   
                  6a 
                 250 
                 Ohms 
               
               
                   
                  6b 
                 500 
                 Ohms 
               
               
                   
                  6c 
                 870 
                 Ohms 
               
               
                   
                  6d 
                 1.5 
                 kOhms 
               
               
                   
                  6e 
                 2.7 
                 kOhms 
               
               
                   
                  6f 
                 6.5 
                 kOhms 
               
               
                   
                 12 
                 1 
                 kOhm 
               
               
                   
                   
               
             
          
         
       
     
         [0020]    In fact the resistor values selected in  FIG. 1  and  FIG. 3  and as listed above only allow a maximum of two switches to be simultaneously actuated for each decoding terminal  11 , but has the advantage of producing a linear voltage difference between each of the voltages produced on decoding terminal  11  for each individual switch that is actuated. This allows a large voltage guard-band between the switches for the decode function and can easily tolerate noise voltages on V in . If it is required to be able to decode more than two switches simultaneously actuated, then binary weighted values for the resistors should be chosen. E.g. 250 Ohms, 500 Ohms, 1000 Ohms, 2000 Ohms, 4000 Ohms, 8000 Ohms. 
         [0021]    It will readily be appreciated that the value of the voltage V in  is determined by the resistances  6   a - 6   f  in parallel, of the actuated switches in a voltage divider completed by the resistor  12 . 
         [0022]    The use of resistors of unique values in series with the switches has the effect that an increasing voltage difference is produced as each switch is actuated, so that it is possible to read an analog value at a single input (decoding input  11 ), rather than having to read binary (on/off) signals at a plurality of inputs associated respectively with the switches. 
         [0023]    In principle, any number of switches can be read in this way at a single input. In fact, from a practical perspective there may be a limit to the number of switches which can be read depending upon the voltage input range of the monitoring function  18 /decode function  20  and noise in the system. In those cases, the switches can be arranged in banks, each bank having a plurality n of switches connected to an associated decoding terminal. Such an arrangement is shown in  FIG. 2 . In  FIG. 2 , it is assumed that a first bank  2   a  of switches corresponds to those shown in  FIG. 1 , and a second bank  2   b  of switches is denoted with primed numerals corresponding to those parts in the first bank. The resistance values for the switches in the first bank  2   a  are the same as those in  FIG. 1 , whereas the resistance values for those switches in the second bank  2   b  are as follows: 
         [0000]    
       
         
               
               
               
               
             
           
               
                   
                   
               
             
             
               
                   
                  6′a 
                 250 
                 Ohms 
               
               
                   
                  6′b 
                 560 
                 Ohms 
               
               
                   
                  6′c 
                 1.1 
                 kOhms 
               
               
                   
                  6′d 
                 2.1 
                 kOhms 
               
               
                   
                  6′e 
                 5.3 
                 kOhms 
               
               
                   
                  6′f 
                 6.5 
                 kOhms 
               
               
                   
                 12′ 
                 1 
                 kOhm 
               
               
                   
                   
               
             
          
         
       
     
         [0024]    Therefore the embodiment illustrated in  FIG. 3  allows the switches to be monitored by duplicating two banks of six switches and having two decoding terminals for V in1 , V in2 . For monitoring two switches being pressed simultaneously in one bank, the code for this can be decoded by the decode function  20 , which compares the voltage measured to a look-up table of voltage ranges corresponding to different switch combinations. Alternatively, for example, with twelve switches in two banks, switches that are allowed to be actuated together can be split into different banks to make the code resolution easier. Each decoding terminal has its own associated decode function. 
         [0025]    In one embodiment, the main microprocessor can poll the decoding terminals  11  using its own software to debounce and decode the values to determine the actuated combination of switch or switches. Alternatively, as shown in  FIG. 4 , an FSM or small co-processor microprocessor  17  can be used to offload the task of monitoring the switches from the main microprocessor  16 . This is particularly useful in embedded systems, for example set top boxes, running a non-real time operating system where the overhead of polling the decoding terminals and decoding the switches so as not to miss a switch actuation would be problematic. When a separate FSM or small co-processor  17  is used, running a real time operating system (RTOS), this can continually read the decoding terminals to detect whether or not the value on the terminal has changed due to actuation of the switches and latch the value into an appropriate store  19  such as a double buffered register or FIFO. This could then generate an interrupt  21  to the main microprocessor  16  which could then decode the value and respond to the switch actuation without missing the event. 
         [0026]    It will be appreciated that the above-described embodiments of the invention could be used in many different contexts where switches are actuated. One application is the front panel of a set top box which provides a number of switches which can be pressed by a user, where different switch combinations have different interpretations for programs being executed in the set top box. 
         [0027]    It may be advantageous to set forth definitions of certain words and phrases used in this patent document. The term “couple” and its derivatives refer to any direct or indirect communication between two or more elements, whether or not those elements are in physical contact with one another. The terms “include” and “comprise,” as well as derivatives thereof, mean inclusion without limitation. The term “or” is inclusive, meaning and/or. The phrases “associated with” and “associated therewith,” as well as derivatives thereof, may mean to include, be included within, interconnect with, contain, be contained within, connect to or with, couple to or with, be communicable with, cooperate with, interleave, juxtapose, be proximate to, be bound to or with, have, have a property of, or the like. 
         [0028]    While this disclosure has described certain embodiments and generally associated methods, alterations and permutations of these embodiments and methods will be apparent to those skilled in the art. Accordingly, the above description of example embodiments does not define or constrain this disclosure. Other changes, substitutions, and alterations are also possible without departing from the spirit and scope of this disclosure, as defined by the following claims.