This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

SN74HCS165: Reading capacitive touch sensor matrix

Part Number: SN74HCS165
Other Parts Discussed in Thread: SN74HCS595, SN74CBTLV3251

Hello all,


I'm developing an 8x8 LED matrix project controlled by capacitive sensors via the multiplexing method; see 1st image below. To save GPIOs, I'm considering arranging capacitive sensors in a 4x4 matrix (logically, physically, they will be arranged as in the 1st image) and scanning each row and column via SN74HCS165 shift register. (see the 2nd image below).


It is my first time working with capacitive sensors and shift registers. I'm aware that each measurement requires a time constant τ = RC that I need to take into account while "scanning." Still, I'm wondering if there might be additional issues or limitations when using a shift register in this context.

Any advice or insights would be appreciated

                     

  • The SN74HCS165 reads digital signals. What kind of capacitive sensor are you using?

  • Hello Clemens,

    Thank you for pointing that out. My oversight - I intended to use the SN74HCS165 for rows and the SN74HCS595 for columns, effectively scanning each button individually. This approach has proven effective with regular tactile buttons. However, as I plan to incorporate capacitive buttons designed on the PCB, I anticipate that the scanning speed of the touch sensors may be the limiting factor. Could there be any other aspects I need to consider in this scenario?

  • As far as I am aware, capacitive buttons can be read only by measuring their capacitance. This requires a direct connection between the measuring circuit  and the sensor, so you should use analog multiplexers like the SN74CBTLV3251.

    Your microcontroller does have the hardware to support capacitive touch sensing, doesn't it?

  • You're right. I need a direct link between the sensor and the sensor IC. 

    Unfortunately, my microcontroller doesn't support capacitive touch sensing. Therefore, I plan to use a single-channel capacitive sensing IC combined with a multiplexer for this purpose.