Abstract:
A tilt-wheel mouse circuit is provided. Without adding more I/O pins, the tilt-wheel mouse circuit provides extra scrolling-left and scrolling-right functions through an external-extend circuit and firmware of a micro-controller within the tilt-wheel mouse circuit. It follows that the cost of the manufacturing of the tilt-wheel mouse is accordingly low and the package size of the micro-controller is accordingly small.

Description:
FIELD OF THE INVENTION 
       [0001]    The present invention relates to a tilt-wheel mouse circuit, and more particularly to a tilt-wheel mouse circuit having extra scrolling-left and scrolling-right functions without adding more I/O pins of a micro-controller within the tilt-wheel mouse circuit. 
       BACKGROUND OF THE INVENTION 
       [0002]    A mouse is a must-have item on any computers. When the mouse is moved across a desktop, the mouse cursor on the display moves accordingly. The mouse cursor can be pointed anywhere on the screen, or be used to scroll a selected window. 
         [0003]    The early mouse has only three buttons. It follows that users can only vertically or horizontally scroll the selected window through pointing the mouse cursor to the vertical or horizontal scrollbar. The modern mouse has a scroll-wheel. When users rotate up or down the scroll-wheel, the selected window is scrolled up or down accordingly. However, users still need to point the mouse cursor to the horizontal scrollbar if they want to horizontally scroll the selected window. According to the sensor, the wheel-mouse can be categorized to an optical mouse and a laser mouse, and the laser mouse is much surface-independent than the optical mouse. 
         [0004]      FIG. 1A  is a diagram showing a wheel-mouse in prior art. The wheel-mouse  10  consists of: a left-button  12 , a middle-button  14 , a right-button  16 , and a scroll-wheel  18 . When users press the left-button  12 , a left-button-pressed signal is derived and outputted from the wheel-mouse  10  to a host; when users press the middle-button  14 , a middle-button-pressed signal is derived and outputted from the wheel-mouse  10  to the host; when users press the right-button  16 , a right-button-pressed signal is derived and outputted from the wheel-mouse  10  to the host. Moreover, when users rotate up the scroll-wheel  18 , a scrolling-up signal is derived and outputted from the wheel-mouse  10  to the host; when users rotate down the scroll-wheel  18 , a scrolling-down signal is derived and outputted from the wheel-mouse  10  to the host. 
         [0005]      FIG. 1B  is a schematic diagram showing the circuit configuration of the prior-art wheel-mouse depicted in  FIG. 1A . The wheel-mouse circuit consists of: a micro-controller  20  (MCU), a left-middle-right button unit  22 , and a vertical-scrolling wheel unit  24 . The micro-controller  20  (MCU) further consists of: three I/O pins, that is, a left-button signal input terminal  202 , a middle-button signal input terminal  204 , and a right-button signal input terminal  206 . The left-middle-right button unit  22  further consists of: a left-button switch (LB), a middle-button switch (MB), and a right-button switch (RB). The three I/O pins of the micro-controller  20  (MCU), that is the left-button signal input terminal  202 , the middle-button signal input terminal  204 , and the right-button signal input terminal  206 , are connected to a supply power (Vcc) through the left-button switch (LB), the middle-button switch (MB), and the right-button switch (RB), respectively. Moreover, the vertical-scrolling wheel unit  24  is connected to the micro-controller  20  (MCU). 
         [0006]    As depicted in  FIG. 1B , when users press a left-button of a wheel-mouse, the left-button switch (LB) is at close position (ON), the middle-button switch (MB) and the right-button switch (RB) are at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the left-button signal input terminal  202 , a low-level signal is outputted to the middle-button signal input terminal  204  and the right-button signal input terminal  206  of the micro-controller  20  (MCU). According to the level of the signals received by the left-button signal input terminal  202 , the middle-button signal input terminal  204 , and the right-button signal input terminal  206 , that is (1,0,0), the micro-controller  20  (MCU) outputs the left-button-pressed signal to the host. Similarly, when users press a middle-button of a wheel-mouse, the middle-button switch (MB) is at close position (ON), the left-button switch (LB) and the right-button switch (RB) are at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the middle-button signal input terminal  204 , a low-level signal is outputted to the left-button signal input terminal  202  and the right-button signal input terminal  206  of the micro-controller  20  (MCU). According to the level of the signals received by the left-button signal input terminal  202 , the middle-button signal input terminal  204 , and the right-button signal input terminal  206 , that is (0,1,0), the micro-controller  20  (MCU) outputs the middle-button-pressed signal to the host. Similarly, when users press a right-button of a wheel-mouse, the right-button switch (RB) is at close position (ON), the left-button switch (LB) and the middle-button switch (MB) are at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the right-button signal input terminal  206 , a low-level signal is outputted to the left-button signal input terminal  202  and the middle-button signal input terminal  204  of the micro-controller  20  (MCU). According to the level of the signals received by the left-button signal input terminal  202 , the middle-button signal input terminal  204 , and the right-button signal input terminal  206 , that is (0,0,1), the micro-controller  20  (MCU) outputs the right-button-pressed signal to the host. Moreover, the micro-controller  20  (MCU) can output a scrolling-up signal and a scrolling-down signal to the host according to the signals outputted from the vertical-scrolling wheel unit  24 . 
         [0007]    Conventionally, the scroll-wheel is designed for scrolling up or scrolling down a selected window. In 2003, Microsoft submitted a tilt-wheel mouse. Not only provide the scrolling-up and scrolling-down functions, the tilt-wheel mouse also provides the scrolling-left and the scrolling-right functions. That is, when the tilt-wheel is used left tilt, the selected window will be scrolled left, and when the tilt-wheel is used right tilt, the selected window will be scrolled right. 
         [0008]      FIG. 2A  is a diagram showing a tilt-wheel mouse in prior art. The tilt-wheel mouse  30  consists of: a left-button  32 , a middle-button  34 , a right-button  36 , and a tilt-wheel  38 . The tilt-wheel mouse  30  is an essentially conventional wheel-mouse except the tilt-wheel mouse  30  outputs a scrolling-left signal to the host when users left tilts the tilt-wheel  38 ; and the tilt-wheel mouse  30  outputs a scrolling-right signal to the host when users right tilts the tilt-wheel  38 . 
         [0009]      FIG. 2B  is a schematic diagram showing the circuit configuration of the prior-art tilt-wheel mouse depicted in  FIG. 2A . The tilt-wheel mouse circuit consists of: a micro-controller  40  (MCU), the left-middle-right button unit  22 , the vertical-scrolling wheel unit  24 , and a horizontal-scrolling button unit  42 . The horizontal-scrolling button unit  42  further consists of: a left-tilt-button switch (LTB) and a right-tilt-button switch (RTB), where the left-tilt-button switch (LTB) will be triggered when users left tilt the tilt-wheel, and the right-tilt-button switch (RTB) will be triggered when users right tilt the tilt-wheel. Compared to the micro controller  20  (MCU) depicted in  FIG. 2B , the micro-controller  40  (MCU) has another two I/O pins, that is a left-tilt signal input terminal  402  and a right-tilt signal input terminal  404 . The left-tilt signal input terminal  402  and the right-tilt signal input terminal  404  are connected to a supply power (Vcc) through the left-tilt-button switch (LTB) and the right-tilt-button switch (RTB), respectively. 
         [0010]    As depicted in  FIG. 2B , when users left tilt a tile-wheel of a tilt-wheel mouse, the left-tilt-button switch (LTB) is at close position (ON) and the right-tilt-button switch (RTB) is at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the left-tilt signal input terminal  402 , and a low-level signal is outputted to the right-tilt signal input terminal  404  of the micro-controller  40  (MCU). According to the level of the signals received by the left-tilt signal input terminal  402  and the right-tilt signal input terminal  404 , that is (1,0), the micro-controller  40  (MCU) outputs a scrolling-left signal to the host. Similarly, when users right tilt a tile-wheel of a tilt-wheel mouse, the right-tilt-button switch (RTB) is at close position (ON) and the left-tilt-button switch (LTB) is at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the right-tilt signal input terminal  404 , and a low-level signal is outputted to the left-tilt signal input terminal  402  of the micro-controller  40  (MCU). According to the level of the signals received by the left-tilt signal input terminal  402  and the right-tilt signal input terminal  404 , that is (0,1), the micro-controller  40  (MCU) outputs a scrolling-right signal to the host. 
         [0011]    Obviously, for providing the extra functions of scrolling-left and scrolling-right in a conventional tilt-wheel mouse, another two I/O pins, that is the left-tilt signal input terminal  402  and the right-tilt signal input terminal  404 , must be implemented in the micro-controller  40 . It results in a relatively high manufacturing cost and a relatively large package size of the micro-controller  40  (MCU). 
       SUMMARY OF THE INVENTION 
       [0012]    Therefore, without adding more I/O pins, the present invention of the tilt-wheel circuit provides extra scrolling-left and scrolling-right functions through an external-extend circuit and firmware of a micro-controller within the tilt-wheel mouse circuit. 
         [0013]    The present invention discloses a tilt-wheel mouse circuit, comprising: a micro-controller, having a first input terminal, a second input terminal, and a third input terminal, for outputting a first-button-pressed signal, a second-button-pressed signal, a third-button-pressed signal, a scrolling-left signal, and a scrolling-right signal according to the level of signals at the first input terminal, the second input terminal, and the third input terminal; a button unit, having a first-button switch, a second-button switch, and a third-button switch connected to the first input terminal, the second input terminal, the third input terminal respectively, for outputting a first-level signal or a second-level signal to the first input terminal, the second input terminal, the third input terminal, respectively; a horizontal-scrolling button unit, having a first horizontal-scrolling switch and a second horizontal-scrolling switch, for outputting the first-level signal or the second-level signal; and, an external-extend circuit, connected to the micro-controller and the horizontal-scrolling button unit, wherein the external-extend circuit can transmit the first-level signal or the second-level signal, derived from the first horizontal-scrolling switch, to the first input terminal and the second input terminal within an effective-duration; and the external-extend can transmit the first-level signal or the second-level signal, derived from the second horizontal-scrolling switch, to the second input terminal and the third input terminal within the effective-duration; wherein, the micro-controller is capable of outputting the scrolling-left signal when the first-level signal is asserted at the first input terminal and the second input terminal, and the second-level signal is asserted at the third input terminal, where a time difference, between the two time points of the first-level signal asserted at the first input terminal and the second input terminal, is less than the effective-duration; the micro-controller is capable of outputting the scrolling-right signal when the second-level signal is asserted at the first input terminal, and the first-level signal is asserted at the second input terminal and the third input terminal, where a time difference, between the two time points of the first-level signal asserted at the second input terminal and the third input terminal, is less than the effective-duration. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0014]    The above objects and advantages of the present invention will become more readily apparent to those ordinarily skilled in the art after reviewing the following detailed description and accompanying drawings, in which: 
           [0015]      FIG. 1A  is a diagram showing a wheel-mouse in prior art; 
           [0016]      FIG. 1B  is a schematic diagram showing the circuit configuration of the prior-art wheel-mouse depicted in  FIG. 1A ; 
           [0017]      FIG. 2A  is a diagram showing a tilt-wheel mouse in prior art; 
           [0018]      FIG. 2B  is a schematic diagram showing the circuit configuration of the prior-art tilt-wheel mouse depicted in  FIG. 2A ; and 
           [0019]      FIG. 3  is a schematic diagram showing the circuit configuration of a tilt-wheel mouse of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS 
       [0020]    The present invention is a tilt-wheel mouse circuit. Without adding more I/O pins, the present invention of the tilt-wheel circuit provides extra scrolling-left and scrolling-right functions through an external-extend circuit and firmware of a micro-controller within the tilt-wheel mouse circuit. 
         [0021]      FIG. 3  is a schematic diagram showing the circuit configuration of a tilt-wheel mouse of the present invention. The tilt-wheel mouse consists of: a micro-controller  50  (MCU), the left-middle-right button unit  22 , the vertical-scrolling wheel unit  24 , the horizontal-scrolling button unit  42 , and an external-extend circuit  52 . The micro-controller  50  further consists of three I/O pins, that is a left-button signal input terminal  502 , a middle-button signal input terminal  504 , and a right-button signal input terminal  506 . The left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506  are connected to a supply power (Vcc) through the left-button switch (LB), the middle-button switch (MB), and the right-button switch (RB), respectively. The external-extend circuit  52  further consists of: four diodes D 1 , D 2 , D 3 , and D 4 . The P terminals of the diodes D 1  and D 2  are together connected to the supply power (Vcc) through the left-tilt-button switch (LTB) in the horizontal-scrolling button unit  42 ; the N terminals of the diodes D 1  and D 2  are connected to the left-button signal input terminal  502  and the middle-button signal input terminal  504 , respectively; the P terminals of the diodes D 3  and D 4  are together connected to the supply power (Vcc) through the right-tilt-button switch (RTB) in the horizontal-scrolling button unit  42 ; the N terminals of the diodes D 3  and D 4  are connected to the middle-button signal input terminal  504  and the right-button signal input terminal  506 , respectively. 
         [0022]    As depicted in  FIG. 3 , when a tile-wheel of a tilt-wheel mouse is tilted left by the user, the left-tilt-button switch (LTB) is at close position (ON) and the right-tilt-button switch (RTB) is at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the left-button signal input terminal  502  and the middle-button signal input terminal  504  through the diodes D 1  and D 2 , respectively, and a low-level signal is outputted to the right-button signal input terminal  506  through the diode D 4 . According to the level of the signals received by the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 , that is (1,1,0), the micro-controller  50  (MCU) outputs the scrolling-left signal to the host. Similarly, when the tile-wheel of a tilt-wheel mouse is tilted right by the user, the right-tilt-button switch (RTB) is at close position (ON) and the left-tilt-button switch (LTB) is at open position (OFF). It follows that a high-level signal, derived from the supply power (Vcc), is outputted to the middle-button signal input terminal  504  and the right-button signal input terminal  506  through the diodes D 3  and D 4 , respectively, and a low-level signal is outputted to the left-button signal input terminal  502  through the diode D 1 . According to the level of the signals received by the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 , that is (0,1,1), the micro-controller  50  (MCU) outputs the scrolling-right signal to the host. 
         [0023]    However, both the situations, when the right-tilt-button switch (RTB) is pressed or the middle-button switch (MB) and the right-button switch (RB) are simultaneously pressed, will result in the micro-controller  50  (MCU) receives a signal of (0,1,1) from the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 . Similarly, both the situations, when the left-tilt-button switch (LTB) is pressed or the left-button switch (LB) and the middle-button switch (MB) are simultaneously pressed, will result in the micro-controller  50  (MCU) receives a signal of (1,1,0) from the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 . To prevent the micro-controller  50  (MCU) from misunderstanding the signals received by the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 , an effective-duration is defined in firmware of the micro-controller  50  (MCU). 
         [0024]    Generally, when users simultaneously press two buttons, say, the left-button and the middle-button, the left-button signal input terminal  502  and the middle-button signal input terminal  504  couldn&#39;t accurately receive the high-level signals at a same time point. In other words, there is a time difference, about over 100 ms, between the left-button signal input terminal  502  and the middle-button signal input terminal  504  receive the high-level signal after the user simultaneously pressing the left-button and the middle-button. On the contrarily, the left-button signal input terminal  502  and the middle-button signal input terminal  504  could receive the high-level signal almost at a same time point after users pressing the right-tilt-button switch (RTB). Therefore, the effective-duration can be used for determining the signals at the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506  are actually from the left-middle-right button unit  22  or from the horizontal-scrolling button unit  42 . 
         [0025]    In the embodiment of the present invention, a 10 Hz sampling-frequency is adopted for detecting the level of signals at the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506  within the effective-duration 100 ms. If the time difference, between the two time points of the middle-button signal input terminal  504  and the right-button signal input terminal  506  receiving the high-level signal, is greater than the effective-duration, the firmware in the micro-controller  50  (MCU) determines the high-level signals at the middle-button signal input terminal  504  and the right-button signal input terminal  506  are outputted from the middle-button (MB) and the right-button (RB), respectively. Then, the micro-controller  50  (MCU) will output the middle-button-pressed signal and the right-button-pressed signal instead of outputting the scrolling-right signal to the host. 
         [0026]    On the contrarily, when the middle-button signal input terminal  504  and the right-button signal input terminal  506  receive the high-level signal, and the left-button signal input terminal  502  receives a low-level signal, and if the time difference, between the two time points of the middle-button signal input terminal  504  and the right-button signal input terminal  506  receiving the high-level signal, is less than the effective-duration, the firmware in the micro-controller  50  (MCU) determines the high-level signals at the middle-button signal input terminal  504  and the right-button signal input terminal  506  are outputted from the diodes D 3  and D 4 , respectively. Therefore, the micro-controller  50  (MCU) will output the scrolling-right signal to the host. 
         [0027]    Through the external-extend circuit  52  and the firmware within the micro-controller  50  (MCU), the tilt-wheel mouse can have extra functions of scrolling-left and scrolling-right without adding more I/O pins in the micro-controller  50  (MCU). Obviously, it is not limit to achieve the scrolling-left function through the left-button signal input terminal  502  and the middle-button signal input terminal  504  in the present invention, in other words, the scrolling-left function can be achieved through any set of I/O pins from the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 . Similarly, it is not limit to achieve the scrolling-right function through the middle-button signal input terminal  504  and the right-button signal input terminal  506  in the present invention, in other words, the scrolling-right function can be achieved through any set of I/O pins from the left-button signal input terminal  502 , the middle-button signal input terminal  504 , and the right-button signal input terminal  506 . 
         [0028]    While the invention has been described in terms of what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention needs not be limited to the disclosed embodiment. On the contrary, it is intended to cover various modifications and similar arrangements included within the spirit and scope of the appended claims which are to be accorded with the broadest interpretation so as to encompass all such modifications and similar structures.