Sensor controller and method performed by a sensor controller
By using frame synchronization and variable-length instructions and spreading code technology between the sensor controller and the stylus, the signal transmission of bidirectional communication is optimized, solving the problem of high uplink signal occupancy and improving the utilization rate of communication resources and information transmission speed.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- WACOM CO LTD
- Filing Date
- 2018-02-08
- Publication Date
- 2026-06-02
Smart Images

Figure CN117348748B_ABST
Abstract
Description
[0001] This application is a divisional application of application filed on August 8, 2019, with application number 201880010856.3, entitled "Method performed in a system including an active stylus and a sensor controller, a sensor controller and an active stylus". Technical Field
[0002] The present invention relates to a method for performing in a system including an active stylus and a sensor controller, a sensor controller, and an active stylus. Background Technology
[0003] In touch-based input systems, the system is configured to send signals from a stylus to a sensor controller. An example of such an input system is disclosed in Patent Document 1.
[0004] Existing technical documents
[0005] Patent documents
[0006] Patent Document 1: International Publication No. 2015 / 111159 Summary of the Invention
[0007] The problem the invention aims to solve
[0008] Furthermore, in recent years, input systems have emerged that can not only send signals from the stylus to the sensor controller, but also supply signals from the sensor controller to the stylus. Hereinafter, the former signal will be referred to as the "downlink signal," and the latter signal as the "uplink signal." In such bidirectional communication input systems, the stylus can be activated by commands sent from the sensor controller to the stylus, thus enabling efficient use of communication resources.
[0009] However, in time-division multiplexing (TDM) bidirectional communication, a portion of the communication resources is occupied by uplink signaling. As a result, the communication time available for transmitting downlink signals is reduced, thus requiring improvement.
[0010] Therefore, one of the objectives of this invention is to reduce the proportion (uplink signal occupancy) of the communication resources available for signal transmission and reception between the stylus and sensor controller that enable bidirectional communication, which is occupied by the transmission of uplink signals from the sensor controller to the stylus.
[0011] The first aspect of the present invention is a method performed in a system including an active stylus and a sensor controller, comprising: a synchronization step of synchronizing the sensor controller and the active stylus frame; an instruction step in which the sensor controller selects a first variable-length instruction from a plurality of variable-length instructions, each capable of containing data of variable bit length, and transmits the first variable-length instruction within a first frame via an uplink signal of variable time length corresponding to the bit length of the first variable-length instruction; a receiving step in which the active stylus uses a receiving circuit to detect the uplink signal and the variable time length, and continuously decodes until the end of the variable time length, thereby receiving the first variable-length instruction; and a transmission step in which the active stylus, through a control circuit and a transmission circuit, uses the remaining portion of the first frame to transmit a downlink signal corresponding to the received first variable-length instruction.
[0012] The sensor controller of the first aspect of the present invention includes: a transmitting unit that, after establishing frame synchronization with an active stylus, selects a first variable-length instruction from a plurality of variable-length instructions, each capable of containing data of variable bit length, and transmits the first variable-length instruction within a first frame via an uplink signal of a time length corresponding to the bit length of the first variable-length instruction; and a receiving unit that uses the remaining portion of the first frame to receive a downlink signal transmitted by the active stylus according to the first variable-length instruction.
[0013] The active stylus of the first embodiment of the present invention includes: a receiving unit that, after establishing frame synchronization with a sensor controller, receives a first variable-length instruction selected from a plurality of variable-length instructions, each capable of containing data of variable length, by detecting an uplink signal sent by the sensor controller within a first frame; and a transmitting unit that uses the remaining portion of the first frame to transmit a downlink signal corresponding to the received first variable-length instruction.
[0014] The second aspect of the present invention is a method performed in a system including an active stylus and a sensor controller, comprising: a transmitting step, wherein the sensor controller transmits an uplink signal including the first and second portion signals; and a receiving step, wherein the active stylus receives the uplink signal, wherein the transmitting step is configured to transmit the first portion signal by using direct sequence spreading of a first spreading code, and on the other hand, to transmit the second portion signal by using direct sequence spreading of a second spreading code, the second spreading code being a code different from the first spreading code and having the same chip time length as the first spreading code; and the receiving step is configured to detect the second portion signal using the second spreading code after synchronizing with the uplink signal by detecting the first portion signal using the first spreading code.
[0015] The sensor controller of the second aspect of the present invention includes a transmitting unit for transmitting an uplink signal, the uplink signal comprising a first part signal and a second part signal. The transmitting unit transmits the first part signal by using direct sequence spreading of a first spreading code, and transmits the second part signal by using direct sequence spreading of a second spreading code. The second spreading code is a code different from the first spreading code and has the same chip time length as the first spreading code.
[0016] The second embodiment of the present invention includes an active stylus that receives an uplink signal, the uplink signal comprising a first part signal and a second part signal. After the receiving part synchronizes with the uplink signal by detecting the first part signal using a first spreading code, it detects the second part signal using a second spreading code. The second spreading code is a code different from the first spreading code and has the same chip time length as the first spreading code.
[0017] Invention Effects
[0018] According to the first aspect of the present invention, the duration of the uplink signal transmitted by the sensor controller is adjusted according to the number of bits of the variable-length instruction of the transmitting object, thereby reducing the uplink signal occupancy.
[0019] According to the second aspect of the present invention, the code length of the second spreading code used after synchronization is shorter than the code length of the first spreading code used for synchronization, thereby further reducing the uplink signal occupancy. Attached Figure Description
[0020] Figure 1 This is a diagram showing the structure of system 1 according to the first embodiment of the present invention.
[0021] Figure 2 It means Figure 1 The diagram shows the structure of sensor 30 and sensor controller 31.
[0022] Figure 3 This is a diagram illustrating the variable-length instruction vCMD of the first embodiment of the present invention.
[0023] Figure 4 It means Figure 1 The diagram shows a general block diagram of the function blocks of the stylus 2.
[0024] Figure 5 It means Figure 3 The diagram shows the sending and receiving method of the variable-length instruction vCMD.
[0025] Figure 6 This is a flowchart illustrating the operation of the sensor controller 31 according to the first embodiment of the present invention.
[0026] Figure 7 This is a flowchart illustrating the operation of the stylus 2 according to the first embodiment of the present invention.
[0027] Figure 8 This is a diagram illustrating the effects of the first embodiment of the present invention.
[0028] Figure 9 This is a diagram illustrating a first variation of the first embodiment of the present invention, specifically a variable-length instruction vCMD.
[0029] Figure 10 This is a diagram illustrating a second variation of the first embodiment of the present invention, specifically a variable-length instruction vCMD.
[0030] Figure 11 This is a diagram illustrating a third variation of the first embodiment of the present invention, specifically a variable-length instruction vCMD.
[0031] Figure 12 This is a diagram illustrating the method for transmitting and receiving a variable-length instruction vCMD, a third variation of the first embodiment of the present invention.
[0032] Figure 13 This is a flowchart illustrating the operation of the sensor controller 31 in a third variation of the first embodiment of the present invention.
[0033] Figure 14 This is a flowchart illustrating the operation of the stylus 2 in a third variation of the first embodiment of the present invention.
[0034] Figure 15 This is a diagram illustrating the method for sending and receiving variable-length instructions (vCMD) according to the second embodiment of the present invention.
[0035] Figure 16This is a flowchart illustrating the operation of the stylus 2 according to the second embodiment of the present invention.
[0036] Figure 17 This is a general block diagram showing the functional blocks of the stylus 2 according to the third embodiment of the present invention.
[0037] Figure 18 This is an explanation Figure 15 The diagram shows the spreading code C3.
[0038] Figure 19 This is a flowchart illustrating the operation of the stylus 2 according to the third embodiment of the present invention.
[0039] Figure 20 This is a flowchart illustrating the operation of the stylus 2 according to the third embodiment of the present invention.
[0040] Figure 21 This is a diagram illustrating the method for sending and receiving variable-length instructions (vCMD) according to the third embodiment of the present invention.
[0041] Figure 22 This is a diagram illustrating a modified example of the third embodiment of the present invention, showing a method for transmitting and receiving variable-length instructions (vCMD). Detailed Implementation
[0042] Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
[0043] Figure 1 This is a diagram illustrating the structure of system 1 according to a first embodiment of the present invention. As shown in the diagram, system 1 is configured to include a stylus 2 and an electronic device 3. The electronic device 3 is, for example, a digitizer connected to another PC, or a tablet PC equipped with a display device, configured to allow input of line drawings by moving the stylus 2 or a finger (not shown) on the panel surface 3a.
[0044] Stylus 2 is a capacitive active stylus, such as... Figure 1 As shown, it is configured to include a core 20, an electrode 21, a pen pressure detection sensor 23, a signal processing unit 24, and a power supply 25.
[0045] The core 20 is a rod-shaped component whose length direction is aligned with the axis of the stylus 2. A conductive material is coated on the surface of the front end 20a of the core 20 to form an electrode 21. The rear end of the core 20 abuts against the pen pressure detection sensor 23. The pen pressure detection sensor 23 detects the pen pressure level corresponding to the pressure applied to the front end 20a (the pen pressure applied to the core 20) when pressed against the panel surface 3a, etc. In a specific example, it is composed of a variable capacity module whose capacitance changes according to the pen pressure.
[0046] Electrode 21 is electrically connected to signal processing unit 24 via wiring. When signal processing unit 24 supplies a downlink signal DS to electrode 21, a charge corresponding to the supplied downlink signal DS is induced in electrode 21. This causes a change in the capacitance within sensor 30 (described later), and sensor controller 31 (described later) receives the downlink signal DS by detecting this change. Furthermore, when an uplink signal US transmitted by sensor controller 31 via sensor 30 reaches electrode 21, a charge corresponding to the arriving uplink signal US is induced in electrode 21. Signal processing unit 24 receives the uplink signal US by detecting the charge induced in electrode 21 in this way.
[0047] The signal processing unit 24 has the function of receiving the uplink signal US sent by the sensor controller 31 via the electrode 21 and generating the downlink signal DS according to the instructions (described later) contained in the received uplink signal US and sending it to the sensor controller 31 via the electrode 21.
[0048] The power supply 25 is used to supply operating power (DC voltage) to the signal processing unit 24, and is composed of, for example, a cylindrical AAAA battery.
[0049] The electronic device 3 is configured to have a sensor 30 constituting the panel surface 3a, a sensor controller 31, and a main processor 32 that controls the functions of each part of the electronic device 3, including the sensor 30 and the sensor controller 31.
[0050] The sensor controller 31 has the function of sending an uplink signal US to the stylus 2 via the sensor 30. The uplink signal US is a variable-length (variable-duration) signal whose duration varies depending on the control content. The uplink signal US contains data representing a variable-length control instruction (variable-length instruction vCMD, described later) indicating the control content for the stylus 2. Furthermore, the sensor controller 31 also has the function of receiving a downlink signal DS sent by the stylus 2 via the sensor 30.
[0051] Figure 2 This is a diagram showing the structure of sensor 30 and sensor controller 31. As shown in the diagram, sensor 30 has a matrix structure of multiple linear electrodes 30X and multiple linear electrodes 30Y, configured to interact with the electrodes 21 of stylus 2 (see reference 2000) through these linear electrodes 30X and 30Y. Figure 1 The sensor controller 31 is configured to include a transmitter 60, a selector 40, a receiver 50, and an MCU 80.
[0052] MCU80 is a processor that controls various parts within the sensor controller 31. Specifically, it has the functions of supplying data (hereinafter referred to as "transmission data") transmitted as an uplink signal US to the transmitting unit 60 and an instruction end value EoC indicating the end of the transmission data; receiving the downlink signal DS output from the receiving unit 50, deriving the position (x, y) of the stylus 2 based on the result, obtaining the data Res transmitted by the stylus 2 and supplying it to the main processor 32; and switching between transmitting the uplink signal US and receiving the downlink signal DS by controlling the selection unit 40, and selecting the linear electrode used for transmitting the uplink signal US and the linear electrode used for receiving the downlink signal DS.
[0053] The data supplied by MCU80 to transmitter 60 includes a preamble Pre and a variable-length instruction vCMD following the preamble Pre. The preamble Pre consists of known data (e.g., a 2-bit string "00") that is pre-shared with the stylus 2. On the other hand, the variable-length instruction vCMD is arbitrary data of variable length representing the content of control for the stylus 2. MCU80 is configured to select one variable-length instruction (first variable-length instruction) from a plurality of variable-length instructions, each capable of containing data of variable length.
[0054] The MCU 80 is configured to transmit uplink signal US and receive downlink signal DS in frame units. The MCU 80 is configured to output a bit string constituting a preamble Pre to the transmitting unit 60 at the beginning of each frame, followed by an output bit string constituting a variable-length instruction vCMD, and then use the remaining portion of each frame to receive the downlink signal DS. Thus, the preamble Pre, associated with the variable-length instruction vCMD, is repeatedly and periodically transmitted from the sensor controller 31 to the stylus 2. Each time, the stylus 2 can transmit the downlink signal DS corresponding to the content of the variable-length instruction vCMD towards the sensor controller 31. The preamble Pre, repeatedly transmitted for each frame, serves to provide the frame reference time from the sensor controller 31 to the stylus 2.
[0055] Figure 3 This is a diagram illustrating the variable-length instruction vCMD of this embodiment. In this embodiment, the variable-length instruction vCMD for the transmission target is selected from the four variable-length instruction vCMDs shown in Figures (a) to (d) (each with a size of N bytes, 2N bytes, 3N bytes, and 4N bytes). These variable-length instruction vCMDs are configured to have a length field (the field indicated by the punctuation) representing their size at a common predetermined location. Figure 3In the example, the length field is 2 bits long. The four length field values "00", "01", "10", and "11", which can be represented by 2 bits, correspond to N bytes, 2N bytes, 3N bytes, and 4N bytes, respectively. In other words, the MCU80, in accordance with the selected variable-length instruction vCMD, determines the number of bits in the variable-length instruction vCMD and changes the value of the length field within the variable-length instruction vCMD based on the determination. The stylus 2 is configured to decode the value of the length field within the received variable-length instruction vCMD and determine the timing of continuing the reception action of the variable-length instruction vCMD based on this value. Thus, the entire variable-length instruction vCMD can be decoded appropriately.
[0056] It should be noted that the size of the variable-length instruction vCMD does not necessarily have to be four types; two or more are sufficient. The bit length of the length field is adjusted appropriately based on the number of options for the size of the variable-length instruction vCMD.
[0057] return Figure 2 The transmitting unit 60 is a circuit that generates an uplink signal US based on the transmission data supplied from the MCU 80 and outputs it to the selection unit 40. The transmitting unit 60 is configured to include a direct sequence spread spectrum unit 63, a spreading code holding unit 64, and a transmission protection unit 65. It should be noted that a modulation unit for PSK modulation (Manchester characterization) or similar functions may also be provided after the direct sequence spread spectrum unit 63.
[0058] The spreading code holding unit 64 has the function of holding and outputting one or more spreading codes C1, C2, and C3.
[0059] The spreading code C1 is, for example, described later. Figure 18 The PN character "0111000010100110" in the 16-chip (bit) diagram shown in the upper paragraph of (a) is not limited to this PN character; any string with autocorrelation properties can be used.
[0060] Spreading code C2 is a PN character with a shorter code length compared to spreading code C1, such as the PN character "0110001" in a 7-chip (see reference). Figure 15(Times t3 to t5). However, the spreading code C2 is not limited to the PN character; it can be any string that improves the noise immunity of the bit string to be transmitted (e.g., a string with autocorrelation properties). Furthermore, the time length (chip time length) of each chip in the spreading code C2 can be the same as that of the spreading code C1. Moreover, the spreading code C1 can be constructed by multiple spreading codes C2 (e.g., by concatenating multiple spreading codes C2). For a specific example, by using a 21-bit character formed by concatenating three 7-chip spreading codes C2 as the spreading code C1, the peak detection level is improved, the synchronization timing relative to the uplink signal itself can be determined more accurately, and the structure of the correlation operator 71b (described later) inside the stylus 2 can be simplified.
[0061] Spreading code C3 is a general term for variations of spreading codes obtained by cyclically shifting spreading code C1 by a specified number of chips or by reversing its polarity. For example... Figure 18 (b) The spreading codes C31, C32, C33, C31r, C32r, and C33r shown are consistent. Spreading code C31 is spreading code C1 itself, spreading code C32 is a spreading code obtained by shifting spreading code C31 by 5 bits, spreading code C33 is a spreading code obtained by shifting spreading code C32 by 5 bits, spreading code C31r is a spreading code obtained by reversing spreading code C31, spreading code C32r is a spreading code obtained by reversing spreading code C32, and spreading code C33r is a spreading code obtained by reversing spreading code C33.
[0062] It should be noted that while spreading codes C1, C2, and C3 have been described, only spreading code C1 is used in this embodiment. Therefore, it is sufficient for the spreading code holding unit 64 to store at least spreading code C1. Spreading codes C2 and C3 will be described in more detail in the second and third embodiments, respectively.
[0063] The direct sequence spreading unit 63 has the function of generating an uplink signal US by using direct sequence spreading (e.g., direct spectrum spreading) with the spreading code output by the spreading code holding unit 64. Through the processing of the direct sequence spreading unit 63, the uplink signal US is as described later. Figure 5 As shown, it becomes a signal consisting of a series of spreading codes corresponding to the value of the transmitted data. Furthermore, the duration of the uplink signal US corresponds to the number of bits in the variable-length instruction vCMD contained in the uplink signal US.
[0064] The specific structure of the direct sequence spreading unit 63 can be a logic circuit that calculates the exclusive logical sum of each bit value constituting the transmitted data and the spreading code, or it can be a circuit that stores the spreading code for each bit value in a memory (not shown) in advance and outputs the spreading code corresponding to each bit value constituting the transmitted data. In this embodiment, spreading code C1 is used as the spreading code. Therefore, the direct sequence spreading unit 63 is configured to output spreading code C1 corresponding to the bit value "0" of the transmitted data, and output the reversed character of spreading code C1 (hereinafter referred to as spreading code C1r) corresponding to the bit value "1" of the transmitted data.
[0065] The transmission protection unit 65 has the function of stopping the output of the uplink signal US based on the instruction end value EoC supplied from the MCU80.
[0066] The selection unit 40 switches between the transmission period of the uplink signal US transmitted from the sensor 30 and the reception period of the downlink signal DS received through the sensor 30, based on the control of the MCU 80. The selection unit 40 is configured to include switches 44x and 44y and conductor selection circuits 41x and 41y. Switch 44x operates as follows: based on the control signal sTRx supplied from the MCU 80, during the transmission period of the uplink signal US, the output terminal of the transmitting unit 60 is connected to the input terminal of the conductor selection circuit 41x; during the reception period, the output terminal of the conductor selection circuit 41x is connected to the input terminal of the receiving unit 50. Switch 44y operates as follows: based on the control signal sTRy supplied from the MCU 80, during the transmission period of the uplink signal US, the output terminal of the transmitting unit 60 is connected to the input terminal of the conductor selection circuit 41y; during the reception period, the output terminal of the conductor selection circuit 41y is connected to the input terminal of the receiving unit 50. The conductor selection circuit 41x operates as follows: based on the control signal selX supplied from the MCU80, it selects one (or more) of a plurality of linear electrodes 30X, and connects the selected linear electrode 30X to the switch 44x respectively. The conductor selection circuit 41y operates as follows: based on the control signal selY supplied from the MCU80, it selects one (or more) of a plurality of linear electrodes 30Y, and connects the selected linear electrode 30Y to the switch 44y respectively.
[0067] The receiving unit 50 is a circuit used to detect or receive the downlink signal DS transmitted by the stylus 2, and is configured to include an amplifier circuit (not shown), a detector circuit, and an analog-to-digital (AD) converter, etc. The receiving unit 50 supplies the detected or received downlink signal DS to the MCU 80.
[0068] Figure 4This is a general block diagram showing the functional blocks of the stylus 2. As shown in the figure, the stylus 2 is configured to include a switching unit SW, a receiving unit 71 (receiving circuit), a spreading code storage unit 72, a transmitting unit 75 (transmitting circuit), and a control unit 90 (control circuit).
[0069] The switching unit SW switches the receiver (R) and transmitter (T) functions based on the control signal SWC from the control unit 90. When receiving (R), electrode 21 is connected to the receiver 71; when transmitting (T), electrode 21 is connected to the transmitter 75. It should be noted that electrodes for receiving the uplink signal US and for transmitting the downlink signal DS can also be provided separately.
[0070] The spreading code storage unit 72 is a storage unit that stores the spreading codes C1, C2, and C3 described above. However, as described above, only spreading code C1 is used in this embodiment, so spreading codes C2 and C3 do not need to be stored.
[0071] The receiving unit 71 is configured to include a waveform regeneration unit 71a and a correlation arithmetic unit 71b. The waveform regeneration unit 71a has the function of shaping the level of the charge (voltage) induced in the electrode 21 into a binary string of positive and negative polarity values (corresponding to the chip sequence of the spreading code) and outputting it. The correlation arithmetic unit 71b stores the binary string of positive and negative polarity values output by the waveform regeneration unit 71a in a register column, shifts it sequentially using a clock CLK (not shown), and performs correlation operations with the spreading code C1 held in the spreading code storage unit 72.
[0072] The receiving unit 71 is configured to detect the uplink signal US and its duration, and continuously decode until the end of the detected duration, thereby receiving the variable-length instruction vCMD. More specifically, the receiving unit 71 first detects the preamble Pre based on the result of the correlation operation performed by the correlation arithmetic unit 71b. Then, it obtains the frame reference time by detecting the preamble Pre, and performs the detection of the variable-length instruction vCMD according to the obtained frame reference time. During this detection, the duration of the uplink signal US is detected from the information contained in the uplink signal US (the length field in this embodiment), and continuously decoded until the end of the detected duration. After detecting the entire variable-length instruction vCMD, the receiving unit 71 supplies the detected variable-length instruction vCMD to the control unit 90.
[0073] Figure 5 This is a diagram illustrating the method for sending and receiving variable-length command vCMD according to this embodiment. The diagram shows... Figure 3The diagram shows the case where N is 5 (i.e., the variable-length instruction vCMD is 5 bytes when the 2-bit length field is "00"). Furthermore, the diagram illustrates an example of configuring the length field in the 2nd and 3rd bits of the variable-length instruction vCMD.
[0074] like Figure 5 As shown, the result of the correlation operation performed by the correlation arithmetic unit 71b displays a positive peak when the entire spreading code (spreading code C1) representing "0" is received, and a negative peak when the entire spreading code (spreading code C1r) representing "1" is received. The receiving unit 71 detects whether "0" or "1" has been received by confirming the occurrence and sign of this peak. Furthermore, it detects the received bit value (which is a length field) by confirming the bit value (...). Figure 5 In the example, "00" is used to determine the bit length of the variable-length instruction vCMD, and the bit string of the determined bit length is obtained as the variable-length instruction vCMD and supplied to the control unit 90. The control unit 90 is configured to execute the supplied variable-length instruction vCMD (i.e., the instruction execution timing becomes high) when the variable-length instruction vCMD is supplied in this way.
[0075] return Figure 4 The control unit 90, composed of a microprocessor (MCU), is activated upon detection of the uplink signal US in the receiver 71. Based on the content of the variable-length instruction vCMD supplied from the receiver 71, it performs various processes (e.g., from...) to send the downlink signal DS to the sensor controller 31. Figure 1 The pen pressure detection sensor 23 shown acquires the current pen pressure level, reads the stylus ID stored in a non-volatile memory (not shown), and changes the carrier frequency, etc.
[0076] The transmitting unit 75 is a circuit that transmits a downlink signal DS obtained by modulating and boosting a carrier wave of a set frequency according to values such as pen pressure level supplied from the control unit 90. The downlink signal DS is sent out to space from the electrode 21 via the switching unit SW.
[0077] Hereinafter, the operation of the sensor controller 31 and the stylus 2 in this embodiment will be described in more detail with reference to their respective operation flow.
[0078] Figure 6This is a flowchart illustrating the operation of the sensor controller 31 in this embodiment. As shown in the figure, when the uplink signal US is transmitted, the sensor controller 31 first transmits a preamble Pre (step S1). As described above, the value of the preamble Pre is, for example, "00". Next, the sensor controller 31 selects a variable-length instruction vCMD (first variable-length instruction) from a plurality of variable-length instructions vCMDs, each capable of containing data of variable length, and transmits it within the first frame using an uplink signal US of a length corresponding to the number of bits of the variable-length instruction vCMD (indication step. Step S2). Then, the sensor controller 31 uses the remaining portion of the first frame to perform a detection operation (reception) of the downlink signal DS transmitted by the stylus 2 (step S3), and returns the process to step S1.
[0079] Figure 7 This is a flowchart illustrating the operation of the stylus 2 in this embodiment. As shown in the figure, the stylus 2 first activates the correlation arithmetic unit 71b using the spreading code C1 (step S10). The calculation result output from the correlation arithmetic unit 71b activated in this way displays a positive peak value when the spreading code C1 is received, and a negative peak value when the spreading code C1r is received, as described above.
[0080] The stylus 2 causes the related arithmetic unit 71b to continuously perform related operations until the preamble Pre is detected (negation determination in steps S11 and S12). It should be noted that the processing in step S11 can also be performed intermittently at predetermined intervals. The determination result of step S12, for example, when the preamble Pre is "00", is as follows: Figure 5 As shown at times t2 and t3, a positive determination is made only if two consecutive positive peaks are detected within the specified time interval.
[0081] After the stylus 2, which detects the preamble Pre (affirmative determination in step S12), establishes frame synchronization with the sensor controller 31 (synchronization step, step S13), it uses... Figure 4 The receiver 71 shown detects the uplink signal US and its duration, and continuously decodes it until the end of the detected duration, thereby performing... Figure 7 The reception process of the variable-length instruction vCMD (reception step, step S14) is shown in the dashed box. Specifically, step S13 involves synchronizing the reception timing of each spreading code representing each bit of the variable-length instruction vCMD with the sensor controller 31 based on the frame reference time obtained through the detection of the preamble Pre. Through this synchronization process, the stylus 2 obtains the timing (sampling timing) for the correlation arithmetic unit 71b to perform correlation operations.
[0082] In the reception and processing of the variable-length instruction vCMD, the sampling timing obtained by the stylus 2 in step S13 causes the correlation arithmetic unit 71b to perform correlation operations (step S15). For example Figure 5 In the example, the times from t4 to t8 are equivalent to sampling timing.
[0083] The stylus 2 obtains a bit value ("0" or "1") based on the polarity of the peak value obtained as a result of the related operation performed in step S15. Furthermore, the obtained bit value is accumulated in memory (not shown) as part of a variable-length instruction vCMD (step S16). Through this process, for example... Figure 5 In the example, at each time point from t4 to t8, the bit values "1", "0", "0", "0", and "1" are stored in memory.
[0084] Next, stylus 2 determines whether a new length field has been detected based on the bit values obtained so far (step S17). If a new detection is detected, the bit length of the variable-length instruction vCMD is obtained (step S18), and the process returns to step S15. On the other hand, if no new detection is detected, stylus 2 then determines whether the end of the variable-length instruction vCMD has been reached (step S19). This determination is based on the bit length of the variable-length instruction vCMD obtained in step S18.
[0085] In step S19, if stylus 2 is determined not to have reached the end, the process returns to step S15. On the other hand, in step S19, if stylus 2 is determined to have reached the end, it obtains the value of the bit string accumulated in memory up to that point in time as the value of the variable-length instruction vCMD, and executes the obtained bit string as an instruction (explained) (step S20). The timing for executing this instruction is, for example... Figure 5 In the example, the time is t8.
[0086] Finally, the stylus 2 through Figure 3 The control unit 90 and the transmission unit 75 shown use the remaining portion of the first frame to transmit the downlink signal DS corresponding to the variable length instruction vCMD. For example, the downlink signal DS containing the value of the data (pen pressure level, etc.) specified by the variable length instruction vCMD is transmitted at a frequency specified by the variable length instruction vCMD (transmission step. step S21).
[0087] As explained above, according to this embodiment, the duration of the uplink signal US transmitted by the sensor controller 31 is adjusted according to the number of bits in the variable length instruction vCMD of the transmission target. Therefore, it is possible to reduce the proportion (uplink signal occupancy) of the communication resources available for signal transmission and reception between the stylus 2 and the sensor controller 31 that is occupied by the transmission of the uplink signal US from the sensor controller 31 to the stylus 2.
[0088] Figure 8 This diagram illustrates the effects of this embodiment. In this diagram, the portion marked with an upward-sloping shading line represents the period during which the sensor controller 31 sends the uplink signal US, and the portion marked with a downward-sloping shading line represents the period during which the stylus 2 receives the uplink signal US. Furthermore, in the example shown in this diagram, times t1 to t3 correspond to the first frame, and times t4 to t6 correspond to the second frame. The periods between frames (times t3 to t4) are used for other processing (e.g., finger touch detection, LCD driving, etc.).
[0089] Figure 8 (a) is a diagram showing the communication operation between the sensor controller 31 and the stylus 2 in the case of using the previous fixed-length uplink signal US as a comparative example.
[0090] The sensor controller 31 transmits a fixed-length uplink signal US (USTx) during a fixed period at the beginning of each frame (times t1-t2 and t4-t5), and receives the downlink signal DS (DSRx) during the remaining portion of each frame (times t2-t3 and t5-t6). On the other hand, the stylus 2 receives the fixed-length uplink signal US (USRx) during the fixed period at the beginning of each frame (times t1-t2 and t4-t5), and transmits the downlink signal DS (DSTx) during the remaining portion of each frame (times t2-t3 and t5-t6). Because the duration of the uplink signal US is fixed, communication resources are wasted when the target instruction is short.
[0091] Figure 8 (b) and Figure 8 (c) is a diagram showing the communication operation between the sensor controller 31 and the stylus 2 when the variable-length uplink signal US of this embodiment is used. Figure 8 (b) indicates the case where the instruction to send the object is short. Figure 8 (c) indicates a case where the instruction to send the object is longer.
[0092] like Figure 8As shown in (b), according to this embodiment, when the instruction for transmitting the target is short, the uplink signal US can be shortened. Therefore, the uplink signal occupancy rate can be reduced. Furthermore, if... Figure 8 (a) and Figure 8 (b) As understood in the comparison, the transmission frequency of the uplink signal US and the downlink signal DS can be increased as needed to improve the position detection rate. Moreover, if a shorter bit string is used as the instruction with a higher transmission frequency, the energy consumed by the stylus 2 and the sensor controller 31 for transmitting and receiving the uplink signal US can be reduced.
[0093] And, as Figure 8 As shown in (c), according to this embodiment, when the instruction to be sent is long, the uplink signal US can be lengthened. Therefore, longer instructions can be sent all at once, thus improving the information transmission speed. It should be noted that, as a specific example of a long instruction, one could consider instructions that, while not frequent, require sending many bits of information to the stylus 2, such as updating the stylus ID of the stylus 2 or upgrading the firmware of the stylus 2.
[0094] Figure 9 This is a diagram illustrating a variable-length instruction vCMD in a first variation of this embodiment. In this variation, the variable-length instruction vCMD is defined by a specified byte length ( Figure 9 The input consists of one or more fields (each containing N bytes). Each field is configured with a flag (the shaded portion) indicating the presence of a next field, for example, a 1-bit flag. This flag is used by the stylus 2 to detect the duration of the uplink signal US (in other words, the end of the variable-length instruction vCMD).
[0095] exist Figure 9 In the example, a flag of 1 indicates "there are N bytes following (not yet ended)", and a flag of 0 indicates "there are no N bytes following (end)". Furthermore, Figure 9 (a) indicates the case where the variable-length instruction vCMD is N bytes (the case where the first flag is "0"). Figure 9 (b) indicates the case where the variable-length instruction vCMD is N×K bytes (the case where the Kth part vCMDK of the variable-length instruction vCMD is "0").
[0096] Through the variable-length instruction vCMD in this variant, the duration of the uplink signal US transmitted by the sensor controller 31 is also adjusted according to the number of bits in the variable-length instruction vCMD of the transmitting object. Therefore, it is possible to reduce the uplink signal occupancy.
[0097] Furthermore, the second field, which is sent after the first field in one or more fields constituting the variable-length instruction vCMD, can be sent continuously with the first field, or it can be sent after a predetermined time has elapsed since the completion of the first field's transmission. Thus, this variation can be applied to situations where the entire variable-length instruction vCMD can be sent continuously, and it can also be applied to situations where, for example, a pause period in liquid crystal driving is used as a time period, and continuous transmission of the variable-length instruction vCMD is not possible.
[0098] Figure 10 This diagram illustrates a variable-length instruction vCMD of a second variation of this embodiment. The variable-length instruction vCMD of this variation differs from the first variation in that it includes a CRC field in one or more fields constituting the variable-length instruction vCMD. This CRC field contains an error detection value calculated based on a bit string obtained from the value of the bit string contained in this field. The stylus 2, upon receiving the variable-length instruction vCMD of this variation, calculates the error detection value based on the bit strings contained in one or more fields, compares it with the value contained in the corresponding CRC field, and if the comparison result is consistent for all of the aforementioned fields, it executes the transmission of the downlink signal DS.
[0099] According to this variation, the possibility of sending downlink signal DS in response to an incorrect variable-length command vCMD can be reduced. Furthermore, compared to a CRC that sets a length matching the data length at the end of variable-length data, as in typical data communication, even without multiple CRC detection logic in the stylus 2, a single CRC detection circuit can be used to perform error detection for each field, further reducing the circuit size of the stylus 2.
[0100] Figure 11 This diagram illustrates a variable-length instruction vCMD according to a third variation of this embodiment. In this variation, a special bit sequence (end field) corresponding to the instruction end value EoC is prepared. The stylus 2 is configured to detect the duration of the uplink signal US based on the detection of this special bit sequence, and then terminate the reception of the variable-length instruction vCMD. Figure 11 (a) indicates the case where the variable-length instruction vCMD is N1 bytes. Figure 11 (b) indicates the case where the variable-length instruction vCMD is N2 bytes (N2 > N1).
[0101] As for the specific content of the bit sequence corresponding to the instruction end value EoC, various cases are considered. In one example, consider the case where nothing is transmitted during the time period required to transmit a spreading code C1. This case will be explained in detail below.
[0102] Figure 12 This is a diagram illustrating the sending and receiving method of the variable-length instruction vCMD in this variant example. Figures (a) and (b) are identical except for the bit length of the variable-length instruction vCMD.
[0103] like Figure 12 As shown, in this modified example, the sensor controller 31 first sends "0" twice consecutively as a preamble Pre (times t1 to t3). The waveform of the uplink signal US transmitted during this period becomes the waveform of the spreading code C1. Next, the sensor controller 31 sends a bit string representing the specific content of the variable-length instruction vCMD ( Figure 12 (a) represents time t3 to time t4. Figure 12 (b) represents times t3 to tn. The waveform of the uplink signal US becomes the waveform of spreading code C1 when the transmit bit is "0", and becomes the waveform of spreading code C1r when the transmit bit is "1". Finally, the sensor controller 31 remains in standby mode for the entire duration required to transmit one spreading code C1 and transmits nothing. Figure 12 (a) represents time t4 to time t5. Figure 12 (b) represents time tn to time tn+1. Therefore, the instruction end value EoC is sent silently.
[0104] From the perspective of stylus 2, after detecting the preamble Pre, the periodically occurring peaks of the related results do not appear when the instruction end value EoC is received. Therefore, stylus 2 can detect the instruction end value EoC based on the absence of observed peaks of related results.
[0105] Figure 13 This is a flowchart illustrating the operation of the sensor controller 31 in this modified example. The operation shown in the figure involves setting the standby time between steps S2 and S3. Figure 6 The actions shown are different. Specifically, after the transmission of the variable-length instruction vCMD is completed, the sensor controller 31 does not transmit the spreading code but waits for at least one spreading code amount of time, and then sends the instruction end value EoC (standby step, step S30). Then, the sensor controller 31 performs the detection action of the downlink signal DS transmitted by the stylus 2 (step S3), and returns the processing to step S1.
[0106] Figure 14 This is a flowchart illustrating the operation of the stylus 2 in this modified example. The operation shown in the figure is performed without setting... Figure 7 The points shown in steps S17 to S19 and the points where step S40 is added between steps S15 and S16 for the determination process are... Figure 7The actions shown are different. Specifically, after the stylus 2 causes the correlation arithmetic unit 71b to perform correlation operations in step S15, it first determines whether a peak is detected (step S40). If a peak is detected, a bit value is obtained based on the polarity of the peak, and this bit value is accumulated in memory (not shown) as part of a variable-length instruction vCMD (step S16). Through this process, for example... Figure 12 In example (a), the bit value "1" at time t4 is stored in memory. Figure 12 In example (b), the bit values “1”, “1”, “0”, etc., at each time from time t4 to time tn are stored in memory.
[0107] On the other hand, in step S40, if the stylus 2 is determined not to have detected a peak value, it is considered to have detected the instruction end value EoC, and the receiving operation of the variable-length instruction vCMD ends (reception end step). Furthermore, the value of the bit string accumulated in the memory up to that point in time is obtained as the value of the variable-length instruction vCMD, and the obtained bit string is executed as an instruction (explanation) (step S20). The timing for executing this instruction is, for example... Figure 12 In example (a), the time is t5. Figure 12 In example (b), the time is tn+1. Subsequent processing and reference... Figure 7 The explanation is the same.
[0108] Through the variable-length instruction vCMD in this variant, the duration of the uplink signal US transmitted by the sensor controller 31 is also adjusted according to the number of bits in the variable-length instruction vCMD of the transmitting object. Therefore, it is possible to reduce the uplink signal occupancy.
[0109] Next, the second embodiment of the present invention will be described. This embodiment is based on the third variation of the first embodiment, but differs from the third variation of the first embodiment in that different spreading codes are used when transmitting the preamble Pre (first part signal) and the variable length command vCMD (second part signal) in the uplink signal US (specifically, spreading code C1 is used when transmitting the preamble Pre, and spreading code C2 is used when transmitting the variable length command vCMD). Hereinafter, the same reference numerals will be used for structures identical to the third variation of the first embodiment, and the description will focus on the differences from the third variation of the first embodiment.
[0110] Figure 15 This diagram illustrates the method for transmitting and receiving variable-length instructions (vCMD) according to this embodiment. As shown in the diagram, the sensor controller 31 of this embodiment first transmits "00" (equivalent to the preamble Pre) via... Figure 2The direct sequence spread spectrum unit 63 shown transmits the signal based on spread spectrum using a 16-chip spread spectrum code C1 (times t1 to t3). Next, the sensor controller 31 transmits a variable-length instruction vCMD, but this time uses a spread spectrum code C2, which has a shorter code length than spread spectrum code C1, to spread the bit string representing the variable-length instruction vCMD (times t3 to t5). Specifically, the "0" of the variable-length instruction vCMD is transmitted using spread spectrum code C2, and the "1" of the variable-length instruction vCMD is transmitted using the reverse character of spread spectrum code C2. Finally, the transmission of the instruction end value EoC is the same as in the third variation of the first embodiment. However, in this case, the duration of the transmission period of the special bit sequence corresponding to the instruction end value EoC (i.e., the period during which nothing is transmitted) only needs to be longer than the duration required to transmit one spread spectrum code C2. It should be noted that the length field shown in the first embodiment or the flag shown in the first variation of the first embodiment can also be used instead of transmitting the instruction end value EoC.
[0111] The stylus 2 is configured such that after detecting the preamble Pre using spreading code C1, it uses spreading code C2, which has a shorter code length than spreading code C1, to obtain the value of the variable-length instruction vCMD. For example... Figure 15 As shown, the specific values of the peak values are different in spreading codes C1 and C2. Therefore, the stylus 2 uses the different peak values to detect the preamble Pre and the variable-length instruction vCMD.
[0112] Figure 16 This is a flowchart illustrating the operation of the stylus 2 in this embodiment. The process flow shown in this figure intersperses the process of activating the related arithmetic unit 71b using the spreading code C2 (step S41) between steps S12 and S13. Figure 14 The processing flow shown is different. By performing this step S41, the stylus 2 can perform the detection of each bit constituting the variable-length instruction vCMD and the instruction end value EoC based on the spreading code C2.
[0113] As explained above, according to this embodiment, the code length of the spreading code used after frame synchronization (spreading code C2 in this case) can be shortened compared to the code length of the spreading code used for synchronization (spreading code C1 in this case), thus further reducing the uplink signal occupancy. It should be noted that while a shorter spreading code results in lower noise immunity, the sampling timing is known after frame synchronization, therefore, from this perspective, higher noise immunity can be obtained than before frame synchronization. Therefore, according to this embodiment, although the spreading code used after frame synchronization is shortened, noise immunity equivalent to that before frame synchronization can be obtained.
[0114] Next, the third embodiment of the present invention will be described. This embodiment is also based on the third variation of the first embodiment, but differs from the third variation of the first embodiment in that the stylus 2 uses three protocols P1 to P3 depending on the type of sensor controller 31 to which it is communicating, and that the spreading code used for transmitting the preamble Pre is common to all protocols, while the spreading code used for transmitting the variable length instruction vCMD is different for each protocol (specifically, spreading codes C1 to C3 are used in protocols P1 to P3 respectively). In other words, this embodiment makes the uplink signal US correspond to multiple protocols by using spreading codes C1 to C3 respectively. Hereinafter, the same reference numerals will be used for structures that are the same as those in the third variation of the first embodiment, and the description will focus on the differences from those in the third variation of the first embodiment.
[0115] Figure 17 This is a general block diagram showing the functional blocks of the stylus 2 in this embodiment. (The diagram is compared with...) Figure 4 As understood during the comparison, the stylus 2 of this embodiment differs from the stylus 2 described in the first embodiment in having three correlation operators 71b. As will be described in detail later, the three correlation operators 71b are used to perform correlation operations based on spreading codes C31, C32, and C33 (variations of the spreading codes constituting spreading code C3) respectively when the stylus 2 uses spreading code C3 to receive the variable-length instruction vCMD. When the stylus 2 uses spreading code C1 or spreading code C2 to receive the variable-length instruction vCMD, only one of the three correlation operators 71b is used.
[0116] Furthermore, the stylus 2 in this embodiment is configured to operate using any one of the three operation modes corresponding to protocols P1 to P3. The current operation mode is set, for example, by the user pressing the side switch (not shown) of the stylus 2.
[0117] Figure 18 This is a diagram illustrating spreading code C3. First, Figure 18 (a) Spreading code C1 and its inverse character, spreading code C1r, used for detecting preamble code Pre are shown as a reference for understanding spreading code C3. As shown in the figure, spreading code C1 is the PN character "0111000010100110" for 16 chips, and spreading code C1r is the PN character "1000111101011001".
[0118] Figure 18Figure (b) shows the spreading codes C31, C32, C33, C31r, C32r, and C33r that constitute spreading code C3. As shown in the figure, spreading code C31 is the same as spreading code C1, spreading code C32 is a spreading code obtained by shifting spreading code C31 by 5 bits, and spreading code C33 is a spreading code obtained by shifting spreading code C32 by 5 bits. Furthermore, spreading code C31r has the same PN character as spreading code C1r, spreading code C32r is a spreading code obtained by shifting spreading code C31r by 5 bits, and spreading code C33r is a spreading code obtained by shifting spreading code C32r by 5 bits. The result is that spreading code C31r is equal to the spreading code obtained by inverting spreading code C31, spreading code C32r is equal to the spreading code obtained by inverting spreading code C32, and spreading code C33r is equal to the spreading code obtained by inverting spreading code C33. Thus, spreading code C3 is configured to represent multiple values by combining shifting spreading code C1 by 5 bits per cycle (C31, C32, and C33) with the polarity reversal of spreading code C1 (positive and negative). Specifically, spreading codes C31, C32, C33, C31r, C32r, and C33r correspond to 1 bit of "0", 2 bits of "00", 2 bits of "01", 1 bit of "1", 2 bits of "10", and 2 bits of "11", respectively.
[0119] Figure 19 as well as Figure 20 This is a flowchart illustrating the operation of the stylus 2 in this embodiment. The processing flow shown in these figures involves determining the current operation mode (one of protocols P1 to P3) of the stylus 2 in step S12 after detecting and determining the preamble Pre (step S42); if the current operation mode corresponds to protocol P1, step S41 is not executed; if the current operation mode corresponds to protocol P3, step S43 is executed, and step S14a is executed instead of step S14. Figure 16 The processing flow shown is different.
[0120] Specifically, in step S42, the stylus 2 first determines which of protocols P1 to P3 corresponds to the current action mode (step S42). This determination can be made by referring to, for example, the current action mode set by the user.
[0121] In step S42, it is determined that the stylus 2 corresponding to protocol P1 continues to use the spreading code C1 used for receiving the preamble Pre in the reception of the variable-length instruction vCMD. In this case, the operation of the stylus 2 is similar to the reference... Figure 14 The explanation is the same.
[0122] On the other hand, in step S42, it is determined that the stylus 2 corresponding to protocol P2 uses a spreading code C2 shorter than the spreading code C1 to activate the related arithmetic unit 71b (step S41). In this case, the operation of the stylus 2 is related to the reference... Figure 16 The explanation is the same.
[0123] Furthermore, in step S42, the stylus 2 is determined to be corresponding to protocol P3. Figure 20 As shown, the three correlation operators 71b are activated using spreading codes C31, C32, and C33 respectively (step S43). Furthermore, after obtaining the sampling timing in step S13, the reception processing of the variable-length instruction vCMD is executed (step S14a).
[0124] The processing of step S14a replaces steps S16 and S40, and the points where steps S16a and S40a are executed respectively are the same. Figure 14 as well as Figure 16 The processing shown is different. Specifically, after the stylus 2 performs correlation operations on the three correlation arithmetic units 71b using sampling timing (step S15), it determines whether a negative peak of spreading code C31 is detected (step S40a). Furthermore, if it is determined that no negative peak of spreading code C31 is detected, positive or negative peaks of spreading codes C32 and C33 should be obtained. Therefore, a 2-bit value is obtained according to the type of peak obtained, and the obtained bit value is accumulated in memory (not shown) as part of the variable-length instruction vCMD (step S16a). It should be noted that if no positive or negative peak of any of the spreading codes C31, C32, and C33 is obtained, the stylus 2 considers the uplink signal US reception failure and can perform the prescribed error handling.
[0125] On the other hand, in step S40a, the stylus 2, which determines that a negative peak of the spreading code C31 has been detected, obtains the value of the bit string accumulated in the memory up to that point in time as the value of the variable-length instruction vCMD, and executes the obtained bit string as an instruction (explanation) (step S20). Then, the stylus 2 causes the process to return to step S19 ( Figure 19 ), to transmit downlink signal DS.
[0126] Figure 21 This diagram illustrates the method for transmitting and receiving variable-length command vCMD according to this embodiment. The diagram shows the case where the sensor controller 31 transmits the variable-length command vCMD using spreading code C3.
[0127] like Figure 21 As shown, the sensor controller 31 first sends the "00" corresponding to the preamble Pre through... Figure 2The direct sequence spread spectrum unit 63 shown transmits the data based on spread spectrum using a 16-chip spreading code C1 (times t1 to t3). Next, the sensor controller 31 transmits a variable-length instruction vCMD, but this time uses spreading codes C32, C33, C32r, and C33r to spread the bit string representing the variable-length instruction vCMD (times t3 to tn). As described above, based on the spreading codes C32, C33, C32r, and C33r, two bits of data can be represented; therefore, the sensor controller 31 transmits two bits of data constituting the variable-length instruction vCMD at a time. The stylus 2 receives the transmitted spreading codes C32, C33, C32r, and C33r using three correlation arithmetic units 71b.
[0128] Finally, the sensor controller 31 sends a spreading code C31r representing "1". This spreading code C31r is equivalent to the instruction end value EoC mentioned above. The stylus 2 detects the instruction end value EoC by detecting this spreading code C31r, and executes a variable-length instruction vCMD consisting of the bit string received so far.
[0129] As explained above, according to this embodiment, the stylus 2 can be compatible with multiple protocols. Furthermore, when using spreading code C3 in the transmission and reception of the variable-length instruction vCMD, a 2-bit data quantity can be transmitted using only one spreading code C3, thus improving the transmission speed compared to using spreading code C1. Therefore, the duration of the variable-length uplink signal US can be shortened.
[0130] Figure 22 This is a diagram illustrating a modified example of the third embodiment of the present invention, showing a method for transmitting and receiving a variable-length command vCMD. In this diagram, [the following text is incomplete and likely refers to a different method]... Figure 21 The example shown illustrates the case where the sensor controller 31 transmits a variable-length command vCMD using spreading code C3, but the same applies to cases where it transmits the variable-length command vCMD using spreading code C1 or spreading code C2. This variation differs from the third embodiment in that it transmits the command end value EoC instead of via spreading code C31r, and includes information indicating the length of the variable-length command vCMD in the preamble Pre. This will be explained in detail below.
[0131] In this variation, multiple preambles Pre are prepared in advance according to the length of the variable-length instruction vCMD. Specifically, the value "00" is prepared for the preamble Pre, corresponding to the 4 bits of the length of the variable-length instruction vCMD (see reference). Figure 22 (a) , corresponding to the length of the variable-length instruction vCMD, 2×(n-2) bits (n is, for example, 18), and prepare the value "01" of the preamble Pre (see reference). Figure 22(b) The sensor controller 31 selects the value of the preamble Pre corresponding to the length of the variable-length instruction vCMD to be transmitted, and transmits it at the beginning of the variable-length instruction vCMD. At this time, it is sufficient to transmit "0" using spreading code C1 and "1" using spreading code C1r. In this way, the stylus 2 can distinguish and receive multiple preamble Pre based on whether the result of the correlation calculation with spreading code C1 shows any peak value, whether positive or negative.
[0132] By adopting this structure, the stylus 2 does not need to... Figure 21 As shown in the example, receiving the instruction end value EoC allows us to know the end position of the variable-length instruction vCMD, thus enabling us to... Figure 21 Examples include the possibility of executing variable-length instructions (vCMD) earlier.
[0133] Furthermore, in the third embodiment, the preamble Pre may also contain information specifying the spreading code used for transmitting the variable-length command vCMD. The stylus 2 can obtain the value of this information from the preamble Pre detected using spreading code C1, and determine the spreading code used for detecting the variable-length command vCMD based on this value, switching as needed to determine the spreading code used by the related arithmetic unit 71b. In this way, the spreading code to be used in receiving the variable-length command vCMD can be specified from the sensor controller 31 side.
[0134] The preferred embodiments of the present invention have been described above. However, the present invention is not limited to such embodiments in any way. It is self-evident that the present invention can be implemented in various ways without departing from its spirit.
[0135] For example, in the above implementation, an example of using a field with a specified number of bytes to construct a variable-length instruction vCMD was described (see [reference]). Figure 9 as well as Figure 10 However, "specified number of bytes" can be replaced with "specified number of bits" or "specified number of words." Furthermore, it goes without saying that "fields" do not only contain data that forms a single meaning, but also any number of data items, payload data, detection codes, padding, or codes that constitute a preamble.
[0136] Label Explanation
[0137] 1 system
[0138] 2 styluses
[0139] 3 electronic devices
[0140] 3a panel surface
[0141] 20 cores
[0142] 20a front end
[0143] 21 electrodes
[0144] 23 Pen pressure detection sensors
[0145] 24 Signal Processing Department
[0146] 25 power supply
[0147] 30 sensors
[0148] 30X, 30Y linear electrodes
[0149] 31 Sensor Controller
[0150] 32 main processors
[0151] 40 Selection Department
[0152] 41x, 41y conductor selection circuit
[0153] 44x, 44y switches
[0154] 50 Receiving Unit
[0155] 60th Sending Department
[0156] 63 Direct Sequence Spread Spectrum
[0157] 64 Spread Code Preservation Section
[0158] 65 Transmission Protection Department
[0159] 71 Receiving Department
[0160] 71a Waveform Regeneration Section
[0161] 71b related arithmetic unit
[0162] 72 Spread Code Storage Unit
[0163] 75th Sending Department
[0164] 80MCU
[0165] 90 Control Department
[0166] C1, C1r, C2, C3, C31, C32, C33, C31r, C32r, C33r spreading codes
[0167] DS downlink signal
[0168] EoC instruction end value
[0169] P1-P3 Protocols
[0170] Preamble
[0171] Res data
[0172] selX, selY, sTRx, sTRy, SWC control signals
[0173] SW Switching Unit
[0174] US uplink signal
[0175] vCMD is a variable-length instruction.
Claims
1. A sensor controller, Includes a transmitting unit for transmitting uplink signals, the uplink signals comprising first and second part signals. The transmitting unit transmits the first portion of the signal using direct sequence spreading with a first spreading code, and transmits the second portion of the signal using direct sequence spreading with a second spreading code. The second spreading code is a different code from the first spreading code but has the same chip time length as the first spreading code. The code length of the second spreading code is shorter than that of the first spreading code.
2. The sensor controller according to claim 1, wherein, The first spreading code is composed of multiple second spreading codes.
3. The sensor controller according to claim 1, wherein, The first part of the signal contains information specifying the second spreading code.
4. A method executed by a sensor controller, The sensor controller includes a transmitter that sends uplink signals, the uplink signals comprising first and second part signals. The transmitting unit transmits the first portion of the signal using direct sequence spreading with a first spreading code, and transmits the second portion of the signal using direct sequence spreading with a second spreading code. The second spreading code is a different code from the first spreading code but has the same chip time length as the first spreading code. The code length of the second spreading code is shorter than that of the first spreading code.
5. The method according to claim 4, wherein, The first spreading code is composed of multiple second spreading codes.
6. The method according to claim 4, wherein, The first part of the signal contains information specifying the second spreading code.